Skip to content

Commit d1cfc3c

Browse files
committedOct 6, 2014
[dwarfdump] Print the name for referenced specification of abstract_origin DIEs.
Reviewers: dblaikie, samsonov, echristo, aprantl Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5466 llvm-svn: 219099
1 parent 6005dbd commit d1cfc3c

17 files changed

+67
-53
lines changed
 

‎llvm/lib/DebugInfo/DWARFDebugInfoEntry.cpp

+14
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,20 @@ void DWARFDebugInfoEntryMinimal::dumpAttribute(raw_ostream &OS,
120120
formValue.dump(OS, u);
121121
}
122122

123+
// We have dumped the attribute raw value. For some attributes
124+
// having both the raw value and the pretty-printed value is
125+
// interesting. These attributes are handled below.
126+
if ((attr == DW_AT_specification || attr == DW_AT_abstract_origin) &&
127+
// The signature references aren't handled.
128+
formValue.getForm() != DW_FORM_ref_sig8) {
129+
uint32_t Ref = formValue.getAsReference(u).getValue();
130+
DWARFDebugInfoEntryMinimal DIE;
131+
if (const DWARFUnit *RefU = findUnitAndExtractFast(DIE, u, &Ref))
132+
if (const char *Ref = DIE.getSubroutineName(RefU,
133+
FunctionNameKind::LinkageName))
134+
OS << " \"" << Ref << '\"';
135+
}
136+
123137
OS << ")\n";
124138
}
125139

‎llvm/test/DebugInfo/Inputs/gmlt.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
; skeleton CU to address the relocation problem, then remove abstract
4444
; definitions from -gmlt here.
4545

46-
; CHECK: [[F3_ABS_DEF:.*]]: DW_TAG_subprogram
46+
; CHECK: DW_TAG_subprogram
4747
; CHECK-NEXT: DW_AT_name {{.*}} "f3"
4848

4949
; FIXME: We don't really need DW_AT_inline, consumers can ignore this due to
@@ -63,7 +63,7 @@
6363
; As mentioned above - replace DW_AT_abstract_origin with DW_AT_name to save
6464
; space once we have support for string indexing in non-dwo sections
6565

66-
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} {[[F3_ABS_DEF]]}
66+
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} "f3"
6767
; CHECK-NEXT: DW_AT_low_pc
6868
; CHECK-NEXT: DW_AT_high_pc
6969
; CHECK-NEXT: DW_AT_call_file

‎llvm/test/DebugInfo/PR20038.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
; CHECK-NOT: DW_TAG
1919
; CHECK: DW_AT_name {{.*}} "~C"
2020

21-
; CHECK: [[D1_ABS:.*]]: DW_TAG_subprogram
21+
; CHECK: DW_TAG_subprogram
2222
; CHECK-NOT: DW_TAG
2323
; CHECK: DW_AT_MIPS_linkage_name {{.*}} "_ZN1CD1Ev"
2424
; CHECK-NOT: {{DW_TAG|NULL}}
@@ -32,7 +32,7 @@
3232
; CHECK-NOT: {{DW_TAG|NULL}}
3333
; CHECK: DW_TAG_inlined_subroutine
3434
; CHECK-NOT: DW_TAG
35-
; CHECK: DW_AT_abstract_origin {{.*}} {[[D1_ABS]]}
35+
; CHECK: DW_AT_abstract_origin {{.*}} "_ZN1CD1Ev"
3636
; CHECK-NOT: {{DW_TAG|NULL}}
3737
; CHECK: DW_TAG_formal_parameter
3838
; CHECK-NOT: DW_TAG

‎llvm/test/DebugInfo/X86/DW_AT_linkage_name.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@
1818
; Test that we do emit a linkage name for a specific instance of it.
1919

