summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add comments to various filesAlex Budovski2023-03-244-0/+38
| | | | | This is just a preparatory change to improve the documentation in the code. No functional changes.
* Merge pull request #85 from GroundControl-Solutions/vs-2022-supportv0.52Rainer Schuetze2023-03-121-0/+1
|\ | | | | Fixed building with VS 2022
| * Fixed building with VS 2022Marc Aldorasi2023-03-101-0/+1
|/
* Merge pull request #81 from dennisameling/windows-arm64Rainer Schuetze2022-09-193-3/+91
|\ | | | | Add Windows ARM64 support
| * Apply PR feedbackDennis Ameling2022-09-191-2/+2
| |
| * Only upload bin for x64Dennis Ameling2022-09-181-0/+1
| |
| * Throw runtime error on ARM64 cvt80to64Dennis Ameling2022-09-181-1/+6
| |
| * Fix BUILD_PLATFORM referenceDennis Ameling2022-09-171-1/+1
| |
| * Add Windows ARM64 supportDennis Ameling2022-09-172-1/+83
|/
* fix issue #75: avoid emitting bad debug info if struct description exceeds ↵Rainer Schuetze2022-05-284-8/+22
| | | | 64 kB, clipped for now
* fix issue #76: Invalid form=11 for directory indexRainer Schuetze2022-05-111-10/+10
| | | | support DW_FORM_data1 and DW_FORM_data2 in DW_LNCT_directory_index
* update versin to 0.51v0.51Rainer Schuetze2022-04-032-1/+7
|
* fix issue #72: Hang when vswhere produces no outputRainer Schuetze2022-03-271-1/+3
| | | | close write handle before reading from the pipe
* Merge pull request #71 from GroundControl-Solutions/non-contiguous-functionsRainer Schuetze2022-01-245-34/+119
|\ | | | | Support non-contiguous functions
| * Added test for S_SEPCODE entriesMarc Aldorasi2022-01-141-0/+21
| |
| * Fixed improperly splitting a range containing the entry pointMarc Aldorasi2022-01-121-1/+1
| |
| * Use the default msvc version instead of forcing v120_xp only for 32-bit ↵Marc Aldorasi2022-01-111-2/+2
| | | | | | | | release mode
| * Add function entries for non-contiguous functionsMarc Aldorasi2022-01-113-32/+96
|/
* fix for UNC path (#70)sonyps52013142021-12-291-0/+10
| | | | * fix for UNC path
* fix version displayv0.50Rainer Schuetze2021-12-131-1/+1
|
* fix github action building dumplinesRainer Schuetze2021-12-131-1/+1
|
* update to veersion 0.50Rainer Schuetze2021-12-134-3/+10
| | | | adapt dumplines.cpp to changes
* Merge pull request #69 from neerajsi-msft/dwarf5Rainer Schuetze2021-12-1011-398/+1031
|\ | | | | Add support for Dwarf5 as emitted by gcc-11.2
| * ci: verify DWARF5 symbolsJohannes Schindelin2021-12-031-1/+6
| | | | | | | | | | | | | | | | | | Technically, this does not validate the DWARF5 parsing completely, but it looks for the `main` symbol to show up as expected when compiling with whatever GCC version MSYS2/Git for Windows uses (which is typically very close to the latest GCC version available). Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
| * Fix file names in dwarf5 line tablesNeeraj Singh2021-12-022-25/+74
| |
| * DWARF5 rnglists and loclistsNeeraj Singh2021-12-022-31/+169
| | | | | | | | | | Add support for the new opcode-based format for location lists and range lists.
| * read all dwarf5 main DIE formsNeeraj Singh2021-12-022-5/+115
| | | | | | | | | | Fill in Dwarf_InfoData for all DWARF5 forms excluding the new rnglists and loclists representations.
| * Read DWARF5 header and add DWARF5 constants.Neeraj Singh2021-12-025-17/+123
| | | | | | | | | | Handle the new DWARF5 compilation unit header and add new constants to dwarf.h. We still don't decode the new forms though.
| * more pre-DWARF5 refactoring: unit headers, location cursor, range cursorNeeraj Singh2021-12-025-152/+243
| | | | | | | | | | | | | | | | | | | | | | Read the compilation unit header byte-by-byte rather than by casting the data to a structure. Add the currentBaseAddress contextual info to the compilation unit data. Move the LOCCursor into readDwarf.cpp. Implement a RangeCursor similar to the LOCCursor. Add more debug printing.
| * carry contextual information with the DIECursorNeeraj Singh2021-12-024-77/+91
| | | | | | | | | | | | | | | | | | | | DWARF5 has more contextual information that is associated with the compilation unit. As a preparation for using such information, carry it with the DIECursor and eliminate places where we're passing in the parent compilation unit. Also add the RDAddr helper to read a target-address according to the specification in the compilation unit.
| * Refactor PE image section handling. Add debug logging.Neeraj Singh2021-12-029-171/+291
|/ | | | | | | | | | | Encapsulate dwarf-related PE sections into the PESection class. Remove some unused sections. Add helpers for common section operations. Move the context set via DIECursor::setContext to be static members of the class and add a debug context there. Add a standard method of enabling debug logging across the dwarf and PDB code.
* update to version 0.49v0.49Rainer Schuetze2021-11-062-1/+7
|
* Merge pull request #66 from dscho/vswhereRainer Schuetze2021-11-032-0/+122
|\ | | | | Allow the mspdb DLL to be found via vswhere.exe
| * Verify in the GitHub workflow that cv2pdb can handle GCC's outputJohannes Schindelin2021-11-031-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Git for Windows uses cv2pdb to convert the debugging information produced by GCC to `.pdb` format, for use with Visual C's tools. A recent GCC upgrade broke this because the debugging information was produced in DWARF5 format, and the Git for Windows maintainer had to scramble to implement (minimal) support for that format. Let's verify in the GitHub workflow that cv2pdb can handle GCC's output format, and let's use the very same GCC version that Git for Windows uses to verify that. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
| * Add a GitHub workflow to build cv2pdbJohannes Schindelin2021-11-031-0/+28
| | | | | | | | Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
| * Allow the mspdb DLL to be found via vswhere.exeJohannes Schindelin2021-11-031-0/+67
|/ | | | | | | | | | | | | | The incredibly useful `vswhere.exe` tool can be used to abstract away all the nitty-gritty details of figuring out where Visual Studio is installed. This patch adds support for making use of that tool. Since spawning a process is pretty expensive compared to looking at the registry, we only fall back on this tool (if it exists) if the other methods to find the DLL have failed. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* Merge pull request #67 from dscho/dwarf5Rainer Schuetze2021-10-305-27/+174
|\ | | | | Add rudimentary support for DWARF5
| * Add rudimentary support for DWARF5Johannes Schindelin2021-10-295-27/+174
|/ | | | | | | | | | | This allows `cv2pdb` to process executables produced by the mingw-w64 version of GCC v11.x. The symptoms of the fixed issue would look like this: error: cannot add line number info to module Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* fix #61: implement DWARF4 line number headersv0.48Rainer Schuetze2020-05-082-4/+39
|
* Merge pull request #60 from oltolm/cache_onlyRainer Schuetze2020-05-053-26/+38
|\ | | | | introduce a symbol cache
| * introduce a symbol cacheoltolm2020-05-043-26/+38
|/
* DWRAF: fix BSS handling and symbol-sectionRainer Schuetze2020-03-302-3/+4
|
* fix issue #59: add DWARF support for symbol to imported dataRainer Schuetze2020-03-265-5/+39
|
* fix loading 64-bit mspdb140.dll in VS2019Rainer Schuetze2020-03-092-1/+26
|
* adapt wchar/dchar to newer versions of dmd, add cent/ucentRainer Schuetze2020-03-091-1/+4
|
* Merge pull request #58 from dscho/invalidate-symbol-tableRainer Schuetze2020-03-091-0/+13
|\ | | | | Fix `.exe` files (according to dumpbin/objdump)
| * Force invalidation of the symbol table offsetJohannes Schindelin2020-03-081-0/+13
|/ | | | | | | | | | | | | When writing a new `.exe`/`.pdb` pair, the `.exe` might not contain any symbols. Therefore, the stale info needs to be zeroed out. This lets `dumpbin` and `objdump` accept the generated `.exe` files without problems. This fixes https://github.com/rainers/cv2pdb/issues/35 and https://github.com/git-for-windows/git/issues/2200. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* DWARF: fix writing info for aggregates larger than 32kBRainer Schuetze2019-07-183-5/+11
|
* Merge pull request #51 from marc-groundctl/more-line-numbersRainer Schuetze2019-02-152-70/+74
|\ | | | | Add more line number information
| * Don't write line sequences containing decreasing addressesMarc Aldorasi2019-02-151-1/+6
| |