Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | CV2PDB::addDWARFEnum: fix handling of big enumerated types | Pierre-Marie de Rodat | 2018-03-23 | 1 | -12/+87 |
| | |||||
* | CV2PDB::appendModifierType: uncomment code to add padding | Pierre-Marie de Rodat | 2018-03-23 | 1 | -2/+2 |
| | | | | | This prevents the generation of corrupt TPI streams, as padding is required at the end of leaves. | ||||
* | Fix LF_ENUMERATE emission for values > 0x8000 | Pierre-Marie de Rodat | 2018-03-23 | 1 | -6/+10 |
| | |||||
* | dwarflines: fix last insn. address computation for DW_LNE_end_sequence | Pierre-Marie de Rodat | 2018-03-23 | 1 | -2/+11 |
| | |||||
* | Fix handling of discontinuous address ranges on X64 | Pierre-Marie de Rodat | 2018-03-23 | 1 | -2/+13 |
| | |||||
* | Reduce complexity of best CFA lookups | Pierre-Marie de Rodat | 2018-03-23 | 3 | -15/+101 |
| | | | | | This turns a linear lookup into a logarithmic binary search, which improves a lot DWARF to PDB conversion for big programs. | ||||
* | Do not crash when handling anonymous entities | Pierre-Marie de Rodat | 2018-03-23 | 1 | -0/+4 |
| | | | | | C allows some types like enums or structs to be anonymous. Process them as if they had empty names. | ||||
* | Fix pasto: restore DW_TAG_subroutine_type handling as opaque type | Pierre-Marie de Rodat | 2018-03-23 | 1 | -1/+1 |
| | |||||
* | Ignore, but still allow block and string forms for DW_AT_const_value | Pierre-Marie de Rodat | 2018-03-23 | 1 | -3/+16 |
| | |||||
* | CV2PDB::addDWARFEnumType: use getDWARFBasicType for base type translation | Pierre-Marie de Rodat | 2018-03-23 | 1 | -12/+3 |
| | |||||
* | CV2PDB::addDWARFBasicType: split primitive type handling out | Pierre-Marie de Rodat | 2018-03-23 | 2 | -58/+64 |
| | | | | | | This isolates the part of the method that gets a type ID for a primitive type, so that it can be re-used elsewhere, in particular in enum translation. | ||||
* | CV2PDB::addDWARFEnum: new, first attempt at enum types translation | Pierre-Marie de Rodat | 2018-03-23 | 4 | -0/+65 |
| | |||||
* | CV2PDB::createTypes: materialize subranges as modifiers for base types | Pierre-Marie de Rodat | 2018-03-23 | 1 | -1/+6 |
| | |||||
* | CV2PDB::getDWARFSubrangeInfo: use an appropriate base type | Pierre-Marie de Rodat | 2018-03-23 | 1 | -1/+1 |
| | |||||
* | CV2PDB::getDWARFSubrangeInfo: use language-specific default lower bound | Pierre-Marie de Rodat | 2018-03-23 | 3 | -3/+10 |
| | |||||
* | CV2PDB: keep track of the default lower bound for the curret unit | Pierre-Marie de Rodat | 2018-03-23 | 2 | -0/+22 |
| | |||||
* | DWARF_InfoData: track the DW_AT_language attribute | Pierre-Marie de Rodat | 2018-03-23 | 2 | -0/+3 |
| | |||||
* | CV2PDB::getDWARFTypeSize: fix computation from lower/upper bounds | Pierre-Marie de Rodat | 2018-03-23 | 1 | -1/+1 |
| | |||||
* | CV2PDB::addDWARFArray: refactor to get lower bound info from DWARF | Pierre-Marie de Rodat | 2018-03-23 | 2 | -12/+35 |
| | | | | | This also makes room to get the index type information, but this is not implemented yet. | ||||
* | CV2PDB::addDWARFProc: turn uncontiguous ranges into smallest cvring one | Pierre-Marie de Rodat | 2018-03-21 | 1 | -1/+26 |
| | | | | | This is a hack to workaround something that seems to be missing in CodeView: lexical blocks with non-contiguous address ranges. | ||||
* | CV2PDB: store the current unit's base address | Pierre-Marie de Rodat | 2018-03-21 | 2 | -0/+6 |
| | |||||
* | DIECursor::readNext: use -1u for missing DW_AT_ranges attributes | Pierre-Marie de Rodat | 2018-03-21 | 1 | -2/+3 |
| | | | | | 0 is actually a valid .debug_ranges offset, so use something really unlikely for the "no value" special constant instead. | ||||
* | CV2PDB::createTypes: after formals processing, reset cursor to beginning | Pierre-Marie de Rodat | 2018-03-21 | 1 | -1/+0 |
| | | | | | This will make it possible to process DIE's that are interleaved with DW_TAG_formal_parameter ones. | ||||
* | CV2PDB::createTypes: handle out of order formal DIEs in subprograms | Pierre-Marie de Rodat | 2018-03-21 | 1 | -1/+1 |
| | |||||
* | DWARF: fix finding sibling with multiple consecutive end tags | Rainer Schuetze | 2018-02-23 | 2 | -1/+3 |
| | |||||
* | * DWARF: fix crash with AUX data in symbol table | Rainer Schuetze | 2017-11-30 | 2 | -3/+10 |
| | | | | * improve reallocation strategy | ||||
* | build with /LARGEADDRESSAWARE | Rainer Schuetze | 2017-10-09 | 1 | -0/+2 |
| | |||||
* | * search VS2017 registry entries to find mspdb140.dll | Rainer Schuetze | 2017-09-02 | 4 | -36/+334 |
| | | | | | | | * when using mspdb140.dll (VS2015) or later, use symbols to emit line numbers * translate S_UDT_V1 to V3 version * translate S_BLOCK_V1 to V3 version * remove "this" from delegate parameter list if inconsistent with procedure type | ||||
* | fix "try DWARF after unsupport CodeView signature" | Rainer Schuetze | 2017-08-22 | 1 | -2/+6 |
| | |||||
* | try DWARF after unsupport CodeView signature | Rainer Schuetze | 2017-08-19 | 1 | -1/+1 |
| | |||||
* | fix building with VS2012 or earlier | Rainer Schuetze | 2017-06-18 | 2 | -8/+18 |
| | |||||
* | * when using mspdb120.dll (VS2013) or later, do not emit view helpers | Rainer Schuetze | 2017-06-18 | 4 | -22/+87 |
| | | | | * remove method declarations from struct or class records (they confuse mspdb*.dll if having forward references?) | ||||
* | add mago support for AA with dmd >= 2.068 | Rainer Schuetze | 2017-05-14 | 6 | -43/+94 |
| | | | | | | prefer struct over class for internal structs handle class/struct property "uniquename" mark source language as 'D' for dmd >= 2.072 | ||||
* | Version 0.39: do not assume sorted line numbers per segment | Rainer Schuetze | 2017-01-20 | 1 | -2/+6 |
| | |||||
* | * do not uncompress names in field lists | Rainer Schuetze | 2016-08-09 | 3 | -20/+28 |
| | | | | * copy symbol unmodified if uncompression fails | ||||
* | Truncate symbols that are too long | Marc Aldorasi | 2016-03-14 | 2 | -1/+5 |
| | |||||
* | removed linker option for minimum required windows version for x64 | Rainer Schuetze | 2015-10-08 | 1 | -2/+0 |
| | |||||
* | fixes #11 (style adjustments) | l0calh05t | 2015-10-08 | 1 | -21/+23 |
| | |||||
* | fixes #11 (fix for different paths on older VS versions on amd64) | l0calh05t | 2015-10-07 | 1 | -15/+20 |
| | |||||
* | fixes #11 (missing ExcludedFromBuild for x64 asm file in Win32 Platform) | l0calh05t | 2015-10-07 | 1 | -1/+4 |
| | |||||
* | initial commit of x64 fixes | l0calh05t | 2015-10-07 | 6 | -4/+123 |
| | |||||
* | allow anonymous typedefs | Rainer Schuetze | 2015-09-07 | 1 | -1/+1 |
| | |||||
* | add -debug option, some whitespace cleanup | Rainer Schuetze | 2015-09-07 | 4 | -37/+50 |
| | |||||
* | DWARF: support debug_frame (CFA) and debug_loc (for frame base) | Rainer Schuetze | 2015-06-13 | 4 | -62/+447 |
| | |||||
* | write correct machine type for x64 | Rainer Schuetze | 2015-06-13 | 1 | -1/+1 |
| | |||||
* | fix DWARF for gcc 4.9.0 and clang 3.6 | Rainer Schuetze | 2015-06-12 | 3 | -15/+75 |
| | |||||
* | DWARF: fix struct/class conversion, array limits, replace '.' with '@' in names | Rainer Schuetze | 2015-06-09 | 4 | -14/+21 |
| | |||||
* | DWARF: fix displaying locals if there are no function arguments | Rainer Schuetze | 2015-06-09 | 3 | -3/+17 |
| | |||||
* | fixes for gcc 4.6.3 | Rainer Schuetze | 2015-06-08 | 2 | -15/+38 |
| | |||||
* | add support for VS 2015 | Rainer Schuetze | 2015-06-03 | 2 | -0/+19 |
| |