diff options
| author | Vedant Kumar <vsk@apple.com> | 2018-04-17 22:03:08 +0000 |
|---|---|---|
| committer | Vedant Kumar <vsk@apple.com> | 2018-04-17 22:03:08 +0000 |
| commit | b0585893ccb78508e900754c4974b0e95aafd4bf (patch) | |
| tree | 653e6048c34ad70f5b280b4a6601d3f7f7beaf2c /clang/lib/CodeGen/ModuleBuilder.cpp | |
| parent | 4b29172d095d5aed0d4efd014a70dddd06dfe125 (diff) | |
| download | bcm5719-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/ModuleBuilder.cpp')
0 files changed, 0 insertions, 0 deletions