2020
; CHECK: DW_TAG_subprogram
21-
; CHECK: [[A_DTOR:.*]]: DW_TAG_subprogram
21+
; CHECK: DW_TAG_subprogram
2222
; CHECK: DW_AT_name {{.*}} "~A"
2323
; CHECK-NOT: DW_AT_MIPS_linkage_name
2424
; CHECK: DW_TAG_subprogram
2525
; CHECK-NOT: DW_TAG
2626
; CHECK: DW_AT_MIPS_linkage_name {{.*}} "_ZN1AD2Ev"
2727
; CHECK-NOT: DW_TAG
28-
; CHECK: DW_AT_specification {{.*}}[[A_DTOR]]
28+
; CHECK: DW_AT_specification {{.*}} "~A"
2929

3030

3131
target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"

‎llvm/test/DebugInfo/X86/DW_AT_specification.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33

44
; test that the DW_AT_specification is a back edge in the file.
55

6-
; CHECK: [[BAR_DECL:0x[0-9a-f]*]]: DW_TAG_subprogram
6+
; CHECK: DW_TAG_subprogram
77
; CHECK-NEXT: DW_AT_MIPS_linkage_name {{.*}} "_ZN3foo3barEv"
88
; CHECK: DW_TAG_subprogram
99
; CHECK-NOT: DW_TAG
10-
; CHECK: DW_AT_specification {{.*}} {[[BAR_DECL]]}
10+
; CHECK: DW_AT_specification {{.*}} "_ZN3foo3barEv"
1111

1212

1313
@_ZZN3foo3barEvE1x = constant i32 0, align 4

‎llvm/test/DebugInfo/X86/concrete_out_of_line.ll

+17-14
Original file line numberDiff line numberDiff line change
@@ -8,51 +8,54 @@
88

99
; CHECK: DW_TAG_class_type
1010
; CHECK: DW_TAG_subprogram
11-
; CHECK: [[ASSIGN_DECL:0x........]]: DW_TAG_subprogram
11+
; CHECK: DW_TAG_subprogram
12+
; CHECK: DW_AT_MIPS_linkage_name {{.*}} "_ZN12nsAutoRefCntaSEi"
1213

1314
; CHECK: DW_TAG_class_type
14-
; CHECK: [[RELEASE_DECL:0x........]]: DW_TAG_subprogram
15-
; CHECK: [[DTOR_DECL:0x........]]: DW_TAG_subprogram
15+
; CHECK: DW_TAG_subprogram
16+
; CHECK: DW_AT_MIPS_linkage_name {{.*}} "_ZN17nsAutoRefCnt7ReleaseEv"
17+
; CHECK: DW_TAG_subprogram
18+
; CHECK: DW_AT_name {{.*}} "~nsAutoRefCnt"
1619

17-
; CHECK: [[D2_ABS:.*]]: DW_TAG_subprogram
20+
; CHECK: DW_TAG_subprogram
1821
; CHECK-NEXT: DW_AT_{{.*}}linkage_name {{.*}}D2
19-
; CHECK-NEXT: DW_AT_specification {{.*}} {[[DTOR_DECL]]}
22+
; CHECK-NEXT: DW_AT_specification {{.*}} "~nsAutoRefCnt"
2023
; CHECK-NEXT: DW_AT_inline
2124
; CHECK-NOT: DW_AT
2225
; CHECK: DW_TAG
23-
; CHECK: [[D1_ABS:.*]]: DW_TAG_subprogram
26+
; CHECK: DW_TAG_subprogram
2427
; CHECK-NEXT: DW_AT_{{.*}}linkage_name {{.*}}D1
25-
; CHECK-NEXT: DW_AT_specification {{.*}} {[[DTOR_DECL]]}
28+
; CHECK-NEXT: DW_AT_specification {{.*}} "~nsAutoRefCnt"
2629
; CHECK-NEXT: DW_AT_inline
2730
; CHECK-NOT: DW_AT
2831
; CHECK: [[D1_THIS_ABS:.*]]: DW_TAG_formal_parameter
2932

