diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2022-07-12 14:18:19 -0700 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2022-07-12 15:03:15 -0700 |
commit | 7f3000fa8b321f7fae169a615734de74a737b5d4 (patch) | |
tree | a6eb003a44150a06f39433d177d94d79e38d53dd /llvm/unittests/ADT/StringMapTest.cpp | |
parent | 61ace8f78b1c52fd63fc8c2d800f08d7ddd87b0d (diff) | |
download | llvm-7f3000fa8b321f7fae169a615734de74a737b5d4.zip llvm-7f3000fa8b321f7fae169a615734de74a737b5d4.tar.gz llvm-7f3000fa8b321f7fae169a615734de74a737b5d4.tar.bz2 |
[dsymutil] Account for DW_OP_convert being CU relative
Currently, dsymutil treats the DW_OP_convert operand as absolute instead
of CU relative, as described by in the DWARFv5 spec, 2.5.1.6:
"[DW_OP_convert] takes one operand, which is an unsigned LEB128 integer
that represents the offset of a debugging information entry in the current
compilation unit"
This patch makes dsymutil correctly treat the offset as CU relative,
preventing a crash when there are multiple compilation units.
Big thanks to Akira Hatanaka for figuring out this issue and providing
both a reduced test case and a proposed fix.
Diffstat (limited to 'llvm/unittests/ADT/StringMapTest.cpp')
0 files changed, 0 insertions, 0 deletions