summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGObjCRuntime.cpp
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2018-04-17 22:03:08 +0000
committerVedant Kumar <vsk@apple.com>2018-04-17 22:03:08 +0000
commitb0585893ccb78508e900754c4974b0e95aafd4bf (patch)
tree653e6048c34ad70f5b280b4a6601d3f7f7beaf2c /clang/lib/CodeGen/CGObjCRuntime.cpp
parent4b29172d095d5aed0d4efd014a70dddd06dfe125 (diff)
downloadbcm5719-llvm-b0585893ccb78508e900754c4974b0e95aafd4bf.tar.gz
bcm5719-llvm-b0585893ccb78508e900754c4974b0e95aafd4bf.zip
[Mem2Reg] Create merged debug locations for inserted phis
Track the debug locations of the incoming values to newly-created phis, and apply merged debug locations to the phis. A merged location will be on line 0, but will have the correct scope set. This improves crash reporting when an inlined instruction with a merged location triggers a machine exception. A debugger will be able to narrow down the crash to the correct inlined scope, instead of simply pointing to the outer scope of the caller. Taken together with a change allows generating merged line-0 locations for instructions which aren't calls, this results in a 0.5% increase in the uncompressed size of the .debug_line section of a stage2+Release build of clang (-O3 -g). rdar://33858697 Differential Revision: https://reviews.llvm.org/D45397 llvm-svn: 330227
Diffstat (limited to 'clang/lib/CodeGen/CGObjCRuntime.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud