@@ -22,29 +22,6 @@ inline int add3(int x) {
2222// CHECK: [[X]] = !DIGlobalVariableExpression(var: [[XV:.*]], expr: !DIExpression())
2323// CHECK: [[XV]] = distinct !DIGlobalVariable(name: "x",
2424// CHECK-SAME: type: ![[OUTER_FOO_INNER_ID:[0-9]+]]
25- //
26- // CHECK: {{![0-9]+}} = distinct !DIGlobalVariable(
27- // CHECK-SAME: name: "var"
28- // CHECK-SAME: templateParams: {{![0-9]+}}
29- // CHECK: !DITemplateTypeParameter(name: "T", type: [[TY:![0-9]+]])
30- // CHECK: {{![0-9]+}} = distinct !DIGlobalVariable(
31- // CHECK-SAME: name: "var"
32- // CHECK-SAME: templateParams: {{![0-9]+}}
33- // CHECK: !DITemplateTypeParameter(name: "T", type: {{![0-9]+}})
34- // CHECK: {{![0-9]+}} = distinct !DIGlobalVariable(
35- // CHECK-SAME: name: "varray"
36- // CHECK-SAME: templateParams: {{![0-9]+}}
37- // CHECK: !DITemplateValueParameter(name: "N", type: [[TY]], value: i32 1)
38-
39- // CHECK: ![[OUTER_FOO_INNER_ID:[0-9]*]] = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "inner"{{.*}}, identifier:
40- // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "foo"
41- // CHECK-SAME: elements: [[FOO_MEM:![0-9]*]]
42- // CHECK-SAME: identifier: "_ZTS3foo"
43- // CHECK: [[FOO_MEM]] = !{[[FOO_FUNC:![0-9]*]]}
44- // CHECK: [[FOO_FUNC]] = !DISubprogram(name: "func", linkageName: "_ZN3foo4funcEN5outerIS_E5innerE",
45- // CHECK-SAME: type: [[FOO_FUNC_TYPE:![0-9]*]]
46- // CHECK: [[FOO_FUNC_TYPE]] = !DISubroutineType(types: [[FOO_FUNC_PARAMS:![0-9]*]])
47- // CHECK: [[FOO_FUNC_PARAMS]] = !{null, !{{[0-9]*}}, ![[OUTER_FOO_INNER_ID]]}
4825
4926// CHECK: [[C:![0-9]*]] = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "MyClass"
5027// CHECK-SAME: elements: [[C_MEM:![0-9]*]]
@@ -55,9 +32,6 @@ inline int add3(int x) {
5532
5633// CHECK: [[C_FUNC]] = !DISubprogram(name: "func",{{.*}} line: 9,
5734
58- // CHECK: !DISubprogram(name: "add<2>"
59- // CHECK-SAME: scope: [[C]]
60- //
6135// CHECK: [[VIRT_TEMP:![0-9]+]] = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "virt<elem>"
6236// CHECK-SAME: elements: [[VIRT_MEM:![0-9]*]]
6337// CHECK-SAME: vtableHolder: [[VIRT_TEMP]]
@@ -74,6 +48,32 @@ inline int add3(int x) {
7448// CHECK: [[VIRT_TEMP_PARAM]] = !{[[VIRT_T:![0-9]*]]}
7549// CHECK: [[VIRT_T]] = !DITemplateTypeParameter(name: "T", type: [[ELEM]])
7650
51+ // CHECK: {{![0-9]+}} = distinct !DIGlobalVariable(
52+ // CHECK-SAME: name: "var"
53+ // CHECK-SAME: templateParams: {{![0-9]+}}
54+ // CHECK: !DITemplateTypeParameter(name: "T", type: [[TY:![0-9]+]])
55+ // CHECK: {{![0-9]+}} = distinct !DIGlobalVariable(
56+ // CHECK-SAME: name: "var"
57+ // CHECK-SAME: templateParams: {{![0-9]+}}
58+ // CHECK: !DITemplateTypeParameter(name: "T", type: {{![0-9]+}})
59+ // CHECK: {{![0-9]+}} = distinct !DIGlobalVariable(
60+ // CHECK-SAME: name: "varray"
61+ // CHECK-SAME: templateParams: {{![0-9]+}}
62+ // CHECK: !DITemplateValueParameter(name: "N", type: [[TY]], value: i32 1)
63+
64+ // CHECK: ![[OUTER_FOO_INNER_ID:[0-9]*]] = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "inner"{{.*}}, identifier:
65+ // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "foo"
66+ // CHECK-SAME: elements: [[FOO_MEM:![0-9]*]]
67+ // CHECK-SAME: identifier: "_ZTS3foo"
68+ // CHECK: [[FOO_MEM]] = !{[[FOO_FUNC:![0-9]*]]}
69+ // CHECK: [[FOO_FUNC]] = !DISubprogram(name: "func", linkageName: "_ZN3foo4funcEN5outerIS_E5innerE",
70+ // CHECK-SAME: type: [[FOO_FUNC_TYPE:![0-9]*]]
71+ // CHECK: [[FOO_FUNC_TYPE]] = !DISubroutineType(types: [[FOO_FUNC_PARAMS:![0-9]*]])
72+ // CHECK: [[FOO_FUNC_PARAMS]] = !{null, !{{[0-9]*}}, ![[OUTER_FOO_INNER_ID]]}
73+
74+ // CHECK: !DISubprogram(name: "add<2>"
75+ // CHECK-SAME: scope: [[C]]
76+
7777template <typename T>
7878struct outer {
7979 struct inner {
0 commit comments