1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00

Revert "[DebugInfo] Enable variadic debug value salvaging"

This reverts commit adace79652174d126be290cab42b3122569fe15d.
Still breaks things, see comment on https://reviews.llvm.org/D91722
This commit is contained in:
Nico Weber 2021-06-28 11:16:11 -04:00
parent 276c38fd65
commit 0b6bfe0ee6
4 changed files with 11 additions and 7 deletions

View File

@ -1748,7 +1748,11 @@ void llvm::salvageDebugInfoForDbgValues(
} else if (isa<DbgValueInst>(DII) && } else if (isa<DbgValueInst>(DII) &&
DII->getNumVariableLocationOps() + AdditionalValues.size() <= DII->getNumVariableLocationOps() + AdditionalValues.size() <=
MaxDebugArgs) { MaxDebugArgs) {
DII->addVariableLocationOps(AdditionalValues, SalvagedExpr); // TODO: Uncomment the line below and delete the two beneath it to enable
// salvaging of dbg.values with multiple location operands.
// DII->addVariableLocationOps(AdditionalValues, SalvagedExpr);
Value *Undef = UndefValue::get(I.getOperand(0)->getType());
DII->replaceVariableLocationOp(I.getOperand(0), Undef);
} else { } else {
// Do not salvage using DIArgList for dbg.addr/dbg.declare, as it is // Do not salvage using DIArgList for dbg.addr/dbg.declare, as it is
// currently only valid for stack value expressions. // currently only valid for stack value expressions.

View File

@ -702,12 +702,12 @@ if.end: ; preds = %if.then, %entry
; CHECK-NEXT: } ; CHECK-NEXT: }
; CHECK-NEXT: .section .debug_info ; CHECK-NEXT: .section .debug_info
; CHECK-NEXT: { ; CHECK-NEXT: {
; CHECK-NEXT:.b32 10034 // Length of Unit ; CHECK-NEXT:.b32 10029 // Length of Unit
; CHECK-NEXT:.b8 2 // DWARF version number ; CHECK-NEXT:.b8 2 // DWARF version number
; CHECK-NEXT:.b8 0 ; CHECK-NEXT:.b8 0
; CHECK-NEXT:.b32 .debug_abbrev // Offset Into Abbrev. Section ; CHECK-NEXT:.b32 .debug_abbrev // Offset Into Abbrev. Section
; CHECK-NEXT:.b8 8 // Address Size (in bytes) ; CHECK-NEXT:.b8 8 // Address Size (in bytes)
; CHECK-NEXT:.b8 1 // Abbrev [1] 0xb:0x272b DW_TAG_compile_unit ; CHECK-NEXT:.b8 1 // Abbrev [1] 0xb:0x2726 DW_TAG_compile_unit
; CHECK-NEXT:.b8 0 // DW_AT_producer ; CHECK-NEXT:.b8 0 // DW_AT_producer
; CHECK-NEXT:.b8 4 // DW_AT_language ; CHECK-NEXT:.b8 4 // DW_AT_language
; CHECK-NEXT:.b8 0 ; CHECK-NEXT:.b8 0
@ -8306,7 +8306,7 @@ if.end: ; preds = %if.then, %entry
; CHECK-NEXT:.b8 3 // DW_AT_decl_line ; CHECK-NEXT:.b8 3 // DW_AT_decl_line
; CHECK-NEXT:.b32 3345 // DW_AT_type ; CHECK-NEXT:.b32 3345 // DW_AT_type
; CHECK-NEXT:.b8 0 // End Of Children Mark ; CHECK-NEXT:.b8 0 // End Of Children Mark
; CHECK-NEXT:.b8 40 // Abbrev [40] 0x2671:0xc4 DW_TAG_subprogram ; CHECK-NEXT:.b8 40 // Abbrev [40] 0x2671:0xbf DW_TAG_subprogram
; CHECK-NEXT:.b64 Lfunc_begin0 // DW_AT_low_pc ; CHECK-NEXT:.b64 Lfunc_begin0 // DW_AT_low_pc
; CHECK-NEXT:.b64 Lfunc_end0 // DW_AT_high_pc ; CHECK-NEXT:.b64 Lfunc_end0 // DW_AT_high_pc
; CHECK-NEXT:.b8 1 // DW_AT_frame_base ; CHECK-NEXT:.b8 1 // DW_AT_frame_base
@ -8386,7 +8386,7 @@ if.end: ; preds = %if.then, %entry
; CHECK-NEXT:.b8 12 // DW_AT_call_file ; CHECK-NEXT:.b8 12 // DW_AT_call_file
; CHECK-NEXT:.b8 6 // DW_AT_call_line ; CHECK-NEXT:.b8 6 // DW_AT_call_line
; CHECK-NEXT:.b8 37 // DW_AT_call_column ; CHECK-NEXT:.b8 37 // DW_AT_call_column
; CHECK-NEXT:.b8 43 // Abbrev [43] 0x2711:0x23 DW_TAG_inlined_subroutine ; CHECK-NEXT:.b8 43 // Abbrev [43] 0x2711:0x1e DW_TAG_inlined_subroutine
; CHECK-NEXT:.b32 9791 // DW_AT_abstract_origin ; CHECK-NEXT:.b32 9791 // DW_AT_abstract_origin
; CHECK-NEXT:.b64 Ltmp9 // DW_AT_low_pc ; CHECK-NEXT:.b64 Ltmp9 // DW_AT_low_pc
; CHECK-NEXT:.b64 Ltmp10 // DW_AT_high_pc ; CHECK-NEXT:.b64 Ltmp10 // DW_AT_high_pc
@ -8395,8 +8395,6 @@ if.end: ; preds = %if.then, %entry
; CHECK-NEXT:.b8 5 // DW_AT_call_column ; CHECK-NEXT:.b8 5 // DW_AT_call_column
; CHECK-NEXT:.b8 44 // Abbrev [44] 0x2729:0x5 DW_TAG_formal_parameter ; CHECK-NEXT:.b8 44 // Abbrev [44] 0x2729:0x5 DW_TAG_formal_parameter
; CHECK-NEXT:.b32 9820 // DW_AT_abstract_origin ; CHECK-NEXT:.b32 9820 // DW_AT_abstract_origin
; CHECK-NEXT:.b8 44 // Abbrev [44] 0x272e:0x5 DW_TAG_formal_parameter
; CHECK-NEXT:.b32 9829 // DW_AT_abstract_origin
; CHECK-NEXT:.b8 0 // End Of Children Mark ; CHECK-NEXT:.b8 0 // End Of Children Mark
; CHECK-NEXT:.b8 0 // End Of Children Mark ; CHECK-NEXT:.b8 0 // End Of Children Mark
; CHECK-NEXT:.b8 0 // End Of Children Mark ; CHECK-NEXT:.b8 0 // End Of Children Mark

View File

@ -1,3 +1,4 @@
; XFAIL: *
; RUN: opt %s -dce -S | FileCheck %s ; RUN: opt %s -dce -S | FileCheck %s
; Tests the salvaging of GEP instructions, specifically struct indexing and ; Tests the salvaging of GEP instructions, specifically struct indexing and

View File

@ -1,3 +1,4 @@
; XFAIL: *
; RUN: opt %s -dce -S | FileCheck %s ; RUN: opt %s -dce -S | FileCheck %s
; Tests the salvaging of binary operators that use more than one non-constant ; Tests the salvaging of binary operators that use more than one non-constant