Skip to content

Commit 3064d4b

Browse files
vmaksimoagainull
authored andcommitted
Align Instruction names to the specification (#1896)
This patch fixes the discovered typos in Debug Instruction names, so we can generate spec-conformant SPIR-V module. https://registry.khronos.org/SPIR-V/specs/unified1/DebugInfo.html Original commit: KhronosGroup/SPIRV-LLVM-Translator@8b1e7f2
1 parent 98f3f0b commit 3064d4b

15 files changed

+78
-75
lines changed

llvm-spirv/lib/SPIRV/LLVMToSPIRVDbgTran.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -344,7 +344,7 @@ SPIRVEntry *LLVMToSPIRVDbgTran::transDbgEntryImpl(const MDNode *MDN) {
344344

345345
// Compilation unit
346346
case dwarf::DW_TAG_compile_unit:
347-
return transDbgCompilationUnit(cast<DICompileUnit>(DIEntry));
347+
return transDbgCompileUnit(cast<DICompileUnit>(DIEntry));
348348

349349
// Templates
350350
case dwarf::DW_TAG_template_type_parameter:
@@ -539,8 +539,7 @@ SPIRVId LLVMToSPIRVDbgTran::getDebugInfoNoneId() {
539539

540540
// Compilation unit
541541

542-
SPIRVEntry *
543-
LLVMToSPIRVDbgTran::transDbgCompilationUnit(const DICompileUnit *CU) {
542+
SPIRVEntry *LLVMToSPIRVDbgTran::transDbgCompileUnit(const DICompileUnit *CU) {
544543
using namespace SPIRVDebug::Operand::CompilationUnit;
545544
SPIRVWordVec Ops(OperandCount);
546545
Ops[SPIRVDebugInfoVersionIdx] = SPIRVDebug::DebugInfoVersion;
@@ -977,7 +976,7 @@ SPIRVEntry *LLVMToSPIRVDbgTran::transDbgInheritance(const DIDerivedType *DT) {
977976
Ops[FlagsIdx] = transDebugFlags(DT);
978977
if (isNonSemanticDebugInfo())
979978
transformToConstant(Ops, {FlagsIdx});
980-
return BM->addDebugInfo(SPIRVDebug::Inheritance, getVoidTy(), Ops);
979+
return BM->addDebugInfo(SPIRVDebug::TypeInheritance, getVoidTy(), Ops);
981980
}
982981

983982
SPIRVEntry *LLVMToSPIRVDbgTran::transDbgPtrToMember(const DIDerivedType *DT) {
@@ -992,7 +991,7 @@ SPIRVEntry *LLVMToSPIRVDbgTran::transDbgPtrToMember(const DIDerivedType *DT) {
992991
SPIRVEntry *
993992
LLVMToSPIRVDbgTran::transDbgTemplateParams(DITemplateParameterArray TPA,
994993
const SPIRVEntry *Target) {
995-
using namespace SPIRVDebug::Operand::Template;
994+
using namespace SPIRVDebug::Operand::TypeTemplate;
996995
SPIRVWordVec Ops(MinOperandCount);
997996
Ops[TargetIdx] = Target->getId();
998997
for (DITemplateParameter *TP : TPA) {
@@ -1003,7 +1002,7 @@ LLVMToSPIRVDbgTran::transDbgTemplateParams(DITemplateParameterArray TPA,
10031002

10041003
SPIRVEntry *
10051004
LLVMToSPIRVDbgTran::transDbgTemplateParameter(const DITemplateParameter *TP) {
1006-
using namespace SPIRVDebug::Operand::TemplateParameter;
1005+
using namespace SPIRVDebug::Operand::TypeTemplateParameter;
10071006
SPIRVWordVec Ops(OperandCount);
10081007
Ops[NameIdx] = BM->getString(TP->getName().str())->getId();
10091008
Ops[TypeIdx] = transDbgEntry(TP->getType())->getId();
@@ -1023,7 +1022,7 @@ LLVMToSPIRVDbgTran::transDbgTemplateParameter(const DITemplateParameter *TP) {
10231022

10241023
SPIRVEntry *LLVMToSPIRVDbgTran::transDbgTemplateTemplateParameter(
10251024
const DITemplateValueParameter *TVP) {
1026-
using namespace SPIRVDebug::Operand::TemplateTemplateParameter;
1025+
using namespace SPIRVDebug::Operand::TypeTemplateTemplateParameter;
10271026
SPIRVWordVec Ops(OperandCount);
10281027
assert(isa<MDString>(TVP->getValue()));
10291028
MDString *Val = cast<MDString>(TVP->getValue());
@@ -1040,7 +1039,7 @@ SPIRVEntry *LLVMToSPIRVDbgTran::transDbgTemplateTemplateParameter(
10401039

10411040
SPIRVEntry *LLVMToSPIRVDbgTran::transDbgTemplateParameterPack(
10421041
const DITemplateValueParameter *TVP) {
1043-
using namespace SPIRVDebug::Operand::TemplateParameterPack;
1042+
using namespace SPIRVDebug::Operand::TypeTemplateParameterPack;
10441043
SPIRVWordVec Ops(MinOperandCount);
10451044
assert(isa<MDNode>(TVP->getValue()));
10461045
MDNode *Params = cast<MDNode>(TVP->getValue());
@@ -1120,7 +1119,8 @@ SPIRVEntry *LLVMToSPIRVDbgTran::transDbgFunction(const DISubprogram *Func) {
11201119

11211120
SPIRVEntry *DebugFunc = nullptr;
11221121
if (!Func->isDefinition()) {
1123-
DebugFunc = BM->addDebugInfo(SPIRVDebug::FunctionDecl, getVoidTy(), Ops);
1122+
DebugFunc =
1123+
BM->addDebugInfo(SPIRVDebug::FunctionDeclaration, getVoidTy(), Ops);
11241124
} else {
11251125
// Here we add operands specific function definition
11261126
using namespace SPIRVDebug::Operand::Function;

llvm-spirv/lib/SPIRV/LLVMToSPIRVDbgTran.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ class LLVMToSPIRVDbgTran {
9999
SPIRVId getDebugInfoNoneId();
100100

101101
// Compilation unit
102-
SPIRVEntry *transDbgCompilationUnit(const DICompileUnit *CU);
102+
SPIRVEntry *transDbgCompileUnit(const DICompileUnit *CU);
103103

104104
/// The following methods (till the end of the file) implement translation
105105
/// of debug instrtuctions described in the spec.

llvm-spirv/lib/SPIRV/SPIRVToLLVMDbgTran.cpp

Lines changed: 28 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ DIScope *SPIRVToLLVMDbgTran::getScope(const SPIRVEntry *ScopeInst) {
149149
}
150150

151151
DICompileUnit *
152-
SPIRVToLLVMDbgTran::transCompileUnit(const SPIRVExtInst *DebugInst) {
152+
SPIRVToLLVMDbgTran::transCompilationUnit(const SPIRVExtInst *DebugInst) {
153153
const SPIRVWordVec &Ops = DebugInst->getArguments();
154154

155155
using namespace SPIRVDebug::Operand::CompilationUnit;
@@ -736,9 +736,10 @@ DINode *SPIRVToLLVMDbgTran::transFunction(const SPIRVExtInst *DebugInst) {
736736

737737
// Here we create fake array of template parameters. If it was plain nullptr,
738738
// the template parameter operand would be removed in DISubprogram::getImpl.
739-
// But we want it to be there, because if there is DebugTemplate instruction
740-
// refering to this function, TransTemplate method must be able to replace the
741-
// template parameter operand, thus it must be in the operands list.
739+
// But we want it to be there, because if there is DebugTypeTemplate
740+
// instruction refering to this function, transTypeTemplate method must be
741+
// able to replace the template parameter operand, thus it must be in the
742+
// operands list.
742743
SmallVector<llvm::Metadata *, 8> Elts;
743744
DINodeArray TParams = Builder.getOrCreateArray(Elts);
744745
llvm::DITemplateParameterArray TParamsArray = TParams.get();
@@ -815,9 +816,10 @@ DINode *SPIRVToLLVMDbgTran::transFunctionDecl(const SPIRVExtInst *DebugInst) {
815816

816817
// Here we create fake array of template parameters. If it was plain nullptr,
817818
// the template parameter operand would be removed in DISubprogram::getImpl.
818-
// But we want it to be there, because if there is DebugTemplate instruction
819-
// refering to this function, TransTemplate method must be able to replace the
820-
// template parameter operand, thus it must be in the operands list.
819+
// But we want it to be there, because if there is DebugTypeTemplate
820+
// instruction refering to this function, transTypeTemplate method must be
821+
// able to replace the template parameter operand, thus it must be in the
822+
// operands list.
821823
SmallVector<llvm::Metadata *, 8> Elts;
822824
DINodeArray TParams = Builder.getOrCreateArray(Elts);
823825
llvm::DITemplateParameterArray TParamsArray = TParams.get();
@@ -931,7 +933,8 @@ DINode *SPIRVToLLVMDbgTran::transTypedef(const SPIRVExtInst *DebugInst) {
931933
return Builder.createTypedef(Ty, Alias, File, LineNo, Scope);
932934
}
933935

934-
DINode *SPIRVToLLVMDbgTran::transInheritance(const SPIRVExtInst *DebugInst) {
936+
DINode *
937+
SPIRVToLLVMDbgTran::transTypeInheritance(const SPIRVExtInst *DebugInst) {
935938
using namespace SPIRVDebug::Operand::TypeInheritance;
936939
const SPIRVWordVec &Ops = DebugInst->getArguments();
937940
assert(Ops.size() >= OperandCount && "Invalid number of operands");
@@ -952,8 +955,8 @@ DINode *SPIRVToLLVMDbgTran::transInheritance(const SPIRVExtInst *DebugInst) {
952955
}
953956

954957
DINode *
955-
SPIRVToLLVMDbgTran::transTemplateParameter(const SPIRVExtInst *DebugInst) {
956-
using namespace SPIRVDebug::Operand::TemplateParameter;
958+
SPIRVToLLVMDbgTran::transTypeTemplateParameter(const SPIRVExtInst *DebugInst) {
959+
using namespace SPIRVDebug::Operand::TypeTemplateParameter;
957960
const SPIRVWordVec &Ops = DebugInst->getArguments();
958961
assert(Ops.size() >= OperandCount && "Invalid number of operands");
959962
StringRef Name = getString(Ops[NameIdx]);
@@ -971,9 +974,9 @@ SPIRVToLLVMDbgTran::transTemplateParameter(const SPIRVExtInst *DebugInst) {
971974
return Builder.createTemplateTypeParameter(Context, Name, Ty, false);
972975
}
973976

974-
DINode *SPIRVToLLVMDbgTran::transTemplateTemplateParameter(
977+
DINode *SPIRVToLLVMDbgTran::transTypeTemplateTemplateParameter(
975978
const SPIRVExtInst *DebugInst) {
976-
using namespace SPIRVDebug::Operand::TemplateTemplateParameter;
979+
using namespace SPIRVDebug::Operand::TypeTemplateTemplateParameter;
977980
const SPIRVWordVec &Ops = DebugInst->getArguments();
978981
assert(Ops.size() >= OperandCount && "Invalid number of operands");
979982
StringRef Name = getString(Ops[NameIdx]);
@@ -983,9 +986,9 @@ DINode *SPIRVToLLVMDbgTran::transTemplateTemplateParameter(
983986
TemplName);
984987
}
985988

986-
DINode *
987-
SPIRVToLLVMDbgTran::transTemplateParameterPack(const SPIRVExtInst *DebugInst) {
988-
using namespace SPIRVDebug::Operand::TemplateParameterPack;
989+
DINode *SPIRVToLLVMDbgTran::transTypeTemplateParameterPack(
990+
const SPIRVExtInst *DebugInst) {
991+
using namespace SPIRVDebug::Operand::TypeTemplateParameterPack;
989992
const SPIRVWordVec &Ops = DebugInst->getArguments();
990993
assert(Ops.size() >= MinOperandCount && "Invalid number of operands");
991994
StringRef Name = getString(Ops[NameIdx]);
@@ -998,8 +1001,8 @@ SPIRVToLLVMDbgTran::transTemplateParameterPack(const SPIRVExtInst *DebugInst) {
9981001
return Builder.createTemplateParameterPack(Context, Name, nullptr, Pack);
9991002
}
10001003

1001-
MDNode *SPIRVToLLVMDbgTran::transTemplate(const SPIRVExtInst *DebugInst) {
1002-
using namespace SPIRVDebug::Operand::Template;
1004+
MDNode *SPIRVToLLVMDbgTran::transTypeTemplate(const SPIRVExtInst *DebugInst) {
1005+
using namespace SPIRVDebug::Operand::TypeTemplate;
10031006
const SPIRVWordVec &Ops = DebugInst->getArguments();
10041007
const size_t NumOps = Ops.size();
10051008
assert(NumOps >= MinOperandCount && "Invalid number of operands");
@@ -1103,7 +1106,7 @@ MDNode *SPIRVToLLVMDbgTran::transDebugInstImpl(const SPIRVExtInst *DebugInst) {
11031106
return nullptr;
11041107

11051108
case SPIRVDebug::CompilationUnit:
1106-
return transCompileUnit(DebugInst);
1109+
return transCompilationUnit(DebugInst);
11071110

11081111
case SPIRVDebug::TypeBasic:
11091112
return transTypeBasic(DebugInst);
@@ -1150,7 +1153,7 @@ MDNode *SPIRVToLLVMDbgTran::transDebugInstImpl(const SPIRVExtInst *DebugInst) {
11501153
case SPIRVDebug::Function:
11511154
return transFunction(DebugInst);
11521155

1153-
case SPIRVDebug::FunctionDecl:
1156+
case SPIRVDebug::FunctionDeclaration:
11541157
return transFunctionDecl(DebugInst);
11551158

11561159
case SPIRVDebug::GlobalVariable:
@@ -1165,20 +1168,20 @@ MDNode *SPIRVToLLVMDbgTran::transDebugInstImpl(const SPIRVExtInst *DebugInst) {
11651168
case SPIRVDebug::InlinedAt:
11661169
return transDebugInlined(DebugInst);
11671170

1168-
case SPIRVDebug::Inheritance:
1169-
return transInheritance(DebugInst);
1171+
case SPIRVDebug::TypeInheritance:
1172+
return transTypeInheritance(DebugInst);
11701173

11711174
case SPIRVDebug::TypeTemplateParameter:
1172-
return transTemplateParameter(DebugInst);
1175+
return transTypeTemplateParameter(DebugInst);
11731176

11741177
case SPIRVDebug::TypeTemplateTemplateParameter:
1175-
return transTemplateTemplateParameter(DebugInst);
1178+
return transTypeTemplateTemplateParameter(DebugInst);
11761179

11771180
case SPIRVDebug::TypeTemplateParameterPack:
1178-
return transTemplateParameterPack(DebugInst);
1181+
return transTypeTemplateParameterPack(DebugInst);
11791182

11801183
case SPIRVDebug::TypeTemplate:
1181-
return transTemplate(DebugInst);
1184+
return transTypeTemplate(DebugInst);
11821185

11831186
case SPIRVDebug::ImportedEntity:
11841187
return transImportedEntry(DebugInst);

llvm-spirv/lib/SPIRV/SPIRVToLLVMDbgTran.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ class SPIRVToLLVMDbgTran {
103103

104104
MDNode *transDebugInlined(const SPIRVExtInst *Inst);
105105

106-
DICompileUnit *transCompileUnit(const SPIRVExtInst *DebugInst);
106+
DICompileUnit *transCompilationUnit(const SPIRVExtInst *DebugInst);
107107

108108
DIBasicType *transTypeBasic(const SPIRVExtInst *DebugInst);
109109

@@ -128,11 +128,11 @@ class SPIRVToLLVMDbgTran {
128128

129129
DINode *transTypeEnum(const SPIRVExtInst *DebugInst);
130130

131-
DINode *transTemplateParameter(const SPIRVExtInst *DebugInst);
132-
DINode *transTemplateTemplateParameter(const SPIRVExtInst *DebugInst);
133-
DINode *transTemplateParameterPack(const SPIRVExtInst *DebugInst);
131+
DINode *transTypeTemplateParameter(const SPIRVExtInst *DebugInst);
132+
DINode *transTypeTemplateTemplateParameter(const SPIRVExtInst *DebugInst);
133+
DINode *transTypeTemplateParameterPack(const SPIRVExtInst *DebugInst);
134134

135-
MDNode *transTemplate(const SPIRVExtInst *DebugInst);
135+
MDNode *transTypeTemplate(const SPIRVExtInst *DebugInst);
136136

137137
DINode *transTypeFunction(const SPIRVExtInst *DebugInst);
138138

@@ -151,7 +151,7 @@ class SPIRVToLLVMDbgTran {
151151

152152
DINode *transTypedef(const SPIRVExtInst *DebugInst);
153153

154-
DINode *transInheritance(const SPIRVExtInst *DebugInst);
154+
DINode *transTypeInheritance(const SPIRVExtInst *DebugInst);
155155

156156
DINode *transImportedEntry(const SPIRVExtInst *DebugInst);
157157

llvm-spirv/lib/SPIRV/libSPIRV/SPIRV.debug.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ enum Instruction {
2626
TypeEnum = 9,
2727
TypeComposite = 10,
2828
TypeMember = 11,
29-
Inheritance = 12,
29+
TypeInheritance = 12,
3030
TypePtrToMember = 13,
3131
TypeTemplate = 14,
3232
TypeTemplateParameter = 15,
3333
TypeTemplateParameterPack = 16,
3434
TypeTemplateTemplateParameter = 17,
3535
GlobalVariable = 18,
36-
FunctionDecl = 19,
36+
FunctionDeclaration = 19,
3737
Function = 20,
3838
LexicalBlock = 21,
3939
LexicalBlockDiscriminator = 22,
@@ -456,15 +456,15 @@ enum {
456456
};
457457
}
458458

459-
namespace Template {
459+
namespace TypeTemplate {
460460
enum {
461461
TargetIdx = 0,
462462
FirstParameterIdx = 1,
463463
MinOperandCount = 1
464464
};
465465
}
466466

467-
namespace TemplateParameter {
467+
namespace TypeTemplateParameter {
468468
enum {
469469
NameIdx = 0,
470470
TypeIdx = 1,
@@ -476,7 +476,7 @@ enum {
476476
};
477477
}
478478

479-
namespace TemplateTemplateParameter {
479+
namespace TypeTemplateTemplateParameter {
480480
enum {
481481
NameIdx = 0,
482482
TemplateNameIdx = 1,
@@ -487,7 +487,7 @@ enum {
487487
};
488488
}
489489

490-
namespace TemplateParameterPack {
490+
namespace TypeTemplateParameterPack {
491491
enum {
492492
NameIdx = 0,
493493
SourceIdx = 1,

llvm-spirv/lib/SPIRV/libSPIRV/SPIRVExtInst.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ SPIRV_DEF_NAMEMAP(OCLExtOpKind, OCLExtOpMap)
221221
typedef SPIRVDebug::Instruction SPIRVDebugExtOpKind;
222222
template <> inline void SPIRVMap<SPIRVDebugExtOpKind, std::string>::init() {
223223
add(SPIRVDebug::DebugInfoNone, "DebugInfoNone");
224-
add(SPIRVDebug::CompilationUnit, "DebugCompileUnit");
224+
add(SPIRVDebug::CompilationUnit, "DebugCompilationUnit");
225225
add(SPIRVDebug::Source, "DebugSource");
226226
add(SPIRVDebug::TypeBasic, "DebugTypeBasic");
227227
add(SPIRVDebug::TypePointer, "DebugTypePointer");
@@ -234,19 +234,19 @@ template <> inline void SPIRVMap<SPIRVDebugExtOpKind, std::string>::init() {
234234
add(SPIRVDebug::TypeMember, "DebugTypeMember");
235235
add(SPIRVDebug::TypeEnum, "DebugTypeEnum");
236236
add(SPIRVDebug::Typedef, "DebugTypedef");
237-
add(SPIRVDebug::TypeTemplateParameter, "DebugTemplateParameter");
238-
add(SPIRVDebug::TypeTemplateParameterPack, "DebugTemplateParameterPack");
237+
add(SPIRVDebug::TypeTemplateParameter, "DebugTypeTemplateParameter");
238+
add(SPIRVDebug::TypeTemplateParameterPack, "DebugTypeTemplateParameterPack");
239239
add(SPIRVDebug::TypeTemplateTemplateParameter,
240-
"DebugTemplateTemplateParameter");
241-
add(SPIRVDebug::TypeTemplate, "DebugTemplate");
240+
"DebugTypeTemplateTemplateParameter");
241+
add(SPIRVDebug::TypeTemplate, "DebugTypeTemplate");
242242
add(SPIRVDebug::TypePtrToMember, "DebugTypePtrToMember,");
243243
add(SPIRVDebug::TypeSubrange, "DebugTypeSubrange");
244244
add(SPIRVDebug::TypeString, "DebugTypeString");
245-
add(SPIRVDebug::Inheritance, "DebugInheritance");
245+
add(SPIRVDebug::TypeInheritance, "DebugTypeInheritance");
246246
add(SPIRVDebug::Function, "DebugFunction");
247-
add(SPIRVDebug::FunctionDecl, "DebugFunctionDecl");
247+
add(SPIRVDebug::FunctionDeclaration, "DebugFunctionDeclaration");
248248
add(SPIRVDebug::LexicalBlock, "DebugLexicalBlock");
249-
add(SPIRVDebug::LexicalBlockDiscriminator, "LexicalBlockDiscriminator");
249+
add(SPIRVDebug::LexicalBlockDiscriminator, "DebugLexicalBlockDiscriminator");
250250
add(SPIRVDebug::LocalVariable, "DebugLocalVariable");
251251
add(SPIRVDebug::InlinedVariable, "DebugInlinedVariable");
252252
add(SPIRVDebug::GlobalVariable, "DebugGlobalVariable");

llvm-spirv/test/DebugInfo/DebugFunction.cl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
// Check for 2 things:
22
// - After round trip translation function definition has !dbg metadata attached
33
// specifically if -gline-tables-only was used for Clang
4-
// - Parent operand of DebugFunction is DebugCompileUnit, not an OpString, even
5-
// if in LLVM IR it points to a DIFile instead of DICompileUnit.
4+
// - Parent operand of DebugFunction is DebugCompilationUnit, not an OpString,
5+
// even if in LLVM IR it points to a DIFile instead of DICompileUnit.
66

77
// RUN: %clang_cc1 %s -cl-std=clc++ -emit-llvm-bc -triple spir -debug-info-kind=line-tables-only -O0 -o - | llvm-spirv -o %t.spv
88
// RUN: llvm-spirv %t.spv -to-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV
@@ -17,7 +17,7 @@ void kernel k() {
1717

1818
// CHECK-SPIRV: String [[foo:[0-9]+]] "foo"
1919
// CHECK-SPIRV: String [[k:[0-9]+]] "k"
20-
// CHECK-SPIRV: [[CU:[0-9]+]] {{[0-9]+}} DebugCompileUnit
20+
// CHECK-SPIRV: [[CU:[0-9]+]] {{[0-9]+}} DebugCompilationUnit
2121
// CHECK-SPIRV: DebugFunction [[foo]] {{.*}} [[CU]] {{.*}} [[foo_id:[0-9]+]] {{[0-9]+}} {{$}}
2222
// CHECK-SPIRV: DebugFunction [[k]] {{.*}} [[CU]] {{.*}} [[k_id:[0-9]+]] {{[0-9]+}} {{$}}
2323

llvm-spirv/test/DebugInfo/DebugInfoSubrangeWithOnlyCount.spt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,14 @@
5656

5757
5 ExtInst 3 27 2 DebugInfoNone
5858
7 ExtInst 3 30 2 DebugSource 29 27
59-
9 ExtInst 3 31 2 DebugCompileUnit 65536 4 30 21
59+
9 ExtInst 3 31 2 DebugCompilationUnit 65536 4 30 21
6060
7 ExtInst 3 32 2 DebugTypeFunction 0 27
6161
8 ExtInst 3 35 2 DebugTypeBasic 33 34 3
6262
7 ExtInst 3 36 2 DebugTypeArray 35 11 ; Count = 1000
6363
8 ExtInst 3 37 2 DebugTypePointer 36 4294967295 0
6464
16 ExtInst 3 40 2 DebugFunction 38 32 30 25 0 31 39 44 25 27 27
6565
12 ExtInst 3 42 2 DebugLocalVariable 41 37 30 15 0 40 0
66-
6 ExtInst 3 43 2 DebugTemplate 40
66+
6 ExtInst 3 43 2 DebugTypeTemplate 40
6767
6 ExtInst 3 44 2 DebugOperation 0
6868
6 ExtInst 3 45 2 DebugExpression 44
6969

llvm-spirv/test/DebugInfo/Generic/tu-member-opaque.spvasm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252

5353
5 ExtInst 3 7 2 DebugInfoNone
5454
7 ExtInst 3 10 2 DebugSource 9 7
55-
9 ExtInst 3 11 2 DebugCompileUnit 65536 0 10 12
55+
9 ExtInst 3 11 2 DebugCompilationUnit 65536 0 10 12
5656
7 ExtInst 3 12 2 DebugTypeFunction 0 7
5757
7 ExtInst 3 16 2 DebugSource 15 7
5858
8 ExtInst 3 21 2 DebugTypeBasic 20 18 4

0 commit comments

Comments
 (0)