summaryrefslogtreecommitdiffstats
path: root/llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
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/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
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/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll')
-rw-r--r--llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll b/llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
index 0a2462610ac..a049f18fd59 100644
--- a/llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
+++ b/llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
@@ -19,7 +19,7 @@ define i32 @main() nounwind readonly !dbg !1 {
%v2 = ptrtoint %struct.test* %v1 to i64 ; <i64> [#uses=1]
%v3 = sub i64 %v2, ptrtoint ([10 x %struct.test]* @TestArray to i64) ; <i64> [#uses=1]
store i64 %v3, i64* %diff1, align 8
- ret i32 4
+ ret i32 4, !dbg !DILocation(scope: !1)
}
declare void @llvm.dbg.declare(metadata, metadata, metadata) nounwind readnone
OpenPOWER on IntegriCloud