diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-22 00:21:41 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-22 00:21:41 +0000 |
commit | e17232ee4de2f608f0e5d965368c2bc54b6c1e83 (patch) | |
tree | 26966f7e10953f7a0a3f89022efe98e90e36a8fd /test/CodeGen | |
parent | b55d6b6a7ea64f1cd168181f619aaa2f7080855a (diff) | |
download | external_llvm-e17232ee4de2f608f0e5d965368c2bc54b6c1e83.zip external_llvm-e17232ee4de2f608f0e5d965368c2bc54b6c1e83.tar.gz external_llvm-e17232ee4de2f608f0e5d965368c2bc54b6c1e83.tar.bz2 |
Dont emit 'DBG_VALUE %noreg, ...' to terminate user variable ranges.
These ranges get completely jumbled by the post-ra scheduler, and it is not
really reasonable to expect it to make sense of them.
Instead, teach DwarfDebug to notice when user variables in registers are
clobbered, and terminate the ranges there.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128045 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen')
-rw-r--r-- | test/CodeGen/X86/dbg-value-range.ll | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/test/CodeGen/X86/dbg-value-range.ll b/test/CodeGen/X86/dbg-value-range.ll index 2985224..665cedc 100644 --- a/test/CodeGen/X86/dbg-value-range.ll +++ b/test/CodeGen/X86/dbg-value-range.ll @@ -41,15 +41,17 @@ declare void @llvm.dbg.value(metadata, i64, metadata) nounwind readnone !18 = metadata !{i32 7, i32 2, metadata !12, null} !19 = metadata !{i32 8, i32 2, metadata !12, null} -; check that variable bar:b value range is appropriately trucated in debug info. Here Ltmp5 is end of -; location range. +; Check that variable bar:b value range is appropriately trucated in debug info. +; The variable is in %rdi which is clobbered by 'movl %ebx, %edi' +; Here Ltmp7 is the end of the location range. ;CHECK:Ltmp6 -;CHECK-NEXT: DEBUG_VALUE: bar:b <- undef +;CHECK-NEXT: movl +;CHECK-NEXT: Ltmp7 ;CHECK:Ldebug_loc0: ;CHECK-NEXT: .quad Ltmp -;CHECK-NEXT: .quad Ltmp6 +;CHECK-NEXT: .quad Ltmp7 ;CHECK-NEXT: .short 1 ;CHECK-NEXT: .byte 85 ;CHECK-NEXT: .quad 0 |