[PATCH] DwarfAccelTable: Make Dwarf accelerator table generic.
Frederic Riss
friss at apple.com
Sat Mar 14 09:15:10 PDT 2015
Hadn't seen your message, sorry for the delay in replying. It turns out lldb uses different atoms (as produced by dsymutil) than the one we currently hardcode. The only table having additional atoms is the types table. In addition to the DIE offset, LLVM emits:
- DW_ATOM_die_tag = 3u // A tag entry.
- DW_ATOM_type_flags = 4u // Set of flags for a type.
The type flags are always hardcoded to 0 (I plan to remove this field as it serves no purpose). LLDB on the other hand has these atoms definition:
- eAtomTypeTag = 3u, // DW_TAG_xxx value,
- eAtomTypeNameFlags = 4u, // Flags from enum NameFlags
- eAtomTypeTypeFlags = 5u, // Flags from enum TypeFlags
- eAtomTypeQualNameHash = 6u // A 32 bit hash of the full qualified name
And it actually doesn't use TypeNameFlags. but it uses the last 2.
I'm wondering if Adrian hasn't planed a new use of an accelerator table that would require yet another variant of atom combinations for his module debugging work.
http://reviews.llvm.org/D8215
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list