30-
; CHECK: [[RELEASE:0x........]]: DW_TAG_subprogram
31-
; CHECK: DW_AT_specification {{.*}} {[[RELEASE_DECL]]}
33+
; CHECK: DW_TAG_subprogram
34+
; CHECK: DW_AT_specification {{.*}} "_ZN17nsAutoRefCnt7ReleaseEv"
3235
; CHECK: DW_TAG_formal_parameter
3336
; CHECK-NOT: NULL
3437
; CHECK-NOT: DW_TAG
3538
; CHECK: DW_TAG_inlined_subroutine
36-
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} {[[ASSIGN:0x........]]}
39+
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} "_ZN12nsAutoRefCntaSEi"
3740
; CHECK-NOT: NULL
3841
; CHECK-NOT: DW_TAG
3942
; CHECK: DW_TAG_inlined_subroutine
40-
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} {[[D1_ABS]]}
43+
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} "_ZN17nsAutoRefCntD1Ev"
4144
; CHECK-NOT: NULL
4245
; CHECK-NOT: DW_TAG
4346
; CHECK: DW_TAG_inlined_subroutine
44-
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} {[[D2_ABS]]}
47+
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} "_ZN17nsAutoRefCntD2Ev"
4548

4649
; and then that a TAG_subprogram refers to it with AT_abstract_origin.
4750

4851
; CHECK: DW_TAG_subprogram
4952
; CHECK-NOT: DW_TAG
50-
; CHECK: DW_AT_abstract_origin {{.*}} {[[D1_ABS]]}
53+
; CHECK: DW_AT_abstract_origin {{.*}} "_ZN17nsAutoRefCntD1Ev"
5154
; CHECK: DW_TAG_formal_parameter
5255
; CHECK-NOT: DW_TAG
5356
; CHECK: DW_AT_abstract_origin {{.*}} {[[D1_THIS_ABS]]}
5457
; CHECK: DW_TAG_inlined_subroutine
55-
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} {[[D2_ABS]]}
58+
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} "_ZN17nsAutoRefCntD2Ev"
5659

5760

