summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
diff options
context:
space:
mode:
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>2016-03-29 22:57:12 +0000
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>2016-03-29 22:57:12 +0000
commite8eb94a9a5406f60d513132a6303e3a294b0f3e4 (patch)
treee7d47f6c0e8f5550f83a439faaa2a0dffb7ab1ba /llvm/lib/Transforms/IPO/FunctionAttrs.cpp
parent44a2f7a298db043bad5305a138520ad7aa68a95c (diff)
downloadbcm5719-llvm-e8eb94a9a5406f60d513132a6303e3a294b0f3e4.tar.gz
bcm5719-llvm-e8eb94a9a5406f60d513132a6303e3a294b0f3e4.zip
ADCE: Remove debug info intrinsics in dead scopes
During ADCE, track which debug info scopes still have live references from the code, and delete debug info intrinsics for the dead ones. These intrinsics describe the locations of variables (in registers or stack slots). If there's no code left corresponding to a variable's scope, then there's no way to reference the variable in the debugger and it doesn't matter what its value is. I add a DEBUG printout when the described location in an SSA register, in case it helps some trying to track down why locations get lost. However, we still delete these; the scope itself isn't attached to any real code, so the ship has already sailed. llvm-svn: 264800
Diffstat (limited to 'llvm/lib/Transforms/IPO/FunctionAttrs.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud