diff options
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll | 3 | ||||
-rw-r--r-- | llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll | 10 | ||||
-rw-r--r-- | llvm/test/DebugInfo/X86/dbg-value-range.ll | 5 |
4 files changed, 7 insertions, 20 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 4fe4f26c923..e275d3aac7d 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -1545,16 +1545,13 @@ void DebugLocEntry::finalize(const AsmPrinter &AP, DebugLocStream &Locs, } void DwarfDebug::emitDebugLocEntryLocation(const DebugLocStream::Entry &Entry) { + // Emit the size. Asm->OutStreamer->AddComment("Loc expr size"); - MCSymbol *begin = Asm->OutStreamer->getContext().CreateTempSymbol(); - MCSymbol *end = Asm->OutStreamer->getContext().CreateTempSymbol(); - Asm->EmitLabelDifference(end, begin, 2); - Asm->OutStreamer->EmitLabel(begin); + Asm->EmitInt16(DebugLocs.getBytes(Entry).size()); + // Emit the entry. APByteStreamer Streamer(*Asm); emitDebugLocEntry(Streamer, Entry); - // Close the range. - Asm->OutStreamer->EmitLabel(end); } // Emit locations into the debug loc section. diff --git a/llvm/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll b/llvm/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll index e14365ac848..3b99e91915f 100644 --- a/llvm/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll +++ b/llvm/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll @@ -2,8 +2,7 @@ ; RUN: llc -mtriple=x86_64-pc-linux -O2 -regalloc=basic < %s | FileCheck %s ; Test to check .debug_loc support. This test case emits many debug_loc entries. -; CHECK: .short {{.*}} # Loc expr size -; CHECK-NEXT: .Ltmp +; CHECK: .short 1 # Loc expr size ; CHECK-NEXT: DW_OP_reg %0 = type { double } diff --git a/llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll b/llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll index 788853e4308..3670c556aa7 100644 --- a/llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll +++ b/llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll @@ -77,18 +77,12 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon ; CHECK-NEXT: .quad [[SET1]] ; CHECK-NEXT: [[SET2:.*]] = [[LABEL]]-Lfunc_begin0 ; CHECK-NEXT: .quad [[SET2]] -; CHECK-NEXT: Lset{{.*}} = Ltmp{{.*}}-Ltmp{{.*}} ## Loc expr size -; CHECK-NEXT: .short Lset{{.*}} -; CHECK-NEXT: Ltmp{{.*}}: +; CHECK-NEXT: .short 1 ## Loc expr size ; CHECK-NEXT: .byte 85 -; CHECK-NEXT: Ltmp{{.*}}: ; CHECK-NEXT: [[SET3:.*]] = [[LABEL]]-Lfunc_begin0 ; CHECK-NEXT: .quad [[SET3]] ; CHECK-NEXT: [[SET4:.*]] = [[CLOBBER]]-Lfunc_begin0 ; CHECK-NEXT: .quad [[SET4]] -; CHECK-NEXT: Lset{{.*}} = Ltmp{{.*}}-Ltmp{{.*}} ## Loc expr size -; CHECK-NEXT: .short Lset{{.*}} -; CHECK-NEXT: Ltmp{{.*}}: +; CHECK-NEXT: .short 1 ## Loc expr size ; CHECK-NEXT: .byte 83 -; CHECK-NEXT: Ltmp{{.*}}: !38 = !{i32 1, !"Debug Info Version", i32 3} diff --git a/llvm/test/DebugInfo/X86/dbg-value-range.ll b/llvm/test/DebugInfo/X86/dbg-value-range.ll index fcde006320d..a8fa9073fa7 100644 --- a/llvm/test/DebugInfo/X86/dbg-value-range.ll +++ b/llvm/test/DebugInfo/X86/dbg-value-range.ll @@ -55,11 +55,8 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon ;CHECK-NEXT: .quad ;CHECK-NEXT: [[CLOBBER_OFF:Lset.*]] = [[CLOBBER]]-{{.*}} ;CHECK-NEXT: .quad [[CLOBBER_OFF]] -;CHECK-NEXT: Lset{{.*}} = Ltmp{{.*}}-Ltmp{{.*}} -;CHECK-NEXT: .short Lset -;CHECK-NEXT: Ltmp +;CHECK-NEXT: .short 1 ## Loc expr size ;CHECK-NEXT: .byte 85 ## DW_OP_reg -;CHECK-NEXT: Ltmp ;CHECK-NEXT: .quad 0 ;CHECK-NEXT: .quad 0 !24 = !{i32 1, !"Debug Info Version", i32 3} |