summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2017-05-02 20:28:33 +0000
committerGreg Clayton <gclayton@apple.com>2017-05-02 20:28:33 +0000
commitc7695a8e4565afb256aad1a705ef292bc3625a36 (patch)
treec385982e9cd7f5f5e80007c584c19e8f82ebdada /clang/lib/Frontend/CompilerInvocation.cpp
parent7e7007d1c6ba8f302c6c63c5149c72f4ca627a45 (diff)
downloadbcm5719-llvm-c7695a8e4565afb256aad1a705ef292bc3625a36.tar.gz
bcm5719-llvm-c7695a8e4565afb256aad1a705ef292bc3625a36.zip
Verify that all references point to actual DIEs in "llvm-dwarfdump --verify"
LTO and other fancy linking previously led to DWARF that contained invalid references. We already validate that CU relative references fall into the CU, and the DW_FORM_ref_addr references fall inside the .debug_info section, but we didn't validate that the references pointed to correct DIE offsets. This new verification will ensure that all references refer to actual DIEs and not an offset in between. This caught a bug in DWARFUnit::getDIEForOffset() where if you gave it any offset, it would match the DIE that mathes the offset _or_ the next DIE. This has been fixed. Differential Revision: https://reviews.llvm.org/D32722 llvm-svn: 301971
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud