summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* DWARF:Rainer Schuetze2018-04-213-35/+44
| | | | | | - fix code only executed in debug builds - fix evaluation of DW_OP_const1u/DW_OP_const1s not advancing pointer - add support for local variables with location list via DW_FORM_sec_offset
* Merge pull request #27 from AlexWhiter/masterRainer Schuetze2018-04-084-10/+13
|\ | | | | Access violation fixed. Better aligning of debug section.
| * Debug directory aligning moved to PEImage::replaceDebugSection.AlexWhiter2018-04-082-8/+7
| |
| * Fixed misspelled identifier.AlexWhiter2018-04-071-1/+1
| |
| * Cleanup of RSDS block after allocation.AlexWhiter2018-04-071-3/+3
| |
| * 1. If exe-file consisted of just a disk letter and a file name (i.e. ↵AlexWhiter2018-04-053-5/+9
|/ | | | | | c:file.exe), AV occured. 2. Aligning the debug section offset to the closest 16-byte boundary.
* simplify code flowRainer Schuetze2018-03-312-18/+22
|
* refactor common part of embedded CV and DBG into functionRainer Schuetze2018-03-312-42/+38
| | | | DBG: exported names better fit strtable than symtable
* Merge pull request #26 from AlexWhiter/masterRainer Schuetze2018-03-314-18/+44
|\ | | | | Writing of RSDS section to EXE with symbols in DBG.
| * Reverting PEImage.h to the original state.AlexWhiter2018-03-301-0/+1
| |
| * Don't check IMAGE_FILE_DEBUG_STRIPPED flag. Check if DBG file exists instead.AlexWhiter2018-03-302-10/+14
| |
| * Wrong version was previously committed.AlexWhiter2018-03-301-2/+1
| |
| * RSDS section writing into EXE with symbols in DBG file.AlexWhiter2018-03-304-17/+39
| |
| * Fixed the calculation of IMAGE_DEBUG_DIRECTORY offset in DBG files.AlexWhiter2018-03-301-1/+1
|/
* add partial support to convert DBG to PDBRainer Schuetze2018-03-303-3/+67
|
* fix signed/unsigned warningsRainer Schuetze2018-03-304-8/+11
|
* Merge pull request #24 from pmderodat/masterRainer Schuetze2018-03-306-104/+462
|\ | | | | Various improvements for Ada
| * cv2pdb.h: add missing #include <stdint.h> to build with VS 12.0Pierre-Marie de Rodat2018-03-231-0/+2
| |
| * CV2PDB::addDWARFEnum: provide a default name for enumeration typesPierre-Marie de Rodat2018-03-231-2/+3
| | | | | | | | | | | | | | It seems that UDTs (User Defined Types) are required to have names, otherwise the resulting PDB type stream is considered to be corrupted. So just like what we do for structure types, provide a default type name for enumeration types.
| * CV2PDB::addDWARFEnum: fix handling of big enumerated typesPierre-Marie de Rodat2018-03-231-12/+87
| |
| * CV2PDB::appendModifierType: uncomment code to add paddingPierre-Marie de Rodat2018-03-231-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 > 0x8000Pierre-Marie de Rodat2018-03-231-6/+10
| |
| * dwarflines: fix last insn. address computation for DW_LNE_end_sequencePierre-Marie de Rodat2018-03-231-2/+11
| |
| * Fix handling of discontinuous address ranges on X64Pierre-Marie de Rodat2018-03-231-2/+13
| |
| * Reduce complexity of best CFA lookupsPierre-Marie de Rodat2018-03-233-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 entitiesPierre-Marie de Rodat2018-03-231-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 typePierre-Marie de Rodat2018-03-231-1/+1
| |
| * Ignore, but still allow block and string forms for DW_AT_const_valuePierre-Marie de Rodat2018-03-231-3/+16
| |
| * CV2PDB::addDWARFEnumType: use getDWARFBasicType for base type translationPierre-Marie de Rodat2018-03-231-12/+3
| |
| * CV2PDB::addDWARFBasicType: split primitive type handling outPierre-Marie de Rodat2018-03-232-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 translationPierre-Marie de Rodat2018-03-234-0/+65
| |
| * CV2PDB::createTypes: materialize subranges as modifiers for base typesPierre-Marie de Rodat2018-03-231-1/+6
| |
| * CV2PDB::getDWARFSubrangeInfo: use an appropriate base typePierre-Marie de Rodat2018-03-231-1/+1
| |
| * CV2PDB::getDWARFSubrangeInfo: use language-specific default lower boundPierre-Marie de Rodat2018-03-233-3/+10
| |
| * CV2PDB: keep track of the default lower bound for the curret unitPierre-Marie de Rodat2018-03-232-0/+22
| |
| * DWARF_InfoData: track the DW_AT_language attributePierre-Marie de Rodat2018-03-232-0/+3
| |
| * CV2PDB::getDWARFTypeSize: fix computation from lower/upper boundsPierre-Marie de Rodat2018-03-231-1/+1
| |
| * CV2PDB::addDWARFArray: refactor to get lower bound info from DWARFPierre-Marie de Rodat2018-03-232-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 onePierre-Marie de Rodat2018-03-211-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 addressPierre-Marie de Rodat2018-03-212-0/+6
| |
| * DIECursor::readNext: use -1u for missing DW_AT_ranges attributesPierre-Marie de Rodat2018-03-211-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 beginningPierre-Marie de Rodat2018-03-211-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 subprogramsPierre-Marie de Rodat2018-03-211-1/+1
|/
* DWARF: fix finding sibling with multiple consecutive end tagsRainer Schuetze2018-02-232-1/+3
|
* * DWARF: fix crash with AUX data in symbol tableRainer Schuetze2017-11-304-4/+16
| | | | * improve reallocation strategy
* build with /LARGEADDRESSAWARERainer Schuetze2017-10-091-0/+2
|
* * search VS2017 registry entries to find mspdb140.dllRainer Schuetze2017-09-026-37/+343
| | | | | | | * 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 Schuetze2017-08-221-2/+6
|
* try DWARF after unsupport CodeView signatureRainer Schuetze2017-08-191-1/+1
|
* fix building with VS2012 or earlierRainer Schuetze2017-06-182-8/+18
|