5861
define i32 @_ZN17nsAutoRefCnt7ReleaseEv() {

‎llvm/test/DebugInfo/X86/dbg-value-inlined-parameter.ll

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66
; RUN: | llvm-dwarfdump -debug-dump=info - | FileCheck --check-prefix=CHECK --check-prefix=DARWIN %s
77

88
; CHECK: DW_TAG_subprogram
9-
; CHECK: DW_AT_abstract_origin {{.*}}{[[ABS:.*]]}
9+
; CHECK: DW_AT_abstract_origin {{.*}} "foo"
1010
; CHECK: DW_TAG_formal_parameter
1111
; CHECK-NOT: DW_TAG
1212
; CHECK: DW_AT_abstract_origin {{.*}}{[[ABS_SP:.*]]}
1313
; CHECK: DW_TAG_formal_parameter
1414
; CHECK-NOT: DW_TAG
1515
; CHECK: DW_AT_abstract_origin {{.*}}{[[ABS_NUMS:.*]]}
1616

17-
; CHECK: [[ABS]]: DW_TAG_subprogram
17+
; CHECK: DW_TAG_subprogram
1818
; CHECK-NOT: DW_TAG
1919
; CHECK: DW_AT_name {{.*}} "foo"
2020
; CHECK: [[ABS_SP]]: DW_TAG_formal_parameter
@@ -25,7 +25,7 @@
2525
; CHECK: DW_AT_name {{.*}} "nums"
2626

2727
;CHECK: DW_TAG_inlined_subroutine
28-
;CHECK-NEXT: DW_AT_abstract_origin {{.*}}{[[ABS]]}
28+
;CHECK-NEXT: DW_AT_abstract_origin {{.*}} "foo"
2929
;CHECK-NEXT: DW_AT_low_pc [DW_FORM_addr]
3030
;CHECK-NEXT: DW_AT_high_pc [DW_FORM_data4]
3131
;CHECK-NEXT: DW_AT_call_file

‎llvm/test/DebugInfo/X86/gnu-public-names.ll

+4-4
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,11 @@
5555
; CHECK: [[STATIC_MEM_DECL:0x[0-9a-f]+]]: DW_TAG_member
5656
; CHECK-NEXT: DW_AT_name {{.*}} "static_member_variable"
5757

58-
; CHECK: [[MEM_FUNC_DECL:0x[0-9a-f]+]]: DW_TAG_subprogram
58+
; CHECK: DW_TAG_subprogram
5959
; CHECK-NEXT: DW_AT_MIPS_linkage_name
6060
; CHECK-NEXT: DW_AT_name {{.*}} "member_function"
6161

62-
; CHECK: [[STATIC_MEM_FUNC_DECL:0x[0-9a-f]+]]: DW_TAG_subprogram
62+
; CHECK: DW_TAG_subprogram
6363
; CHECK-NEXT: DW_AT_MIPS_linkage_name
6464
; CHECK-NEXT: DW_AT_name {{.*}} "static_member_function"
6565

@@ -160,11 +160,11 @@
160160

161161
; CHECK: [[MEM_FUNC:0x[0-9a-f]+]]: DW_TAG_subprogram
162162
; CHECK-NOT: DW_TAG
163-
; CHECK: DW_AT_specification {{.*}} {[[MEM_FUNC_DECL]]}
163+
; CHECK: DW_AT_specification {{.*}} "_ZN1C15member_functionEv"
164164

165165
; CHECK: [[STATIC_MEM_FUNC:0x[0-9a-f]+]]: DW_TAG_subprogram
166166
; CHECK-NOT: DW_TAG
167-
; CHECK: DW_AT_specification {{.*}} {[[STATIC_MEM_FUNC_DECL]]}
167+
; CHECK: DW_AT_specification {{.*}} "_ZN1C22static_member_functionEv"
168168

169169
; CHECK: [[GLOBAL_FUNC:0x[0-9a-f]+]]: DW_TAG_subprogram
170170
; CHECK-NOT: DW_TAG

‎llvm/test/DebugInfo/X86/inline-member-function.ll

+4-3
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,14 @@
1818

1919
; But make sure we emit DW_AT_object_pointer on the abstract definition.
2020
; CHECK: [[ABSTRACT_ORIGIN:.*]]: DW_TAG_subprogram
21-
; CHECK-NOT: NULL
22-
; CHECK-NOT: TAG
21+
; CHECK-NOT: {{NULL|TAG}}
22+
; CHECK: DW_AT_specification {{.*}} "_ZN3foo4funcEi"
23+
; CHECK-NOT: {{NULL|TAG}}
2324
; CHECK: DW_AT_object_pointer
2425

2526
; Ensure we omit DW_AT_object_pointer on inlined subroutines.
2627
; CHECK: DW_TAG_inlined_subroutine
27-
; CHECK-NEXT: DW_AT_abstract_origin {{.*}}{[[ABSTRACT_ORIGIN]]}
28+
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} {[[ABSTRACT_ORIGIN]]} "_ZN3foo4funcEi"
2829
; CHECK-NOT: NULL
2930
; CHECK-NOT: DW_AT_object_pointer
3031
; CHECK: DW_TAG_formal_parameter

‎llvm/test/DebugInfo/X86/inline-seldag-test.ll

+1-5
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,8 @@
1111
; x = f(x);
1212
; }
1313

14-
; CHECK: [[F:.*]]: DW_TAG_subprogram
15-
; CHECK-NOT: DW_TAG
16-
; CHECK: DW_AT_name {{.*}} "f"
17-
1814
; CHECK: DW_TAG_inlined_subroutine
19-
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} {[[F]]}
15+
; CHECK-NEXT: DW_AT_abstract_origin {{.*}} "f"
2016

2117

2218
; Make sure the condition test is attributed to the inline function, not the

‎llvm/test/DebugInfo/X86/pr11300.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
; Skip the definition of zed(foo*)
77
; CHECK: DW_TAG_subprogram
88
; CHECK: DW_TAG_class_type
9-
; CHECK: [[BAR_DECL:0x[0-9a-f]*]]: DW_TAG_subprogram
9+
; CHECK: DW_TAG_subprogram
1010
; CHECK: DW_AT_MIPS_linkage_name {{.*}} "_ZN3foo3barEv"
1111
; CHECK: DW_TAG_subprogram
1212
; CHECK-NOT: DW_TAG
13-
; CHECK: DW_AT_specification {{.*}} {[[BAR_DECL]]}
13+
; CHECK: DW_AT_specification {{.*}} "_ZN3foo3barEv"
1414

