From 4b102527fa426d4f22ab64443417f666b7fb2e03 Mon Sep 17 00:00:00 2001 From: David Blaikie Date: Fri, 7 Mar 2014 02:19:41 +0000 Subject: [PATCH] DebugInfo: Limit r203187 to non-darwin as lldb can't handle this yet git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203192 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 7 +++++-- test/DebugInfo/X86/dbg-value-location.ll | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 7abd2f1dc73..800be0db08c 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -413,8 +413,11 @@ DIE *DwarfDebug::updateSubprogramScopeDIE(DwarfCompileUnit *SPCU, } SPCU->addLabelAddress(SPDie, dwarf::DW_AT_low_pc, FunctionBeginSym); - SPCU->addLabelDelta(SPDie, dwarf::DW_AT_high_pc, FunctionEndSym, - FunctionBeginSym); + if (Triple(Asm->getTargetTriple()).isOSDarwin()) + SPCU->addLabelAddress(SPDie, dwarf::DW_AT_high_pc, FunctionEndSym); + else + SPCU->addLabelDelta(SPDie, dwarf::DW_AT_high_pc, FunctionEndSym, + FunctionBeginSym); const TargetRegisterInfo *RI = Asm->TM.getRegisterInfo(); MachineLocation Location(RI->getFrameRegister(*Asm->MF)); diff --git a/test/DebugInfo/X86/dbg-value-location.ll b/test/DebugInfo/X86/dbg-value-location.ll index 83907b1cb13..1e21c6a00ae 100644 --- a/test/DebugInfo/X86/dbg-value-location.ll +++ b/test/DebugInfo/X86/dbg-value-location.ll @@ -4,7 +4,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 target triple = "x86_64-apple-darwin10.0.0" ;Radar 8950491 -;CHECK: .long Lset6 +;CHECK: .long Lset5 ;CHECK-NEXT: ## DW_AT_decl_file ;CHECK-NEXT: ## DW_AT_decl_line ;CHECK-NEXT: ## DW_AT_type -- 2.34.1