mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-05 09:30:44 +00:00
Include non-semantic debuginfo grammar
This commit is contained in:
@@ -0,0 +1,713 @@
|
||||
{
|
||||
"copyright" : [
|
||||
"Copyright (c) 2018 The Khronos Group Inc.",
|
||||
"",
|
||||
"Permission is hereby granted, free of charge, to any person obtaining a copy",
|
||||
"of this software and/or associated documentation files (the \"Materials\"),",
|
||||
"to deal in the Materials without restriction, including without limitation",
|
||||
"the rights to use, copy, modify, merge, publish, distribute, sublicense,",
|
||||
"and/or sell copies of the Materials, and to permit persons to whom the",
|
||||
"Materials are furnished to do so, subject to the following conditions:",
|
||||
"",
|
||||
"The above copyright notice and this permission notice shall be included in",
|
||||
"all copies or substantial portions of the Materials.",
|
||||
"",
|
||||
"MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS",
|
||||
"STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND",
|
||||
"HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ ",
|
||||
"",
|
||||
"THE MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS",
|
||||
"OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
|
||||
"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL",
|
||||
"THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
|
||||
"LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING",
|
||||
"FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS",
|
||||
"IN THE MATERIALS."
|
||||
],
|
||||
"version" : 100,
|
||||
"revision" : 6,
|
||||
"instructions" : [
|
||||
{
|
||||
"opname" : "DebugInfoNone",
|
||||
"opcode" : 0
|
||||
},
|
||||
{
|
||||
"opname" : "DebugCompilationUnit",
|
||||
"opcode" : 1,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Version'" },
|
||||
{ "kind" : "IdRef", "name" : "'DWARF Version'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Language'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeBasic",
|
||||
"opcode" : 2,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Size'" },
|
||||
{ "kind" : "IdRef", "name" : "'Encoding'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypePointer",
|
||||
"opcode" : 3,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Base Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Storage Class'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeQualifier",
|
||||
"opcode" : 4,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Base Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Type Qualifier'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeArray",
|
||||
"opcode" : 5,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Base Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Component Counts'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeVector",
|
||||
"opcode" : 6,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Base Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Component Count'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypedef",
|
||||
"opcode" : 7,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Base Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeFunction",
|
||||
"opcode" : 8,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" },
|
||||
{ "kind" : "IdRef", "name" : "'Return Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parameter Types'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeEnum",
|
||||
"opcode" : 9,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Underlying Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Size'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" },
|
||||
{ "kind" : "PairIdRefIdRef", "name" : "'Value, Name, Value, Name, ...'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeComposite",
|
||||
"opcode" : 10,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Tag'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Linkage Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Size'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" },
|
||||
{ "kind" : "IdRef", "name" : "'Members'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeMember",
|
||||
"opcode" : 11,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Offset'" },
|
||||
{ "kind" : "IdRef", "name" : "'Size'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" },
|
||||
{ "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeInheritance",
|
||||
"opcode" : 12,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Offset'" },
|
||||
{ "kind" : "IdRef", "name" : "'Size'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypePtrToMember",
|
||||
"opcode" : 13,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Member Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeTemplate",
|
||||
"opcode" : 14,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Target'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parameters'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeTemplateParameter",
|
||||
"opcode" : 15,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Actual Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeTemplateTemplateParameter",
|
||||
"opcode" : 16,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Template Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeTemplateParameterPack",
|
||||
"opcode" : 17,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Template Parameters'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugGlobalVariable",
|
||||
"opcode" : 18,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Linkage Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Variable'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" },
|
||||
{ "kind" : "IdRef", "name" : "'Static Member Declaration'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugFunctionDeclaration",
|
||||
"opcode" : 19,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Linkage Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugFunction",
|
||||
"opcode" : 20,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Linkage Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" },
|
||||
{ "kind" : "IdRef", "name" : "'Scope Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Declaration'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugLexicalBlock",
|
||||
"opcode" : 21,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Name'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugLexicalBlockDiscriminator",
|
||||
"opcode" : 22,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Discriminator'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugScope",
|
||||
"opcode" : 23,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Scope'" },
|
||||
{ "kind" : "IdRef", "name" : "'Inlined At'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugNoScope",
|
||||
"opcode" : 24
|
||||
},
|
||||
{
|
||||
"opname" : "DebugInlinedAt",
|
||||
"opcode" : 25,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Scope'" },
|
||||
{ "kind" : "IdRef", "name" : "'Inlined'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugLocalVariable",
|
||||
"opcode" : 26,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" },
|
||||
{ "kind" : "IdRef", "name" : "'Arg Number'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugInlinedVariable",
|
||||
"opcode" : 27,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Variable'" },
|
||||
{ "kind" : "IdRef", "name" : "'Inlined'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugDeclare",
|
||||
"opcode" : 28,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Local Variable'" },
|
||||
{ "kind" : "IdRef", "name" : "'Variable'" },
|
||||
{ "kind" : "IdRef", "name" : "'Expression'" },
|
||||
{ "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugValue",
|
||||
"opcode" : 29,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Local Variable'" },
|
||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||
{ "kind" : "IdRef", "name" : "'Expression'" },
|
||||
{ "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugOperation",
|
||||
"opcode" : 30,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'OpCode'" },
|
||||
{ "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugExpression",
|
||||
"opcode" : 31,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugMacroDef",
|
||||
"opcode" : 32,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugMacroUndef",
|
||||
"opcode" : 33,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Macro'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugImportedEntity",
|
||||
"opcode" : 34,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Name'" },
|
||||
{ "kind" : "IdRef", "name" : "'Tag'" },
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Entity'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column'" },
|
||||
{ "kind" : "IdRef", "name" : "'Parent'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugSource",
|
||||
"opcode" : 35,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'File'" },
|
||||
{ "kind" : "IdRef", "name" : "'Text'", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugFunctionDefinition",
|
||||
"opcode" : 101,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Function'" },
|
||||
{ "kind" : "IdRef", "name" : "'Definition'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugSourceContinued",
|
||||
"opcode" : 102,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Text'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugLine",
|
||||
"opcode" : 103,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Source'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line Start'" },
|
||||
{ "kind" : "IdRef", "name" : "'Line End'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column Start'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column End'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugNoLine",
|
||||
"opcode" : 104
|
||||
},
|
||||
{
|
||||
"opname" : "DebugBuildIdentifier",
|
||||
"opcode" : 105,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Identifier'" },
|
||||
{ "kind" : "IdRef", "name" : "'Flags'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugStoragePath",
|
||||
"opcode" : 106,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Path'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugEntryPoint",
|
||||
"opcode" : 107,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Entry Point'" },
|
||||
{ "kind" : "IdRef", "name" : "'Compilation Unit'" },
|
||||
{ "kind" : "IdRef", "name" : "'Compiler Signature'" },
|
||||
{ "kind" : "IdRef", "name" : "'Command-line Arguments'" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "DebugTypeMatrix",
|
||||
"opcode" : 108,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "'Vector Type'" },
|
||||
{ "kind" : "IdRef", "name" : "'Vector Count'" },
|
||||
{ "kind" : "IdRef", "name" : "'Column Major'" }
|
||||
]
|
||||
}
|
||||
],
|
||||
"operand_kinds" : [
|
||||
{
|
||||
"category" : "BitEnum",
|
||||
"kind" : "DebugInfoFlags",
|
||||
"enumerants" : [
|
||||
{
|
||||
"enumerant" : "None",
|
||||
"value" : "0x0000"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIsProtected",
|
||||
"value" : "0x01"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIsPrivate",
|
||||
"value" : "0x02"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIsPublic",
|
||||
"value" : "0x03"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIsLocal",
|
||||
"value" : "0x04"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIsDefinition",
|
||||
"value" : "0x08"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagFwdDecl",
|
||||
"value" : "0x10"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagArtificial",
|
||||
"value" : "0x20"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagExplicit",
|
||||
"value" : "0x40"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagPrototyped",
|
||||
"value" : "0x80"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagObjectPointer",
|
||||
"value" : "0x100"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagStaticMember",
|
||||
"value" : "0x200"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIndirectVariable",
|
||||
"value" : "0x400"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagLValueReference",
|
||||
"value" : "0x800"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagRValueReference",
|
||||
"value" : "0x1000"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIsOptimized",
|
||||
"value" : "0x2000"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagIsEnumClass",
|
||||
"value" : "0x4000"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagTypePassByValue",
|
||||
"value" : "0x8000"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagTypePassByReference",
|
||||
"value" : "0x10000"
|
||||
},
|
||||
{
|
||||
"enumerant" : "FlagUnknownPhysicalLayout",
|
||||
"value" : "0x20000"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"category" : "BitEnum",
|
||||
"kind" : "BuildIdentifierFlags",
|
||||
"enumerants" : [
|
||||
{
|
||||
"enumerant" : "IdentifierPossibleDuplicates",
|
||||
"value" : "0x01"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"category" : "ValueEnum",
|
||||
"kind" : "DebugBaseTypeAttributeEncoding",
|
||||
"enumerants" : [
|
||||
{
|
||||
"enumerant" : "Unspecified",
|
||||
"value" : "0"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Address",
|
||||
"value" : "1"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Boolean",
|
||||
"value" : "2"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Float",
|
||||
"value" : "3"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Signed",
|
||||
"value" : "4"
|
||||
},
|
||||
{
|
||||
"enumerant" : "SignedChar",
|
||||
"value" : "5"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Unsigned",
|
||||
"value" : "6"
|
||||
},
|
||||
{
|
||||
"enumerant" : "UnsignedChar",
|
||||
"value" : "7"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"category" : "ValueEnum",
|
||||
"kind" : "DebugCompositeType",
|
||||
"enumerants" : [
|
||||
{
|
||||
"enumerant" : "Class",
|
||||
"value" : "0"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Structure",
|
||||
"value" : "1"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Union",
|
||||
"value" : "2"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"category" : "ValueEnum",
|
||||
"kind" : "DebugTypeQualifier",
|
||||
"enumerants" : [
|
||||
{
|
||||
"enumerant" : "ConstType",
|
||||
"value" : "0"
|
||||
},
|
||||
{
|
||||
"enumerant" : "VolatileType",
|
||||
"value" : "1"
|
||||
},
|
||||
{
|
||||
"enumerant" : "RestrictType",
|
||||
"value" : "2"
|
||||
},
|
||||
{
|
||||
"enumerant" : "AtomicType",
|
||||
"value" : "3"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"category" : "ValueEnum",
|
||||
"kind" : "DebugOperation",
|
||||
"enumerants" : [
|
||||
{
|
||||
"enumerant" : "Deref",
|
||||
"value" : "0"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Plus",
|
||||
"value" : "1"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Minus",
|
||||
"value" : "2"
|
||||
},
|
||||
{
|
||||
"enumerant" : "PlusUconst",
|
||||
"value" : "3",
|
||||
"parameters" : [
|
||||
{ "kind" : "IdRef" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"enumerant" : "BitPiece",
|
||||
"value" : "4",
|
||||
"parameters" : [
|
||||
{ "kind" : "IdRef" },
|
||||
{ "kind" : "IdRef" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"enumerant" : "Swap",
|
||||
"value" : "5"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Xderef",
|
||||
"value" : "6"
|
||||
},
|
||||
{
|
||||
"enumerant" : "StackValue",
|
||||
"value" : "7"
|
||||
},
|
||||
{
|
||||
"enumerant" : "Constu",
|
||||
"value" : "8",
|
||||
"parameters" : [
|
||||
{ "kind" : "IdRef" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"enumerant" : "Fragment",
|
||||
"value" : "9",
|
||||
"parameters" : [
|
||||
{ "kind" : "IdRef" },
|
||||
{ "kind" : "IdRef" }
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"category" : "ValueEnum",
|
||||
"kind" : "DebugImportedEntity",
|
||||
"enumerants" : [
|
||||
{
|
||||
"enumerant" : "ImportedModule",
|
||||
"value" : "0"
|
||||
},
|
||||
{
|
||||
"enumerant" : "ImportedDeclaration",
|
||||
"value" : "1"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -23,6 +23,9 @@ with open(pathname + 'spirv.core.grammar.json', mode='r') as f:
|
||||
with open(pathname + 'extinst.glsl.std.450.grammar.json', mode='r') as f:
|
||||
glsl450 = json.load(f)
|
||||
|
||||
with open(pathname + 'extinst.nonsemantic.shader.debuginfo.100.grammar.json', mode='r') as f:
|
||||
debugInfo = json.load(f)
|
||||
|
||||
# open XML registry
|
||||
registry = ET.parse(pathname + 'spir-v.xml').getroot()
|
||||
|
||||
@@ -877,6 +880,9 @@ used_ids = ''
|
||||
disassemble = ''
|
||||
|
||||
for inst in spirv['instructions']:
|
||||
if inst['class'] == '@exclude':
|
||||
continue
|
||||
|
||||
decl += ' {} = {},\n'.format(inst['opname'][2:], inst['opcode'])
|
||||
|
||||
if inst['opcode'] in used:
|
||||
@@ -1280,28 +1286,52 @@ OpDecoder::OpDecoder(const ConstIter &it)
|
||||
##
|
||||
###############################################################################
|
||||
|
||||
decl = ''
|
||||
stringise = ''
|
||||
glsl_decl = ''
|
||||
glsl_stringise = ''
|
||||
|
||||
for inst in glsl450['instructions']:
|
||||
decl += ' {} = {},\n'.format(inst['opname'], inst['opcode'])
|
||||
stringise += ' STRINGISE_ENUM_CLASS({});\n'.format(inst['opname'])
|
||||
glsl_decl += ' {} = {},\n'.format(inst['opname'], inst['opcode'])
|
||||
glsl_stringise += ' STRINGISE_ENUM_CLASS({});\n'.format(inst['opname'])
|
||||
|
||||
debug_decl = ''
|
||||
debug_stringise = ''
|
||||
|
||||
for inst in debugInfo['instructions']:
|
||||
debug_decl += ' {} = {},\n'.format(inst['opname'][5:], inst['opcode'])
|
||||
debug_stringise += ' STRINGISE_ENUM_CLASS({});\n'.format(inst['opname'][5:])
|
||||
|
||||
header.write('''enum class GLSLstd450 : uint32_t
|
||||
{{
|
||||
{decl}
|
||||
{glsl_decl}
|
||||
Max,
|
||||
Invalid = ~0U,
|
||||
}};
|
||||
|
||||
'''.format(decl = decl))
|
||||
enum class ShaderDbg : uint32_t
|
||||
{{
|
||||
{debug_decl}
|
||||
Max,
|
||||
Invalid = ~0U,
|
||||
}};
|
||||
|
||||
'''.format(glsl_decl = glsl_decl, debug_decl = debug_decl))
|
||||
|
||||
cpp.write('''template <>
|
||||
rdcstr DoStringise(const rdcspv::GLSLstd450 &el)
|
||||
{{
|
||||
BEGIN_ENUM_STRINGISE(rdcspv::GLSLstd450);
|
||||
{{
|
||||
{stringise}
|
||||
{glsl_stringise}
|
||||
}}
|
||||
END_ENUM_STRINGISE();
|
||||
}}
|
||||
|
||||
template <>
|
||||
rdcstr DoStringise(const rdcspv::ShaderDbg &el)
|
||||
{{
|
||||
BEGIN_ENUM_STRINGISE(rdcspv::ShaderDbg);
|
||||
{{
|
||||
{debug_stringise}
|
||||
}}
|
||||
END_ENUM_STRINGISE();
|
||||
}}
|
||||
@@ -1315,7 +1345,7 @@ rdcstr DoStringise(const rdcspv::Generator &el)
|
||||
}}
|
||||
END_ENUM_STRINGISE();
|
||||
}}
|
||||
'''.format(stringise = stringise.rstrip(), generator_tostr = generator_tostr.rstrip()))
|
||||
'''.format(glsl_stringise = glsl_stringise.rstrip(), debug_stringise = debug_stringise.rstrip(), generator_tostr = generator_tostr.rstrip()))
|
||||
|
||||
header.write('''
|
||||
}; // namespace rdcspv
|
||||
|
||||
@@ -300,6 +300,15 @@ struct OpGLSL450 : public OpExtInstGeneric<rdcspv::GLSLstd450>
|
||||
}
|
||||
OpGLSL450(const ConstIter &it) : OpExtInstGeneric(it) {}
|
||||
};
|
||||
struct OpShaderDbg : public OpExtInstGeneric<rdcspv::ShaderDbg>
|
||||
{
|
||||
OpShaderDbg(IdResultType resultType, IdResult result, Id set, rdcspv::ShaderDbg inst,
|
||||
const rdcarray<IdOrWord> ¶ms)
|
||||
: OpExtInstGeneric(resultType, result, set, inst, params)
|
||||
{
|
||||
}
|
||||
OpShaderDbg(const ConstIter &it) : OpExtInstGeneric(it) {}
|
||||
};
|
||||
|
||||
}; // namespace rdcspv
|
||||
|
||||
|
||||
@@ -3578,125 +3578,6 @@ void ThreadState::StepNext(ShaderDebugState *state, const rdcarray<ThreadState>
|
||||
case Op::USubSatINTEL:
|
||||
case Op::IMul32x16INTEL:
|
||||
case Op::UMul32x16INTEL:
|
||||
case Op::VmeImageINTEL:
|
||||
case Op::TypeVmeImageINTEL:
|
||||
case Op::TypeAvcImePayloadINTEL:
|
||||
case Op::TypeAvcRefPayloadINTEL:
|
||||
case Op::TypeAvcSicPayloadINTEL:
|
||||
case Op::TypeAvcMcePayloadINTEL:
|
||||
case Op::TypeAvcMceResultINTEL:
|
||||
case Op::TypeAvcImeResultINTEL:
|
||||
case Op::TypeAvcImeResultSingleReferenceStreamoutINTEL:
|
||||
case Op::TypeAvcImeResultDualReferenceStreamoutINTEL:
|
||||
case Op::TypeAvcImeSingleReferenceStreaminINTEL:
|
||||
case Op::TypeAvcImeDualReferenceStreaminINTEL:
|
||||
case Op::TypeAvcRefResultINTEL:
|
||||
case Op::TypeAvcSicResultINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL:
|
||||
case Op::SubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultInterShapePenaltyINTEL:
|
||||
case Op::SubgroupAvcMceSetInterShapePenaltyINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL:
|
||||
case Op::SubgroupAvcMceSetInterDirectionPenaltyINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL:
|
||||
case Op::SubgroupAvcMceSetMotionVectorCostFunctionINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL:
|
||||
case Op::SubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL:
|
||||
case Op::SubgroupAvcMceSetAcOnlyHaarINTEL:
|
||||
case Op::SubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL:
|
||||
case Op::SubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL:
|
||||
case Op::SubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL:
|
||||
case Op::SubgroupAvcMceConvertToImePayloadINTEL:
|
||||
case Op::SubgroupAvcMceConvertToImeResultINTEL:
|
||||
case Op::SubgroupAvcMceConvertToRefPayloadINTEL:
|
||||
case Op::SubgroupAvcMceConvertToRefResultINTEL:
|
||||
case Op::SubgroupAvcMceConvertToSicPayloadINTEL:
|
||||
case Op::SubgroupAvcMceConvertToSicResultINTEL:
|
||||
case Op::SubgroupAvcMceGetMotionVectorsINTEL:
|
||||
case Op::SubgroupAvcMceGetInterDistortionsINTEL:
|
||||
case Op::SubgroupAvcMceGetBestInterDistortionsINTEL:
|
||||
case Op::SubgroupAvcMceGetInterMajorShapeINTEL:
|
||||
case Op::SubgroupAvcMceGetInterMinorShapeINTEL:
|
||||
case Op::SubgroupAvcMceGetInterDirectionsINTEL:
|
||||
case Op::SubgroupAvcMceGetInterMotionVectorCountINTEL:
|
||||
case Op::SubgroupAvcMceGetInterReferenceIdsINTEL:
|
||||
case Op::SubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL:
|
||||
case Op::SubgroupAvcImeInitializeINTEL:
|
||||
case Op::SubgroupAvcImeSetSingleReferenceINTEL:
|
||||
case Op::SubgroupAvcImeSetDualReferenceINTEL:
|
||||
case Op::SubgroupAvcImeRefWindowSizeINTEL:
|
||||
case Op::SubgroupAvcImeAdjustRefOffsetINTEL:
|
||||
case Op::SubgroupAvcImeConvertToMcePayloadINTEL:
|
||||
case Op::SubgroupAvcImeSetMaxMotionVectorCountINTEL:
|
||||
case Op::SubgroupAvcImeSetUnidirectionalMixDisableINTEL:
|
||||
case Op::SubgroupAvcImeSetEarlySearchTerminationThresholdINTEL:
|
||||
case Op::SubgroupAvcImeSetWeightedSadINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithSingleReferenceINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithDualReferenceINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL:
|
||||
case Op::SubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL:
|
||||
case Op::SubgroupAvcImeConvertToMceResultINTEL:
|
||||
case Op::SubgroupAvcImeGetSingleReferenceStreaminINTEL:
|
||||
case Op::SubgroupAvcImeGetDualReferenceStreaminINTEL:
|
||||
case Op::SubgroupAvcImeStripSingleReferenceStreamoutINTEL:
|
||||
case Op::SubgroupAvcImeStripDualReferenceStreamoutINTEL:
|
||||
case Op::SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL:
|
||||
case Op::SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL:
|
||||
case Op::SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL:
|
||||
case Op::SubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL:
|
||||
case Op::SubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL:
|
||||
case Op::SubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL:
|
||||
case Op::SubgroupAvcImeGetBorderReachedINTEL:
|
||||
case Op::SubgroupAvcImeGetTruncatedSearchIndicationINTEL:
|
||||
case Op::SubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL:
|
||||
case Op::SubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL:
|
||||
case Op::SubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL:
|
||||
case Op::SubgroupAvcFmeInitializeINTEL:
|
||||
case Op::SubgroupAvcBmeInitializeINTEL:
|
||||
case Op::SubgroupAvcRefConvertToMcePayloadINTEL:
|
||||
case Op::SubgroupAvcRefSetBidirectionalMixDisableINTEL:
|
||||
case Op::SubgroupAvcRefSetBilinearFilterEnableINTEL:
|
||||
case Op::SubgroupAvcRefEvaluateWithSingleReferenceINTEL:
|
||||
case Op::SubgroupAvcRefEvaluateWithDualReferenceINTEL:
|
||||
case Op::SubgroupAvcRefEvaluateWithMultiReferenceINTEL:
|
||||
case Op::SubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL:
|
||||
case Op::SubgroupAvcRefConvertToMceResultINTEL:
|
||||
case Op::SubgroupAvcSicInitializeINTEL:
|
||||
case Op::SubgroupAvcSicConfigureSkcINTEL:
|
||||
case Op::SubgroupAvcSicConfigureIpeLumaINTEL:
|
||||
case Op::SubgroupAvcSicConfigureIpeLumaChromaINTEL:
|
||||
case Op::SubgroupAvcSicGetMotionVectorMaskINTEL:
|
||||
case Op::SubgroupAvcSicConvertToMcePayloadINTEL:
|
||||
case Op::SubgroupAvcSicSetIntraLumaShapePenaltyINTEL:
|
||||
case Op::SubgroupAvcSicSetIntraLumaModeCostFunctionINTEL:
|
||||
case Op::SubgroupAvcSicSetIntraChromaModeCostFunctionINTEL:
|
||||
case Op::SubgroupAvcSicSetBilinearFilterEnableINTEL:
|
||||
case Op::SubgroupAvcSicSetSkcForwardTransformEnableINTEL:
|
||||
case Op::SubgroupAvcSicSetBlockBasedRawSkipSadINTEL:
|
||||
case Op::SubgroupAvcSicEvaluateIpeINTEL:
|
||||
case Op::SubgroupAvcSicEvaluateWithSingleReferenceINTEL:
|
||||
case Op::SubgroupAvcSicEvaluateWithDualReferenceINTEL:
|
||||
case Op::SubgroupAvcSicEvaluateWithMultiReferenceINTEL:
|
||||
case Op::SubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL:
|
||||
case Op::SubgroupAvcSicConvertToMceResultINTEL:
|
||||
case Op::SubgroupAvcSicGetIpeLumaShapeINTEL:
|
||||
case Op::SubgroupAvcSicGetBestIpeLumaDistortionINTEL:
|
||||
case Op::SubgroupAvcSicGetBestIpeChromaDistortionINTEL:
|
||||
case Op::SubgroupAvcSicGetPackedIpeLumaModesINTEL:
|
||||
case Op::SubgroupAvcSicGetIpeChromaModeINTEL:
|
||||
case Op::SubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL:
|
||||
case Op::SubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL:
|
||||
case Op::SubgroupAvcSicGetInterRawSadsINTEL:
|
||||
case Op::FunctionPointerCallINTEL:
|
||||
case Op::LoopControlINTEL:
|
||||
case Op::RayQueryGetRayTMinKHR:
|
||||
case Op::RayQueryGetRayFlagsKHR:
|
||||
@@ -3727,69 +3608,8 @@ void ThreadState::StepNext(ShaderDebugState *state, const rdcarray<ThreadState>
|
||||
case Op::ConvertUToAccelerationStructureKHR:
|
||||
case Op::IgnoreIntersectionKHR:
|
||||
case Op::TerminateRayKHR:
|
||||
case Op::AsmINTEL:
|
||||
case Op::VariableLengthArrayINTEL:
|
||||
case Op::TraceMotionNV:
|
||||
case Op::TraceRayMotionNV:
|
||||
case Op::ConstantFunctionPointerINTEL:
|
||||
case Op::AsmTargetINTEL:
|
||||
case Op::AsmCallINTEL:
|
||||
case Op::SaveMemoryINTEL:
|
||||
case Op::RestoreMemoryINTEL:
|
||||
case Op::ArbitraryFloatSinCosPiINTEL:
|
||||
case Op::ArbitraryFloatCastINTEL:
|
||||
case Op::ArbitraryFloatCastFromIntINTEL:
|
||||
case Op::ArbitraryFloatCastToIntINTEL:
|
||||
case Op::ArbitraryFloatAddINTEL:
|
||||
case Op::ArbitraryFloatSubINTEL:
|
||||
case Op::ArbitraryFloatMulINTEL:
|
||||
case Op::ArbitraryFloatDivINTEL:
|
||||
case Op::ArbitraryFloatGTINTEL:
|
||||
case Op::ArbitraryFloatGEINTEL:
|
||||
case Op::ArbitraryFloatLTINTEL:
|
||||
case Op::ArbitraryFloatLEINTEL:
|
||||
case Op::ArbitraryFloatEQINTEL:
|
||||
case Op::ArbitraryFloatRecipINTEL:
|
||||
case Op::ArbitraryFloatRSqrtINTEL:
|
||||
case Op::ArbitraryFloatCbrtINTEL:
|
||||
case Op::ArbitraryFloatHypotINTEL:
|
||||
case Op::ArbitraryFloatSqrtINTEL:
|
||||
case Op::ArbitraryFloatLogINTEL:
|
||||
case Op::ArbitraryFloatLog2INTEL:
|
||||
case Op::ArbitraryFloatLog10INTEL:
|
||||
case Op::ArbitraryFloatLog1pINTEL:
|
||||
case Op::ArbitraryFloatExpINTEL:
|
||||
case Op::ArbitraryFloatExp2INTEL:
|
||||
case Op::ArbitraryFloatExp10INTEL:
|
||||
case Op::ArbitraryFloatExpm1INTEL:
|
||||
case Op::ArbitraryFloatSinINTEL:
|
||||
case Op::ArbitraryFloatCosINTEL:
|
||||
case Op::ArbitraryFloatSinCosINTEL:
|
||||
case Op::ArbitraryFloatSinPiINTEL:
|
||||
case Op::ArbitraryFloatCosPiINTEL:
|
||||
case Op::ArbitraryFloatASinINTEL:
|
||||
case Op::ArbitraryFloatASinPiINTEL:
|
||||
case Op::ArbitraryFloatACosINTEL:
|
||||
case Op::ArbitraryFloatACosPiINTEL:
|
||||
case Op::ArbitraryFloatATanINTEL:
|
||||
case Op::ArbitraryFloatATanPiINTEL:
|
||||
case Op::ArbitraryFloatATan2INTEL:
|
||||
case Op::ArbitraryFloatPowINTEL:
|
||||
case Op::ArbitraryFloatPowRINTEL:
|
||||
case Op::ArbitraryFloatPowNINTEL:
|
||||
case Op::FixedSqrtINTEL:
|
||||
case Op::FixedRecipINTEL:
|
||||
case Op::FixedRsqrtINTEL:
|
||||
case Op::FixedSinINTEL:
|
||||
case Op::FixedCosINTEL:
|
||||
case Op::FixedSinCosINTEL:
|
||||
case Op::FixedSinPiINTEL:
|
||||
case Op::FixedCosPiINTEL:
|
||||
case Op::FixedSinCosPiINTEL:
|
||||
case Op::FixedLogINTEL:
|
||||
case Op::FixedExpINTEL:
|
||||
case Op::PtrCastToCrossWorkgroupINTEL:
|
||||
case Op::CrossWorkgroupCastToPtrINTEL:
|
||||
case Op::TypeBufferSurfaceINTEL:
|
||||
case Op::TypeStructContinuedINTEL:
|
||||
case Op::ConstantCompositeContinuedINTEL:
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1980,11 +1980,6 @@ enum class Op : uint16_t
|
||||
USubSatINTEL = 5596,
|
||||
IMul32x16INTEL = 5597,
|
||||
UMul32x16INTEL = 5598,
|
||||
ConstantFunctionPointerINTEL = 5600,
|
||||
FunctionPointerCallINTEL = 5601,
|
||||
AsmTargetINTEL = 5609,
|
||||
AsmINTEL = 5610,
|
||||
AsmCallINTEL = 5611,
|
||||
AtomicFMinEXT = 5614,
|
||||
AtomicFMaxEXT = 5615,
|
||||
AssumeTrueKHR = 5630,
|
||||
@@ -1993,182 +1988,7 @@ enum class Op : uint16_t
|
||||
DecorateStringGOOGLE = 5632,
|
||||
MemberDecorateString = 5633,
|
||||
MemberDecorateStringGOOGLE = 5633,
|
||||
VmeImageINTEL = 5699,
|
||||
TypeVmeImageINTEL = 5700,
|
||||
TypeAvcImePayloadINTEL = 5701,
|
||||
TypeAvcRefPayloadINTEL = 5702,
|
||||
TypeAvcSicPayloadINTEL = 5703,
|
||||
TypeAvcMcePayloadINTEL = 5704,
|
||||
TypeAvcMceResultINTEL = 5705,
|
||||
TypeAvcImeResultINTEL = 5706,
|
||||
TypeAvcImeResultSingleReferenceStreamoutINTEL = 5707,
|
||||
TypeAvcImeResultDualReferenceStreamoutINTEL = 5708,
|
||||
TypeAvcImeSingleReferenceStreaminINTEL = 5709,
|
||||
TypeAvcImeDualReferenceStreaminINTEL = 5710,
|
||||
TypeAvcRefResultINTEL = 5711,
|
||||
TypeAvcSicResultINTEL = 5712,
|
||||
SubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713,
|
||||
SubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714,
|
||||
SubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715,
|
||||
SubgroupAvcMceSetInterShapePenaltyINTEL = 5716,
|
||||
SubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717,
|
||||
SubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718,
|
||||
SubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719,
|
||||
SubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720,
|
||||
SubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721,
|
||||
SubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722,
|
||||
SubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723,
|
||||
SubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724,
|
||||
SubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725,
|
||||
SubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726,
|
||||
SubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727,
|
||||
SubgroupAvcMceSetAcOnlyHaarINTEL = 5728,
|
||||
SubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729,
|
||||
SubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730,
|
||||
SubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731,
|
||||
SubgroupAvcMceConvertToImePayloadINTEL = 5732,
|
||||
SubgroupAvcMceConvertToImeResultINTEL = 5733,
|
||||
SubgroupAvcMceConvertToRefPayloadINTEL = 5734,
|
||||
SubgroupAvcMceConvertToRefResultINTEL = 5735,
|
||||
SubgroupAvcMceConvertToSicPayloadINTEL = 5736,
|
||||
SubgroupAvcMceConvertToSicResultINTEL = 5737,
|
||||
SubgroupAvcMceGetMotionVectorsINTEL = 5738,
|
||||
SubgroupAvcMceGetInterDistortionsINTEL = 5739,
|
||||
SubgroupAvcMceGetBestInterDistortionsINTEL = 5740,
|
||||
SubgroupAvcMceGetInterMajorShapeINTEL = 5741,
|
||||
SubgroupAvcMceGetInterMinorShapeINTEL = 5742,
|
||||
SubgroupAvcMceGetInterDirectionsINTEL = 5743,
|
||||
SubgroupAvcMceGetInterMotionVectorCountINTEL = 5744,
|
||||
SubgroupAvcMceGetInterReferenceIdsINTEL = 5745,
|
||||
SubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746,
|
||||
SubgroupAvcImeInitializeINTEL = 5747,
|
||||
SubgroupAvcImeSetSingleReferenceINTEL = 5748,
|
||||
SubgroupAvcImeSetDualReferenceINTEL = 5749,
|
||||
SubgroupAvcImeRefWindowSizeINTEL = 5750,
|
||||
SubgroupAvcImeAdjustRefOffsetINTEL = 5751,
|
||||
SubgroupAvcImeConvertToMcePayloadINTEL = 5752,
|
||||
SubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753,
|
||||
SubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754,
|
||||
SubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755,
|
||||
SubgroupAvcImeSetWeightedSadINTEL = 5756,
|
||||
SubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757,
|
||||
SubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758,
|
||||
SubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759,
|
||||
SubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760,
|
||||
SubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761,
|
||||
SubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762,
|
||||
SubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763,
|
||||
SubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764,
|
||||
SubgroupAvcImeConvertToMceResultINTEL = 5765,
|
||||
SubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766,
|
||||
SubgroupAvcImeGetDualReferenceStreaminINTEL = 5767,
|
||||
SubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768,
|
||||
SubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769,
|
||||
SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770,
|
||||
SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771,
|
||||
SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772,
|
||||
SubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773,
|
||||
SubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774,
|
||||
SubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775,
|
||||
SubgroupAvcImeGetBorderReachedINTEL = 5776,
|
||||
SubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777,
|
||||
SubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778,
|
||||
SubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779,
|
||||
SubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780,
|
||||
SubgroupAvcFmeInitializeINTEL = 5781,
|
||||
SubgroupAvcBmeInitializeINTEL = 5782,
|
||||
SubgroupAvcRefConvertToMcePayloadINTEL = 5783,
|
||||
SubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784,
|
||||
SubgroupAvcRefSetBilinearFilterEnableINTEL = 5785,
|
||||
SubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786,
|
||||
SubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787,
|
||||
SubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788,
|
||||
SubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789,
|
||||
SubgroupAvcRefConvertToMceResultINTEL = 5790,
|
||||
SubgroupAvcSicInitializeINTEL = 5791,
|
||||
SubgroupAvcSicConfigureSkcINTEL = 5792,
|
||||
SubgroupAvcSicConfigureIpeLumaINTEL = 5793,
|
||||
SubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794,
|
||||
SubgroupAvcSicGetMotionVectorMaskINTEL = 5795,
|
||||
SubgroupAvcSicConvertToMcePayloadINTEL = 5796,
|
||||
SubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797,
|
||||
SubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798,
|
||||
SubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799,
|
||||
SubgroupAvcSicSetBilinearFilterEnableINTEL = 5800,
|
||||
SubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801,
|
||||
SubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802,
|
||||
SubgroupAvcSicEvaluateIpeINTEL = 5803,
|
||||
SubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804,
|
||||
SubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805,
|
||||
SubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806,
|
||||
SubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807,
|
||||
SubgroupAvcSicConvertToMceResultINTEL = 5808,
|
||||
SubgroupAvcSicGetIpeLumaShapeINTEL = 5809,
|
||||
SubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810,
|
||||
SubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811,
|
||||
SubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812,
|
||||
SubgroupAvcSicGetIpeChromaModeINTEL = 5813,
|
||||
SubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
|
||||
SubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
|
||||
SubgroupAvcSicGetInterRawSadsINTEL = 5816,
|
||||
VariableLengthArrayINTEL = 5818,
|
||||
SaveMemoryINTEL = 5819,
|
||||
RestoreMemoryINTEL = 5820,
|
||||
ArbitraryFloatSinCosPiINTEL = 5840,
|
||||
ArbitraryFloatCastINTEL = 5841,
|
||||
ArbitraryFloatCastFromIntINTEL = 5842,
|
||||
ArbitraryFloatCastToIntINTEL = 5843,
|
||||
ArbitraryFloatAddINTEL = 5846,
|
||||
ArbitraryFloatSubINTEL = 5847,
|
||||
ArbitraryFloatMulINTEL = 5848,
|
||||
ArbitraryFloatDivINTEL = 5849,
|
||||
ArbitraryFloatGTINTEL = 5850,
|
||||
ArbitraryFloatGEINTEL = 5851,
|
||||
ArbitraryFloatLTINTEL = 5852,
|
||||
ArbitraryFloatLEINTEL = 5853,
|
||||
ArbitraryFloatEQINTEL = 5854,
|
||||
ArbitraryFloatRecipINTEL = 5855,
|
||||
ArbitraryFloatRSqrtINTEL = 5856,
|
||||
ArbitraryFloatCbrtINTEL = 5857,
|
||||
ArbitraryFloatHypotINTEL = 5858,
|
||||
ArbitraryFloatSqrtINTEL = 5859,
|
||||
ArbitraryFloatLogINTEL = 5860,
|
||||
ArbitraryFloatLog2INTEL = 5861,
|
||||
ArbitraryFloatLog10INTEL = 5862,
|
||||
ArbitraryFloatLog1pINTEL = 5863,
|
||||
ArbitraryFloatExpINTEL = 5864,
|
||||
ArbitraryFloatExp2INTEL = 5865,
|
||||
ArbitraryFloatExp10INTEL = 5866,
|
||||
ArbitraryFloatExpm1INTEL = 5867,
|
||||
ArbitraryFloatSinINTEL = 5868,
|
||||
ArbitraryFloatCosINTEL = 5869,
|
||||
ArbitraryFloatSinCosINTEL = 5870,
|
||||
ArbitraryFloatSinPiINTEL = 5871,
|
||||
ArbitraryFloatCosPiINTEL = 5872,
|
||||
ArbitraryFloatASinINTEL = 5873,
|
||||
ArbitraryFloatASinPiINTEL = 5874,
|
||||
ArbitraryFloatACosINTEL = 5875,
|
||||
ArbitraryFloatACosPiINTEL = 5876,
|
||||
ArbitraryFloatATanINTEL = 5877,
|
||||
ArbitraryFloatATanPiINTEL = 5878,
|
||||
ArbitraryFloatATan2INTEL = 5879,
|
||||
ArbitraryFloatPowINTEL = 5880,
|
||||
ArbitraryFloatPowRINTEL = 5881,
|
||||
ArbitraryFloatPowNINTEL = 5882,
|
||||
LoopControlINTEL = 5887,
|
||||
FixedSqrtINTEL = 5923,
|
||||
FixedRecipINTEL = 5924,
|
||||
FixedRsqrtINTEL = 5925,
|
||||
FixedSinINTEL = 5926,
|
||||
FixedCosINTEL = 5927,
|
||||
FixedSinCosINTEL = 5928,
|
||||
FixedSinPiINTEL = 5929,
|
||||
FixedCosPiINTEL = 5930,
|
||||
FixedSinCosPiINTEL = 5931,
|
||||
FixedLogINTEL = 5932,
|
||||
FixedExpINTEL = 5933,
|
||||
PtrCastToCrossWorkgroupINTEL = 5934,
|
||||
CrossWorkgroupCastToPtrINTEL = 5938,
|
||||
ReadPipeBlockingINTEL = 5946,
|
||||
WritePipeBlockingINTEL = 5947,
|
||||
FPGARegINTEL = 5949,
|
||||
@@ -2286,6 +2106,57 @@ enum class GLSLstd450 : uint32_t
|
||||
Invalid = ~0U,
|
||||
};
|
||||
|
||||
enum class ShaderDbg : uint32_t
|
||||
{
|
||||
InfoNone = 0,
|
||||
CompilationUnit = 1,
|
||||
TypeBasic = 2,
|
||||
TypePointer = 3,
|
||||
TypeQualifier = 4,
|
||||
TypeArray = 5,
|
||||
TypeVector = 6,
|
||||
Typedef = 7,
|
||||
TypeFunction = 8,
|
||||
TypeEnum = 9,
|
||||
TypeComposite = 10,
|
||||
TypeMember = 11,
|
||||
TypeInheritance = 12,
|
||||
TypePtrToMember = 13,
|
||||
TypeTemplate = 14,
|
||||
TypeTemplateParameter = 15,
|
||||
TypeTemplateTemplateParameter = 16,
|
||||
TypeTemplateParameterPack = 17,
|
||||
GlobalVariable = 18,
|
||||
FunctionDeclaration = 19,
|
||||
Function = 20,
|
||||
LexicalBlock = 21,
|
||||
LexicalBlockDiscriminator = 22,
|
||||
Scope = 23,
|
||||
NoScope = 24,
|
||||
InlinedAt = 25,
|
||||
LocalVariable = 26,
|
||||
InlinedVariable = 27,
|
||||
Declare = 28,
|
||||
Value = 29,
|
||||
Operation = 30,
|
||||
Expression = 31,
|
||||
MacroDef = 32,
|
||||
MacroUndef = 33,
|
||||
ImportedEntity = 34,
|
||||
Source = 35,
|
||||
FunctionDefinition = 101,
|
||||
SourceContinued = 102,
|
||||
Line = 103,
|
||||
NoLine = 104,
|
||||
BuildIdentifier = 105,
|
||||
StoragePath = 106,
|
||||
EntryPoint = 107,
|
||||
TypeMatrix = 108,
|
||||
|
||||
Max,
|
||||
Invalid = ~0U,
|
||||
};
|
||||
|
||||
|
||||
}; // namespace rdcspv
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user