1515
%struct.foo = type { i8 }
1616

‎llvm/test/DebugInfo/X86/recursive_inlining.ll

+4-4
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
; CHECK-NOT: {{DW_TAG|NULL}}
3939
; CHECK: DW_TAG_member
4040
; CHECK-NOT: {{DW_TAG|NULL}}
41-
; CHECK: [[M_FN2_DECL:.*]]: DW_TAG_subprogram
41+
; CHECK: DW_TAG_subprogram
4242
; CHECK-NOT: DW_TAG
4343
; CHECK: DW_AT_name {{.*}} "m_fn2"
4444
; CHECK-NOT: {{DW_TAG|NULL}}
@@ -47,7 +47,7 @@
4747
; The abstract definition of C::m_fn2
4848
; CHECK: [[M_FN2_ABS_DEF:.*]]: DW_TAG_subprogram
4949
; CHECK-NOT: DW_TAG
50-
; CHECK: DW_AT_specification {{.*}} {[[M_FN2_DECL]]}
50+
; CHECK: DW_AT_specification {{.*}} "_ZN1C5m_fn2Ev"
5151
; CHECK-NOT: DW_TAG
5252
; CHECK: DW_AT_inline
5353
; CHECK-NOT: {{DW_TAG|NULL}}
@@ -63,7 +63,7 @@
6363
; The concrete definition of C::m_fn2
6464
; CHECK: DW_TAG_subprogram
6565
; CHECK-NOT: DW_TAG
66-
; CHECK: DW_AT_abstract_origin {{.*}} {[[M_FN2_ABS_DEF]]}
66+
; CHECK: DW_AT_abstract_origin {{.*}} {[[M_FN2_ABS_DEF]]} "_ZN1C5m_fn2Ev"
6767
; CHECK-NOT: {{DW_TAG|NULL}}
6868
; CHECK: DW_TAG_formal_parameter
6969
; CHECK-NOT: DW_TAG
@@ -78,7 +78,7 @@
7878
; Inlined C::m_fn2:
7979
; CHECK: DW_TAG_inlined_subroutine
8080
; CHECK-NOT: DW_TAG
81-
; CHECK: DW_AT_abstract_origin {{.*}} {[[M_FN2_ABS_DEF]]}
81+
; CHECK: DW_AT_abstract_origin {{.*}} {[[M_FN2_ABS_DEF]]} "_ZN1C5m_fn2Ev"
8282
; CHECK-NOT: {{DW_TAG|NULL}}
8383
; CHECK: DW_TAG_formal_parameter
8484
; CHECK-NOT: DW_TAG

‎llvm/test/DebugInfo/cross-cu-inlining.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
; CHECK: DW_TAG_subprogram
2626
; CHECK: DW_AT_type [DW_FORM_ref_addr] (0x00000000[[INT:.*]])
2727
; CHECK: DW_TAG_inlined_subroutine
28-
; CHECK: DW_AT_abstract_origin {{.*}}[[ABS_FUNC:........]])
28+
; CHECK: DW_AT_abstract_origin {{.*}}[[ABS_FUNC:........]] "_Z4funci"
2929
; CHECK: DW_TAG_formal_parameter
3030
; CHECK: DW_AT_abstract_origin {{.*}}[[ABS_VAR:........]])
3131

@@ -47,7 +47,7 @@
4747
; provides the address range and variable location
4848
; CHECK: DW_TAG_subprogram
4949
; CHECK: DW_AT_low_pc
50-
; CHECK: DW_AT_abstract_origin {{.*}} {0x[[ABS_FUNC]]}
50+
; CHECK: DW_AT_abstract_origin {{.*}} {0x[[ABS_FUNC]]} "_Z4funci"
5151
; CHECK: DW_TAG_formal_parameter
5252
; CHECK: DW_AT_location
5353
; CHECK: DW_AT_abstract_origin {{.*}} {0x[[ABS_VAR]]}

‎llvm/test/DebugInfo/incorrect-variable-debugloc.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@
3838

3939
; CHECK: DW_TAG_structure_type
4040
; CHECK-NEXT: DW_AT_name {{.*}} "C"
41-
; CHECK: [[FN3_DECL:.*]]: DW_TAG_subprogram
41+
; CHECK: DW_TAG_subprogram
4242
; CHECK-NOT: DW_TAG
4343
; CHECK: DW_AT_name {{.*}} "m_fn3"
4444

45-
; CHECK: DW_AT_specification {{.*}} {[[FN3_DECL]]}
45+
; CHECK: DW_AT_specification {{.*}} "_ZN1C5m_fn3Ev"
4646
; CHECK-NOT: DW_TAG
4747
; CHECK: DW_TAG_formal_parameter
4848
; CHECK-NOT: DW_TAG

‎llvm/test/DebugInfo/missing-abstract-variable.ll

+3-3
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
; x(u);
3838
; }
3939

40-
; CHECK: [[ABS_X:.*]]: DW_TAG_subprogram
40+
; CHECK: DW_TAG_subprogram
4141
; CHECK-NOT: DW_TAG
4242
; CHECK: DW_AT_name {{.*}} "x"
4343
; CHECK-NOT: {{DW_TAG|NULL}}
@@ -57,7 +57,7 @@
5757
; CHECK-NOT: {{DW_TAG|NULL}}
5858
; CHECK: DW_TAG_inlined_subroutine
5959
; CHECK-NOT: DW_TAG
60-
; CHECK: DW_AT_abstract_origin {{.*}} {[[ABS_X]]}
60+
; CHECK: DW_AT_abstract_origin {{.*}} "_Z1xb"
6161
; CHECK-NOT: {{DW_TAG|NULL}}
6262
; CHECK: DW_TAG_formal_parameter
6363
; CHECK-NOT: DW_TAG
@@ -78,7 +78,7 @@
7878
; CHECK-NOT: {{DW_TAG|NULL}}
7979
; CHECK: DW_TAG_inlined_subroutine
8080
; CHECK-NOT: DW_TAG
81-
; CHECK: DW_AT_abstract_origin {{.*}} {[[ABS_X]]}
81+
; CHECK: DW_AT_abstract_origin {{.*}} "_Z1xb"
8282
; CHECK-NOT: {{DW_TAG|NULL}}
8383
; FIXME: This formal parameter goes missing at least at -O2 (& on
8484
; mips/powerpc), maybe before that. Perhaps SelectionDAG is to blame (and

‎llvm/test/DebugInfo/namespace_inline_function_definition.ll

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
; CHECK: DW_TAG_namespace
1616
; CHECK-NEXT: DW_AT_name {{.*}} "ns"
1717
; CHECK-NOT: DW_TAG
18-
; CHECK: [[ABS_DEF:0x.*]]: DW_TAG_subprogram
18+
; CHECK: DW_TAG_subprogram
1919
; CHECK-NOT: DW_TAG
2020
; CHECK: DW_AT_MIPS_linkage_name {{.*}} "_ZN2ns4funcEi"
2121
; CHECK-NOT: DW_TAG
@@ -24,7 +24,7 @@
2424
; CHECK-NOT: NULL
2525
; CHECK: DW_TAG_subprogram
2626
; CHECK-NOT: DW_TAG
27-
; CHECK: DW_AT_abstract_origin {{.*}} {[[ABS_DEF]]}
27+
; CHECK: DW_AT_abstract_origin {{.*}} "_ZN2ns4funcEi"
2828
; CHECK-NOT: DW_TAG
2929
; CHECK: DW_TAG_formal_parameter
3030
; CHECK: DW_AT_abstract_origin {{.*}} {[[ABS_PRM]]}

‎llvm/test/Linker/type-unique-odr-a.ll

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
; CHECK: DW_AT_MIPS_linkage_name {{.*}} "_ZL3barv"
4242

4343
; getFoo and A may only appear once.
44-
; CHECK-NOT: {{(getFoo)|("A")}}
44+
; CHECK-NOT: AT_name{{.*(getFoo)|("A")}}
4545

4646

4747
; ModuleID = 'type-unique-odr-a.cpp'

0 commit comments

Comments
 (0)
Please sign in to comment.