Бранимир Караџић 8 месяцев назад
Родитель
Сommit
486853494e

+ 2 - 1
3rdparty/spirv-headers/include/spirv/spir-v.xml

@@ -98,7 +98,8 @@
         <id value="45"  vendor="Kitsunebi Games" tool="Nuvk SPIR-V Emitter and DLSL compiler" comment="Contact Luna Nielsen, [email protected], https://github.com/Inochi2D/nuvk"/>
         <id value="46"  vendor="Nintendo" comment="Contact Steve Urquhart, [email protected]"/>
         <id value="47"  vendor="ARM" comment="Contact Christopher Gautier, [email protected]"/>
-        <unused start="48" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
+        <id value="48"  vendor="Goopax" comment="Contact Ingo Josopait, [email protected]"/>
+        <unused start="49" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
     </ids>
 
     <!-- SECTION: SPIR-V Opcodes and Enumerants -->

+ 143 - 143
3rdparty/spirv-headers/include/spirv/unified1/extinst.debuginfo.grammar.json

@@ -35,253 +35,253 @@
       "opname" : "DebugCompilationUnit",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Version'" },
-        { "kind" : "LiteralInteger", "name" : "'DWARF Version'" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Version" },
+        { "kind" : "LiteralInteger", "name" : "DWARF Version" }
       ]
     },
     {
       "opname" : "DebugTypeBasic",
       "opcode" : 2,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugBaseTypeAttributeEncoding", "name" : "'Encoding'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugBaseTypeAttributeEncoding", "name" : "Encoding" }
       ]
     },
     {
       "opname" : "DebugTypePointer",
       "opcode" : 3,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "StorageClass", "name" : "'Storage Class'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Literal Flags'" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "StorageClass", "name" : "Storage Class" },
+        { "kind" : "DebugInfoFlags", "name" : "Literal Flags" }
       ]
     },
     {
       "opname" : "DebugTypeQualifier",
       "opcode" : 4,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "DebugTypeQualifier", "name" : "'Type Qualifier'" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "DebugTypeQualifier", "name" : "Type Qualifier" }
       ]
     },
     {
       "opname" : "DebugTypeArray",
       "opcode" : 5,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Component Counts'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "IdRef", "name" : "Component Counts", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugTypeVector",
       "opcode" : 6,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "LiteralInteger", "name" : "'Component Count'" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "LiteralInteger", "name" : "Component Count" }
       ]
     },
     {
       "opname" : "DebugTypedef",
       "opcode" : 7,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugTypeFunction",
       "opcode" : 8,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Return Type'" },
-        { "kind" : "IdRef", "name" : "'Paramter Types'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Return Type" },
+        { "kind" : "IdRef", "name" : "Paramter Types", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugTypeEnum",
       "opcode" : 9,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Underlying Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "PairIdRefIdRef", "name" : "'Value, Name, Value, Name, ...'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Underlying Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" },
+        { "kind" : "PairIdRefIdRef", "name" : "Value, Name, Value, Name, ...", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugTypeComposite",
       "opcode" : 10,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "DebugCompositeType", "name" : "'Tag'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Members'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "DebugCompositeType", "name" : "Tag" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Offset'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Offset" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" },
+        { "kind" : "IdRef", "name" : "Value", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugTypeInheritance",
       "opcode" : 12,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Child'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Offset'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" }
+        { "kind" : "IdRef", "name" : "Child" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Offset" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" }
       ]
     },
     {
       "opname" : "DebugTypePtrToMember",
       "opcode" : 13,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Member Type'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
+        { "kind" : "IdRef", "name" : "Member Type" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugTypeTemplate",
       "opcode" : 14,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Target'" },
-        { "kind" : "IdRef", "name" : "'Parameters'", "quantifier" : "*" }
+        { "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Actual Type" },
+        { "kind" : "IdRef", "name" : "Value" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" }
       ]
     },
     {
       "opname" : "DebugTypeTemplateTemplateParameter",
       "opcode" : 16,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Template Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Template Name" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" }
       ]
     },
     {
       "opname" : "DebugTypeTemplateParameterPack",
       "opcode" : 17,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Template Parameters'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "IdRef", "name" : "'Variable'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Static Member Declaration'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Linkage Name" },
+        { "kind" : "IdRef", "name" : "Variable" },
+        { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Linkage Name" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" }
       ]
     },
     {
       "opname" : "DebugFunction",
       "opcode" : 20,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "LiteralInteger", "name" : "'Scope Line'" },
-        { "kind" : "IdRef", "name" : "'Function'" },
-        { "kind" : "IdRef", "name" : "'Declaration'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Linkage Name" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" },
+        { "kind" : "LiteralInteger", "name" : "Scope Line" },
+        { "kind" : "IdRef", "name" : "Function" },
+        { "kind" : "IdRef", "name" : "Declaration", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugLexicalBlock",
       "opcode" : 21,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Name'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Name", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugLexicalBlockDiscriminator",
       "opcode" : 22,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "LiteralInteger", "name" : "'Discriminator'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
+        { "kind" : "IdRef", "name" : "Scope" },
+        { "kind" : "LiteralInteger", "name" : "Discriminator" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugScope",
       "opcode" : 23,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "IdRef", "name" : "'Inlined At'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Scope" },
+        { "kind" : "IdRef", "name" : "Inlined At", "quantifier" : "?" }
       ]
     },
     {
@@ -292,82 +292,82 @@
       "opname" : "DebugInlinedAt",
       "opcode" : 25,
       "operands" : [
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "IdRef", "name" : "'Inlined'", "quantifier" : "?" }
+        { "kind" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "LiteralInteger", "name" : "'Arg Number'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "LiteralInteger", "name" : "Arg Number", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugInlinedVariable",
       "opcode" : 27,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Variable'" },
-        { "kind" : "IdRef", "name" : "'Inlined'" }
+        { "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" : "Local Variable" },
+        { "kind" : "IdRef", "name" : "Variable" },
+        { "kind" : "IdRef", "name" : "Expression" }
       ]
     },
     {
       "opname" : "DebugValue",
       "opcode" : 29,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Value'" },
-        { "kind" : "IdRef", "name" : "'Expression'" },
-        { "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Value" },
+        { "kind" : "IdRef", "name" : "Expression" },
+        { "kind" : "IdRef", "name" : "Indexes", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugOperation",
       "opcode" : 30,
       "operands" : [
-        { "kind" : "DebugOperation", "name" : "'OpCode'" },
-        { "kind" : "LiteralInteger", "name" : "'Operands ...'", "quantifier" : "*" }
+        { "kind" : "DebugOperation", "name" : "OpCode" },
+        { "kind" : "LiteralInteger", "name" : "Operands ...", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugExpression",
       "opcode" : 31,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Operands ...", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugMacroDef",
       "opcode" : 32,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Value", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugMacroUndef",
       "opcode" : 33,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Macro'" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "IdRef", "name" : "Macro" }
       ]
     }
   ],

+ 120 - 120
3rdparty/spirv-headers/include/spirv/unified1/extinst.glsl.std.450.grammar.json

@@ -31,439 +31,439 @@
       "opname" : "Round",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "RoundEven",
       "opcode" : 2,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Trunc",
       "opcode" : 3,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "FAbs",
       "opcode" : 4,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "SAbs",
       "opcode" : 5,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "FSign",
       "opcode" : 6,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "SSign",
       "opcode" : 7,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Floor",
       "opcode" : 8,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Ceil",
       "opcode" : 9,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Fract",
       "opcode" : 10,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Radians",
       "opcode" : 11,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'degrees'" }
+        { "kind" : "IdRef", "name" : "degrees" }
       ]
     },
     {
       "opname" : "Degrees",
       "opcode" : 12,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'radians'" }
+        { "kind" : "IdRef", "name" : "radians" }
       ]
     },
     {
       "opname" : "Sin",
       "opcode" : 13,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Cos",
       "opcode" : 14,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Tan",
       "opcode" : 15,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Asin",
       "opcode" : 16,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Acos",
       "opcode" : 17,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Atan",
       "opcode" : 18,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'y_over_x'" }
+        { "kind" : "IdRef", "name" : "y_over_x" }
       ]
     },
     {
       "opname" : "Sinh",
       "opcode" : 19,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Cosh",
       "opcode" : 20,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Tanh",
       "opcode" : 21,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Asinh",
       "opcode" : 22,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Acosh",
       "opcode" : 23,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Atanh",
       "opcode" : 24,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Atan2",
       "opcode" : 25,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Pow",
       "opcode" : 26,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "Exp",
       "opcode" : 27,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Log",
       "opcode" : 28,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Exp2",
       "opcode" : 29,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Log2",
       "opcode" : 30,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Sqrt",
       "opcode" : 31,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "InverseSqrt",
       "opcode" : 32,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Determinant",
       "opcode" : 33,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "MatrixInverse",
       "opcode" : 34,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Modf",
       "opcode" : 35,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'i'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "i" }
       ]
     },
     {
       "opname" : "ModfStruct",
       "opcode" : 36,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "FMin",
       "opcode" : 37,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "UMin",
       "opcode" : 38,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "SMin",
       "opcode" : 39,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "FMax",
       "opcode" : 40,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "UMax",
       "opcode" : 41,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "SMax",
       "opcode" : 42,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "FClamp",
       "opcode" : 43,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'minVal'" },
-        { "kind" : "IdRef", "name" : "'maxVal'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "minVal" },
+        { "kind" : "IdRef", "name" : "maxVal" }
       ]
     },
     {
       "opname" : "UClamp",
       "opcode" : 44,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'minVal'" },
-        { "kind" : "IdRef", "name" : "'maxVal'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "minVal" },
+        { "kind" : "IdRef", "name" : "maxVal" }
       ]
     },
     {
       "opname" : "SClamp",
       "opcode" : 45,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'minVal'" },
-        { "kind" : "IdRef", "name" : "'maxVal'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "minVal" },
+        { "kind" : "IdRef", "name" : "maxVal" }
       ]
     },
     {
       "opname" : "FMix",
       "opcode" : 46,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'a'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "a" }
       ]
     },
     {
       "opname" : "IMix",
       "opcode" : 47,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'a'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "a" }
       ]
     },
     {
       "opname" : "Step",
       "opcode" : 48,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'edge'" },
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "edge" },
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "SmoothStep",
       "opcode" : 49,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'edge0'" },
-        { "kind" : "IdRef", "name" : "'edge1'" },
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "edge0" },
+        { "kind" : "IdRef", "name" : "edge1" },
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Fma",
       "opcode" : 50,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'a'" },
-        { "kind" : "IdRef", "name" : "'b'" },
-        { "kind" : "IdRef", "name" : "'c'" }
+        { "kind" : "IdRef", "name" : "a" },
+        { "kind" : "IdRef", "name" : "b" },
+        { "kind" : "IdRef", "name" : "c" }
       ]
     },
     {
       "opname" : "Frexp",
       "opcode" : 51,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'exp'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "exp" }
       ]
     },
     {
       "opname" : "FrexpStruct",
       "opcode" : 52,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Ldexp",
       "opcode" : 53,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'exp'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "exp" }
       ]
     },
     {
       "opname" : "PackSnorm4x8",
       "opcode" : 54,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ]
     },
     {
       "opname" : "PackUnorm4x8",
       "opcode" : 55,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ]
     },
     {
       "opname" : "PackSnorm2x16",
       "opcode" : 56,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ]
     },
     {
       "opname" : "PackUnorm2x16",
       "opcode" : 57,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ]
     },
     {
       "opname" : "PackHalf2x16",
       "opcode" : 58,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ]
     },
     {
       "opname" : "PackDouble2x32",
       "opcode" : 59,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ],
       "capabilities" : [ "Float64" ]
     },
@@ -471,42 +471,42 @@
       "opname" : "UnpackSnorm2x16",
       "opcode" : 60,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "UnpackUnorm2x16",
       "opcode" : 61,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "UnpackHalf2x16",
       "opcode" : 62,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ]
     },
     {
       "opname" : "UnpackSnorm4x8",
       "opcode" : 63,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "UnpackUnorm4x8",
       "opcode" : 64,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "UnpackDouble2x32",
       "opcode" : 65,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" }
+        { "kind" : "IdRef", "name" : "v" }
       ],
       "capabilities" : [ "Float64" ]
     },
@@ -514,84 +514,84 @@
       "opname" : "Length",
       "opcode" : 66,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "Distance",
       "opcode" : 67,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p0'" },
-        { "kind" : "IdRef", "name" : "'p1'" }
+        { "kind" : "IdRef", "name" : "p0" },
+        { "kind" : "IdRef", "name" : "p1" }
       ]
     },
     {
       "opname" : "Cross",
       "opcode" : 68,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "Normalize",
       "opcode" : 69,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "FaceForward",
       "opcode" : 70,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'N'" },
-        { "kind" : "IdRef", "name" : "'I'" },
-        { "kind" : "IdRef", "name" : "'Nref'" }
+        { "kind" : "IdRef", "name" : "N" },
+        { "kind" : "IdRef", "name" : "I" },
+        { "kind" : "IdRef", "name" : "Nref" }
       ]
     },
     {
       "opname" : "Reflect",
       "opcode" : 71,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'I'" },
-        { "kind" : "IdRef", "name" : "'N'" }
+        { "kind" : "IdRef", "name" : "I" },
+        { "kind" : "IdRef", "name" : "N" }
       ]
     },
     {
       "opname" : "Refract",
       "opcode" : 72,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'I'" },
-        { "kind" : "IdRef", "name" : "'N'" },
-        { "kind" : "IdRef", "name" : "'eta'" }
+        { "kind" : "IdRef", "name" : "I" },
+        { "kind" : "IdRef", "name" : "N" },
+        { "kind" : "IdRef", "name" : "eta" }
       ]
     },
     {
       "opname" : "FindILsb",
       "opcode" : 73,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Value'" }
+        { "kind" : "IdRef", "name" : "Value" }
       ]
     },
     {
       "opname" : "FindSMsb",
       "opcode" : 74,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Value'" }
+        { "kind" : "IdRef", "name" : "Value" }
       ]
     },
     {
       "opname" : "FindUMsb",
       "opcode" : 75,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Value'" }
+        { "kind" : "IdRef", "name" : "Value" }
       ]
     },
     {
       "opname" : "InterpolateAtCentroid",
       "opcode" : 76,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'interpolant'" }
+        { "kind" : "IdRef", "name" : "interpolant" }
       ],
       "capabilities" : [ "InterpolationFunction" ]
     },
@@ -599,8 +599,8 @@
       "opname" : "InterpolateAtSample",
       "opcode" : 77,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'interpolant'" },
-        { "kind" : "IdRef", "name" : "'sample'" }
+        { "kind" : "IdRef", "name" : "interpolant" },
+        { "kind" : "IdRef", "name" : "sample" }
       ],
       "capabilities" : [ "InterpolationFunction" ]
     },
@@ -608,8 +608,8 @@
       "opname" : "InterpolateAtOffset",
       "opcode" : 78,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'interpolant'" },
-        { "kind" : "IdRef", "name" : "'offset'" }
+        { "kind" : "IdRef", "name" : "interpolant" },
+        { "kind" : "IdRef", "name" : "offset" }
       ],
       "capabilities" : [ "InterpolationFunction" ]
     },
@@ -617,25 +617,25 @@
       "opname" : "NMin",
       "opcode" : 79,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "NMax",
       "opcode" : 80,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "NClamp",
       "opcode" : 81,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'minVal'" },
-        { "kind" : "IdRef", "name" : "'maxVal'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "minVal" },
+        { "kind" : "IdRef", "name" : "maxVal" }
       ]
     }
   ]

+ 1 - 1
3rdparty/spirv-headers/include/spirv/unified1/extinst.nonsemantic.debugprintf.grammar.json

@@ -5,7 +5,7 @@
       "opname" : "DebugPrintf",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef",        "name" : "'Format'" },
+        { "kind" : "IdRef",        "name" : "Format" },
         { "kind" : "IdRef",        "quantifier" : "*" }
       ]
     }

+ 174 - 174
3rdparty/spirv-headers/include/spirv/unified1/extinst.nonsemantic.shader.debuginfo.100.grammar.json

@@ -35,254 +35,254 @@
       "opname" : "DebugCompilationUnit",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Version'" },
-        { "kind" : "IdRef", "name" : "'DWARF Version'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Language'" }
+        { "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'" }
+        { "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'" }
+        { "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'" }
+        { "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" : "*" }
+        { "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'" }
+        { "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'" }
+        { "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" : "*" }
+        { "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" : "*" }
+        { "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" : "*" }
+        { "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" : "?" }
+        { "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'" }
+        { "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'" }
+        { "kind" : "IdRef", "name" : "Member Type" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugTypeTemplate",
       "opcode" : 14,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Target'" },
-        { "kind" : "IdRef", "name" : "'Parameters'", "quantifier" : "*" }
+        { "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'" }
+        { "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'" }
+        { "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" : "*" }
+        { "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" : "?" }
+        { "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'" }
+        { "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" : "?" }
+        { "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" : "?" }
+        { "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'" }
+        { "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" : "?" }
+        { "kind" : "IdRef", "name" : "Scope" },
+        { "kind" : "IdRef", "name" : "Inlined At", "quantifier" : "?" }
       ]
     },
     {
@@ -293,132 +293,132 @@
       "opname" : "DebugInlinedAt",
       "opcode" : 25,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "IdRef", "name" : "'Inlined'", "quantifier" : "?" }
+        { "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" : "?" }
+        { "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'" }
+        { "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" : "*" }
+        { "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" : "*" }
+        { "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" : "*" }
+        { "kind" : "IdRef", "name" : "OpCode" },
+        { "kind" : "IdRef", "name" : "Operands ...", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugExpression",
       "opcode" : 31,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
+        { "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" : "?" }
+        { "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'" }
+        { "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'" }
+        { "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" : "?" }
+        { "kind" : "IdRef", "name" : "File" },
+        { "kind" : "IdRef", "name" : "Text", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugFunctionDefinition",
       "opcode" : 101,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Function'" },
-        { "kind" : "IdRef", "name" : "'Definition'" }
+        { "kind" : "IdRef", "name" : "Function" },
+        { "kind" : "IdRef", "name" : "Definition" }
       ]
     },
     {
       "opname" : "DebugSourceContinued",
       "opcode" : 102,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Text'" }
+        { "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'" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "IdRef", "name" : "Line Start" },
+        { "kind" : "IdRef", "name" : "Line End" },
+        { "kind" : "IdRef", "name" : "Column Start" },
+        { "kind" : "IdRef", "name" : "Column End" }
       ]
     },
     {
@@ -429,34 +429,34 @@
       "opname" : "DebugBuildIdentifier",
       "opcode" : 105,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Identifier'" },
-        { "kind" : "IdRef", "name" : "'Flags'" }
+        { "kind" : "IdRef", "name" : "Identifier" },
+        { "kind" : "IdRef", "name" : "Flags" }
       ]
     },
     {
       "opname" : "DebugStoragePath",
       "opcode" : 106,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Path'" }
+        { "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'" }
+        { "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'" }
+        { "kind" : "IdRef", "name" : "Vector Type" },
+        { "kind" : "IdRef", "name" : "Vector Count" },
+        { "kind" : "IdRef", "name" : "Column Major" }
       ]
     }
   ],

+ 165 - 165
3rdparty/spirv-headers/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json

@@ -35,256 +35,256 @@
       "opname" : "DebugCompilationUnit",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "LiteralInteger", "name" : "'Version'" },
-        { "kind" : "LiteralInteger", "name" : "'DWARF Version'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "SourceLanguage", "name" : "'Language'" }
+        { "kind" : "LiteralInteger", "name" : "Version" },
+        { "kind" : "LiteralInteger", "name" : "DWARF Version" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "SourceLanguage", "name" : "Language" }
       ]
     },
     {
       "opname" : "DebugTypeBasic",
       "opcode" : 2,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugBaseTypeAttributeEncoding", "name" : "'Encoding'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugBaseTypeAttributeEncoding", "name" : "Encoding" }
       ]
     },
     {
       "opname" : "DebugTypePointer",
       "opcode" : 3,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "StorageClass", "name" : "'Storage Class'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "StorageClass", "name" : "Storage Class" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" }
       ]
     },
     {
       "opname" : "DebugTypeQualifier",
       "opcode" : 4,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "DebugTypeQualifier", "name" : "'Type Qualifier'" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "DebugTypeQualifier", "name" : "Type Qualifier" }
       ]
     },
     {
       "opname" : "DebugTypeArray",
       "opcode" : 5,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Component Counts'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "IdRef", "name" : "Component Counts", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugTypeVector",
       "opcode" : 6,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "LiteralInteger", "name" : "'Component Count'" }
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "LiteralInteger", "name" : "Component Count" }
       ]
     },
     {
       "opname" : "DebugTypedef",
       "opcode" : 7,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Base Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Base Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugTypeFunction",
       "opcode" : 8,
       "operands" : [
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Return Type'" },
-        { "kind" : "IdRef", "name" : "'Parameter Types'", "quantifier" : "*" }
+        { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "PairIdRefIdRef", "name" : "'Value, Name, Value, Name, ...'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Underlying Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" },
+        { "kind" : "PairIdRefIdRef", "name" : "Value, Name, Value, Name, ...", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugTypeComposite",
       "opcode" : 10,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "DebugCompositeType", "name" : "'Tag'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Members'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "DebugCompositeType", "name" : "Tag" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Linkage Name" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Offset'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Offset" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" },
+        { "kind" : "IdRef", "name" : "Value", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugTypeInheritance",
       "opcode" : 12,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Child'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Offset'" },
-        { "kind" : "IdRef", "name" : "'Size'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" }
+        { "kind" : "IdRef", "name" : "Child" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Offset" },
+        { "kind" : "IdRef", "name" : "Size" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" }
       ]
     },
     {
       "opname" : "DebugTypePtrToMember",
       "opcode" : 13,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Member Type'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
+        { "kind" : "IdRef", "name" : "Member Type" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugTypeTemplate",
       "opcode" : 14,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Target'" },
-        { "kind" : "IdRef", "name" : "'Parameters'", "quantifier" : "*" }
+        { "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Actual Type" },
+        { "kind" : "IdRef", "name" : "Value" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" }
       ]
     },
     {
       "opname" : "DebugTypeTemplateTemplateParameter",
       "opcode" : 16,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Template Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Template Name" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" }
       ]
     },
     {
       "opname" : "DebugTypeTemplateParameterPack",
       "opcode" : 17,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Template Parameters'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "IdRef", "name" : "'Variable'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "IdRef", "name" : "'Static Member Declaration'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Linkage Name" },
+        { "kind" : "IdRef", "name" : "Variable" },
+        { "kind" : "DebugInfoFlags", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Linkage Name" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" }
       ]
     },
     {
       "opname" : "DebugFunction",
       "opcode" : 20,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Type'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Linkage Name'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "LiteralInteger", "name" : "'Scope Line'" },
-        { "kind" : "IdRef", "name" : "'Function'" },
-        { "kind" : "IdRef", "name" : "'Declaration'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Linkage Name" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" },
+        { "kind" : "LiteralInteger", "name" : "Scope Line" },
+        { "kind" : "IdRef", "name" : "Function" },
+        { "kind" : "IdRef", "name" : "Declaration", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugLexicalBlock",
       "opcode" : 21,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "IdRef", "name" : "'Name'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "IdRef", "name" : "Name", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugLexicalBlockDiscriminator",
       "opcode" : 22,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Discriminator'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Discriminator" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugScope",
       "opcode" : 23,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "IdRef", "name" : "'Inlined At'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Scope" },
+        { "kind" : "IdRef", "name" : "Inlined At", "quantifier" : "?" }
       ]
     },
     {
@@ -295,119 +295,119 @@
       "opname" : "DebugInlinedAt",
       "opcode" : 25,
       "operands" : [
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Scope'" },
-        { "kind" : "IdRef", "name" : "'Inlined'", "quantifier" : "?" }
+        { "kind" : "LiteralInteger", "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" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
-        { "kind" : "LiteralInteger", "name" : "'Arg Number'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Type" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "DebugInfoFlags", "name" : "Flags" },
+        { "kind" : "LiteralInteger", "name" : "Arg Number", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugInlinedVariable",
       "opcode" : 27,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Variable'" },
-        { "kind" : "IdRef", "name" : "'Inlined'" }
+        { "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" : "Local Variable" },
+        { "kind" : "IdRef", "name" : "Variable" },
+        { "kind" : "IdRef", "name" : "Expression" }
       ]
     },
     {
       "opname" : "DebugValue",
       "opcode" : 29,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Local Variable'" },
-        { "kind" : "IdRef", "name" : "'Value'" },
-        { "kind" : "IdRef", "name" : "'Expression'" },
-        { "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Local Variable" },
+        { "kind" : "IdRef", "name" : "Value" },
+        { "kind" : "IdRef", "name" : "Expression" },
+        { "kind" : "IdRef", "name" : "Indexes", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugOperation",
       "opcode" : 30,
       "operands" : [
-        { "kind" : "DebugOperation", "name" : "'OpCode'" },
-        { "kind" : "LiteralInteger", "name" : "'Operands ...'", "quantifier" : "*" }
+        { "kind" : "DebugOperation", "name" : "OpCode" },
+        { "kind" : "LiteralInteger", "name" : "Operands ...", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugExpression",
       "opcode" : 31,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "Operands ...", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "DebugMacroDef",
       "opcode" : 32,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Value", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugMacroUndef",
       "opcode" : 33,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'Macro'" }
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "IdRef", "name" : "Macro" }
       ]
     },
     {
       "opname" : "DebugImportedEntity",
       "opcode" : 34,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "DebugImportedEntity", "name" : "'Tag'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Entity'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "LiteralInteger", "name" : "'Column'" },
-        { "kind" : "IdRef", "name" : "'Parent'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "DebugImportedEntity", "name" : "Tag" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "IdRef", "name" : "Entity" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "LiteralInteger", "name" : "Column" },
+        { "kind" : "IdRef", "name" : "Parent" }
       ]
     },
     {
       "opname" : "DebugSource",
       "opcode" : 35,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'File'" },
-        { "kind" : "IdRef", "name" : "'Text'", "quantifier" : "?" }
+        { "kind" : "IdRef", "name" : "File" },
+        { "kind" : "IdRef", "name" : "Text", "quantifier" : "?" }
       ]
     },
     {
       "opname" : "DebugModuleINTEL",
       "opcode" : 36,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'Name'" },
-        { "kind" : "IdRef", "name" : "'Source'" },
-        { "kind" : "IdRef", "name" : "'Parent'" },
-        { "kind" : "LiteralInteger", "name" : "'Line'" },
-        { "kind" : "IdRef", "name" : "'ConfigurationMacros'" },
-        { "kind" : "IdRef", "name" : "'IncludePath'" },
-        { "kind" : "IdRef", "name" : "'APINotesFile'" },
-        { "kind" : "LiteralInteger", "name" : "'IsDeclaration'" }
+        { "kind" : "IdRef", "name" : "Name" },
+        { "kind" : "IdRef", "name" : "Source" },
+        { "kind" : "IdRef", "name" : "Parent" },
+        { "kind" : "LiteralInteger", "name" : "Line" },
+        { "kind" : "IdRef", "name" : "ConfigurationMacros" },
+        { "kind" : "IdRef", "name" : "IncludePath" },
+        { "kind" : "IdRef", "name" : "APINotesFile" },
+        { "kind" : "LiteralInteger", "name" : "IsDeclaration" }
       ],
       "capability" : "DebugInfoModuleINTEL"
     }

+ 276 - 276
3rdparty/spirv-headers/include/spirv/unified1/extinst.opencl.std.100.grammar.json

@@ -31,1248 +31,1248 @@
       "opname" : "acos",
       "opcode" : 0,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "acosh",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "acospi",
       "opcode" : 2,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "asin",
       "opcode" : 3,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "asinh",
       "opcode" : 4,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "asinpi",
       "opcode" : 5,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "atan",
       "opcode" : 6,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "atan2",
       "opcode" : 7,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "atanh",
       "opcode" : 8,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "atanpi",
       "opcode" : 9,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "atan2pi",
       "opcode" : 10,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "cbrt",
       "opcode" : 11,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "ceil",
       "opcode" : 12,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "copysign",
       "opcode" : 13,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "cos",
       "opcode" : 14,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "cosh",
       "opcode" : 15,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "cospi",
       "opcode" : 16,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "erfc",
       "opcode" : 17,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "erf",
       "opcode" : 18,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "exp",
       "opcode" : 19,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "exp2",
       "opcode" : 20,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "exp10",
       "opcode" : 21,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "expm1",
       "opcode" : 22,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "fabs",
       "opcode" : 23,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "fdim",
       "opcode" : 24,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "floor",
       "opcode" : 25,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "fma",
       "opcode" : 26,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'a'" },
-        { "kind" : "IdRef", "name" : "'b'" },
-        { "kind" : "IdRef", "name" : "'c'" }
+        { "kind" : "IdRef", "name" : "a" },
+        { "kind" : "IdRef", "name" : "b" },
+        { "kind" : "IdRef", "name" : "c" }
       ]
     },
     {
       "opname" : "fmax",
       "opcode" : 27,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "fmin",
       "opcode" : 28,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "fmod",
       "opcode" : 29,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "fract",
       "opcode" : 30,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'ptr'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "ptr" }
       ]
     },
     {
       "opname" : "frexp",
       "opcode" : 31,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'exp'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "exp" }
       ]
     },
     {
       "opname" : "hypot",
       "opcode" : 32,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "ilogb",
       "opcode" : 33,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "ldexp",
       "opcode" : 34,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'k'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "k" }
       ]
     },
     {
       "opname" : "lgamma",
       "opcode" : 35,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "lgamma_r",
       "opcode" : 36,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'signp'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "signp" }
       ]
     },
     {
       "opname" : "log",
       "opcode" : 37,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "log2",
       "opcode" : 38,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "log10",
       "opcode" : 39,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "log1p",
       "opcode" : 40,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "logb",
       "opcode" : 41,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "mad",
       "opcode" : 42,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'a'" },
-        { "kind" : "IdRef", "name" : "'b'" },
-        { "kind" : "IdRef", "name" : "'c'" }
+        { "kind" : "IdRef", "name" : "a" },
+        { "kind" : "IdRef", "name" : "b" },
+        { "kind" : "IdRef", "name" : "c" }
       ]
     },
     {
       "opname" : "maxmag",
       "opcode" : 43,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "minmag",
       "opcode" : 44,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "modf",
       "opcode" : 45,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'iptr'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "iptr" }
       ]
     },
     {
       "opname" : "nan",
       "opcode" : 46,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'nancode'" }
+        { "kind" : "IdRef", "name" : "nancode" }
       ]
     },
     {
       "opname" : "nextafter",
       "opcode" : 47,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "pow",
       "opcode" : 48,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "pown",
       "opcode" : 49,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "powr",
       "opcode" : 50,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "remainder",
       "opcode" : 51,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "remquo",
       "opcode" : 52,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'quo'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "quo" }
       ]
     },
     {
       "opname" : "rint",
       "opcode" : 53,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "rootn",
       "opcode" : 54,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "round",
       "opcode" : 55,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "rsqrt",
       "opcode" : 56,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "sin",
       "opcode" : 57,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "sincos",
       "opcode" : 58,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'cosval'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "cosval" }
       ]
     },
     {
       "opname" : "sinh",
       "opcode" : 59,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "sinpi",
       "opcode" : 60,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "sqrt",
       "opcode" : 61,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "tan",
       "opcode" : 62,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "tanh",
       "opcode" : 63,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "tanpi",
       "opcode" : 64,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "tgamma",
       "opcode" : 65,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "trunc",
       "opcode" : 66,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_cos",
       "opcode" : 67,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_divide",
       "opcode" : 68,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "half_exp",
       "opcode" : 69,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_exp2",
       "opcode" : 70,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_exp10",
       "opcode" : 71,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_log",
       "opcode" : 72,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_log2",
       "opcode" : 73,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_log10",
       "opcode" : 74,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_powr",
       "opcode" : 75,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "half_recip",
       "opcode" : 76,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_rsqrt",
       "opcode" : 77,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_sin",
       "opcode" : 78,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_sqrt",
       "opcode" : 79,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "half_tan",
       "opcode" : 80,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_cos",
       "opcode" : 81,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_divide",
       "opcode" : 82,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "native_exp",
       "opcode" : 83,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_exp2",
       "opcode" : 84,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_exp10",
       "opcode" : 85,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_log",
       "opcode" : 86,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_log2",
       "opcode" : 87,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_log10",
       "opcode" : 88,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_powr",
       "opcode" : 89,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "native_recip",
       "opcode" : 90,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_rsqrt",
       "opcode" : 91,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_sin",
       "opcode" : 92,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_sqrt",
       "opcode" : 93,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "native_tan",
       "opcode" : 94,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "s_abs",
       "opcode" : 141,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "s_abs_diff",
       "opcode" : 142,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "s_add_sat",
       "opcode" : 143,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_add_sat",
       "opcode" : 144,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "s_hadd",
       "opcode" : 145,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_hadd",
       "opcode" : 146,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "s_rhadd",
       "opcode" : 147,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_rhadd",
       "opcode" : 148,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "s_clamp",
       "opcode" : 149,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'minval'" },
-        { "kind" : "IdRef", "name" : "'maxval'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "minval" },
+        { "kind" : "IdRef", "name" : "maxval" }
       ]
     },
     {
       "opname" : "u_clamp",
       "opcode" : 150,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'minval'" },
-        { "kind" : "IdRef", "name" : "'maxval'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "minval" },
+        { "kind" : "IdRef", "name" : "maxval" }
       ]
     },
     {
       "opname" : "clz",
       "opcode" : 151,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "ctz",
       "opcode" : 152,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "s_mad_hi",
       "opcode" : 153,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'a'" },
-        { "kind" : "IdRef", "name" : "'b'" },
-        { "kind" : "IdRef", "name" : "'c'" }
+        { "kind" : "IdRef", "name" : "a" },
+        { "kind" : "IdRef", "name" : "b" },
+        { "kind" : "IdRef", "name" : "c" }
       ]
     },
     {
       "opname" : "u_mad_sat",
       "opcode" : 154,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ]
     },
     {
       "opname" : "s_mad_sat",
       "opcode" : 155,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ]
     },
     {
       "opname" : "s_max",
       "opcode" : 156,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_max",
       "opcode" : 157,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "s_min",
       "opcode" : 158,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_min",
       "opcode" : 159,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "s_mul_hi",
       "opcode" : 160,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "rotate",
       "opcode" : 161,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'v'" },
-        { "kind" : "IdRef", "name" : "'i'" }
+        { "kind" : "IdRef", "name" : "v" },
+        { "kind" : "IdRef", "name" : "i" }
       ]
     },
     {
       "opname" : "s_sub_sat",
       "opcode" : 162,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_sub_sat",
       "opcode" : 163,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_upsample",
       "opcode" : 164,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'hi'" },
-        { "kind" : "IdRef", "name" : "'lo'" }
+        { "kind" : "IdRef", "name" : "hi" },
+        { "kind" : "IdRef", "name" : "lo" }
       ]
     },
     {
       "opname" : "s_upsample",
       "opcode" : 165,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'hi'" },
-        { "kind" : "IdRef", "name" : "'lo'" }
+        { "kind" : "IdRef", "name" : "hi" },
+        { "kind" : "IdRef", "name" : "lo" }
       ]
     },
     {
       "opname" : "popcount",
       "opcode" : 166,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "s_mad24",
       "opcode" : 167,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ]
     },
     {
       "opname" : "u_mad24",
       "opcode" : 168,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ]
     },
     {
       "opname" : "s_mul24",
       "opcode" : 169,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_mul24",
       "opcode" : 170,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_abs",
       "opcode" : 201,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "u_abs_diff",
       "opcode" : 202,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_mul_hi",
       "opcode" : 203,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "u_mad_hi",
       "opcode" : 204,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'a'" },
-        { "kind" : "IdRef", "name" : "'b'" },
-        { "kind" : "IdRef", "name" : "'c'" }
+        { "kind" : "IdRef", "name" : "a" },
+        { "kind" : "IdRef", "name" : "b" },
+        { "kind" : "IdRef", "name" : "c" }
       ]
     },
     {
       "opname" : "fclamp",
       "opcode" : 95,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'minval'" },
-        { "kind" : "IdRef", "name" : "'maxval'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "minval" },
+        { "kind" : "IdRef", "name" : "maxval" }
       ]
     },
     {
       "opname" : "degrees",
       "opcode" :96,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'radians'" }
+        { "kind" : "IdRef", "name" : "radians" }
       ]
     },
     {
       "opname" : "fmax_common",
       "opcode" : 97,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "fmin_common",
       "opcode" : 98,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" }
       ]
     },
     {
       "opname" : "mix",
       "opcode" : 99,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'a'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "a" }
       ]
     },
     {
       "opname" : "radians",
       "opcode" : 100,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'degrees'" }
+        { "kind" : "IdRef", "name" : "degrees" }
       ]
     },
     {
       "opname" : "step",
       "opcode" : 101,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'edge'" },
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "edge" },
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "smoothstep",
       "opcode" : 102,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'edge0'" },
-        { "kind" : "IdRef", "name" : "'edge1'" },
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "edge0" },
+        { "kind" : "IdRef", "name" : "edge1" },
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "sign",
       "opcode" : 103,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" }
+        { "kind" : "IdRef", "name" : "x" }
       ]
     },
     {
       "opname" : "cross",
       "opcode" : 104,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p0'" },
-        { "kind" : "IdRef", "name" : "'p1'" }
+        { "kind" : "IdRef", "name" : "p0" },
+        { "kind" : "IdRef", "name" : "p1" }
       ]
     },
     {
       "opname" : "distance",
       "opcode" : 105,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p0'" },
-        { "kind" : "IdRef", "name" : "'p1'" }
+        { "kind" : "IdRef", "name" : "p0" },
+        { "kind" : "IdRef", "name" : "p1" }
       ]
     },
     {
       "opname" : "length",
       "opcode" : 106,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "normalize",
       "opcode" : 107,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "fast_distance",
       "opcode" : 108,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p0'" },
-        { "kind" : "IdRef", "name" : "'p1'" }
+        { "kind" : "IdRef", "name" : "p0" },
+        { "kind" : "IdRef", "name" : "p1" }
       ]
     },
     {
       "opname" : "fast_length",
       "opcode" : 109,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "fast_normalize",
       "opcode" : 110,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "bitselect",
       "opcode" : 186,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'a'" },
-        { "kind" : "IdRef", "name" : "'b'" },
-        { "kind" : "IdRef", "name" : "'c'" }
+        { "kind" : "IdRef", "name" : "a" },
+        { "kind" : "IdRef", "name" : "b" },
+        { "kind" : "IdRef", "name" : "c" }
       ]
     },
     {
       "opname" : "select",
       "opcode" : 187,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'a'" },
-        { "kind" : "IdRef", "name" : "'b'" },
-        { "kind" : "IdRef", "name" : "'c'" }
+        { "kind" : "IdRef", "name" : "a" },
+        { "kind" : "IdRef", "name" : "b" },
+        { "kind" : "IdRef", "name" : "c" }
       ]
     },
     {
       "opname" : "vloadn",
       "opcode" : 171,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" },
-        { "kind" : "LiteralInteger", "name" : "'n'" }
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" },
+        { "kind" : "LiteralInteger", "name" : "n" }
       ]
     },
     {
       "opname" : "vstoren",
       "opcode" : 172,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'data'" },
-        { "kind" : "IdRef", "name" : "'offset'" },
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "data" },
+        { "kind" : "IdRef", "name" : "offset" },
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "vload_half",
       "opcode" : 173,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" }
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" }
       ]
     },
     {
       "opname" : "vload_halfn",
       "opcode" : 174,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" },
-        { "kind" : "LiteralInteger", "name" : "'n'" }
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" },
+        { "kind" : "LiteralInteger", "name" : "n" }
       ]
     },
     {
       "opname" : "vstore_half",
       "opcode" : 175,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'data'" },
-        { "kind" : "IdRef", "name" : "'offset'" },
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "data" },
+        { "kind" : "IdRef", "name" : "offset" },
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "vstore_half_r",
       "opcode" : 176,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'data'" },
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" },
-        { "kind" : "FPRoundingMode", "name" : "'mode'" }
+        { "kind" : "IdRef",          "name" : "data" },
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" },
+        { "kind" : "FPRoundingMode", "name" : "mode" }
       ]
     },
     {
       "opname" : "vstore_halfn",
       "opcode" : 177,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'data'" },
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" }
+        { "kind" : "IdRef",          "name" : "data" },
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" }
       ]
     },
     {
       "opname" : "vstore_halfn_r",
       "opcode" : 178,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'data'" },
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" },
-        { "kind" : "FPRoundingMode", "name" : "'mode'" }
+        { "kind" : "IdRef",          "name" : "data" },
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" },
+        { "kind" : "FPRoundingMode", "name" : "mode" }
       ]
     },
     {
       "opname" : "vloada_halfn",
       "opcode" : 179,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" },
-        { "kind" : "LiteralInteger", "name" : "'n'" }
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" },
+        { "kind" : "LiteralInteger", "name" : "n" }
       ]
     },
     {
       "opname" : "vstorea_halfn",
       "opcode" : 180,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'data'" },
-        { "kind" : "IdRef", "name" : "'offset'" },
-        { "kind" : "IdRef", "name" : "'p'" }
+        { "kind" : "IdRef", "name" : "data" },
+        { "kind" : "IdRef", "name" : "offset" },
+        { "kind" : "IdRef", "name" : "p" }
       ]
     },
     {
       "opname" : "vstorea_halfn_r",
       "opcode" : 181,
       "operands" : [
-        { "kind" : "IdRef",          "name" : "'data'" },
-        { "kind" : "IdRef",          "name" : "'offset'" },
-        { "kind" : "IdRef",          "name" : "'p'" },
-        { "kind" : "FPRoundingMode", "name" : "'mode'" }
+        { "kind" : "IdRef",          "name" : "data" },
+        { "kind" : "IdRef",          "name" : "offset" },
+        { "kind" : "IdRef",          "name" : "p" },
+        { "kind" : "FPRoundingMode", "name" : "mode" }
       ]
     },
     {
       "opname" : "shuffle",
       "opcode" : 182,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'shuffle mask'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "shuffle mask" }
       ]
     },
     {
       "opname" : "shuffle2",
       "opcode" : 183,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'shuffle mask'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "shuffle mask" }
       ]
     },
     {
       "opname" : "printf",
       "opcode" : 184,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'format'" },
-        { "kind" : "IdRef", "name" : "'additional arguments'", "quantifier" : "*" }
+        { "kind" : "IdRef", "name" : "format" },
+        { "kind" : "IdRef", "name" : "additional arguments", "quantifier" : "*" }
       ]
     },
     {
       "opname" : "prefetch",
       "opcode" : 185,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'ptr'" },
-        { "kind" : "IdRef", "name" : "'num elements'" }
+        { "kind" : "IdRef", "name" : "ptr" },
+        { "kind" : "IdRef", "name" : "num elements" }
       ]
     }
   ]

+ 2 - 2
3rdparty/spirv-headers/include/spirv/unified1/extinst.spv-amd-gcn-shader.grammar.json

@@ -5,7 +5,7 @@
       "opname" : "CubeFaceIndexAMD",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'P'" }
+        { "kind" : "IdRef", "name" : "P" }
       ],
       "extensions" : [ "SPV_AMD_gcn_shader" ]
     },
@@ -13,7 +13,7 @@
       "opname" : "CubeFaceCoordAMD",
       "opcode" : 2,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'P'" }
+        { "kind" : "IdRef", "name" : "P" }
       ],
       "extensions" : [ "SPV_AMD_gcn_shader" ]
     },

+ 8 - 8
3rdparty/spirv-headers/include/spirv/unified1/extinst.spv-amd-shader-ballot.grammar.json

@@ -5,8 +5,8 @@
       "opname" : "SwizzleInvocationsAMD",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'data'" },
-        { "kind" : "IdRef", "name" : "'offset'" }
+        { "kind" : "IdRef", "name" : "data" },
+        { "kind" : "IdRef", "name" : "offset" }
       ],
       "extensions" : [ "SPV_AMD_shader_ballot" ]
     },
@@ -14,8 +14,8 @@
       "opname" : "SwizzleInvocationsMaskedAMD",
       "opcode" : 2,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'data'" },
-        { "kind" : "IdRef", "name" : "'mask'" }
+        { "kind" : "IdRef", "name" : "data" },
+        { "kind" : "IdRef", "name" : "mask" }
       ],
       "extensions" : [ "SPV_AMD_shader_ballot" ]
     },
@@ -23,9 +23,9 @@
       "opname" : "WriteInvocationAMD",
       "opcode" : 3,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'inputValue'" },
-        { "kind" : "IdRef", "name" : "'writeValue'" },
-        { "kind" : "IdRef", "name" : "'invocationIndex'" }
+        { "kind" : "IdRef", "name" : "inputValue" },
+        { "kind" : "IdRef", "name" : "writeValue" },
+        { "kind" : "IdRef", "name" : "invocationIndex" }
       ],
       "extensions" : [ "SPV_AMD_shader_ballot" ]
     },
@@ -33,7 +33,7 @@
       "opname" : "MbcntAMD",
       "opcode" : 4,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'mask'" }
+        { "kind" : "IdRef", "name" : "mask" }
       ],
       "extensions" : [ "SPV_AMD_shader_ballot" ]
     }

+ 2 - 2
3rdparty/spirv-headers/include/spirv/unified1/extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json

@@ -5,8 +5,8 @@
       "opname" : "InterpolateAtVertexAMD",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'interpolant'" },
-        { "kind" : "IdRef", "name" : "'vertexIdx'" }
+        { "kind" : "IdRef", "name" : "interpolant" },
+        { "kind" : "IdRef", "name" : "vertexIdx" }
       ],
       "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ]
     }

+ 27 - 27
3rdparty/spirv-headers/include/spirv/unified1/extinst.spv-amd-shader-trinary-minmax.grammar.json

@@ -5,9 +5,9 @@
       "opname" : "FMin3AMD",
       "opcode" : 1,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -15,9 +15,9 @@
       "opname" : "UMin3AMD",
       "opcode" : 2,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -25,9 +25,9 @@
       "opname" : "SMin3AMD",
       "opcode" : 3,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -35,9 +35,9 @@
       "opname" : "FMax3AMD",
       "opcode" : 4,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -45,9 +45,9 @@
       "opname" : "UMax3AMD",
       "opcode" : 5,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -55,9 +55,9 @@
       "opname" : "SMax3AMD",
       "opcode" : 6,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -65,9 +65,9 @@
       "opname" : "FMid3AMD",
       "opcode" : 7,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -75,9 +75,9 @@
       "opname" : "UMid3AMD",
       "opcode" : 8,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     },
@@ -85,9 +85,9 @@
       "opname" : "SMid3AMD",
       "opcode" : 9,
       "operands" : [
-        { "kind" : "IdRef", "name" : "'x'" },
-        { "kind" : "IdRef", "name" : "'y'" },
-        { "kind" : "IdRef", "name" : "'z'" }
+        { "kind" : "IdRef", "name" : "x" },
+        { "kind" : "IdRef", "name" : "y" },
+        { "kind" : "IdRef", "name" : "z" }
       ],
       "extensions" : [ "SPV_AMD_shader_trinary_minmax" ]
     }

Разница между файлами не показана из-за своего большого размера
+ 167 - 167
3rdparty/spirv-headers/include/spirv/unified1/spirv.core.grammar.json


+ 65 - 0
3rdparty/spirv-headers/include/spirv/unified1/spirv.h

@@ -176,6 +176,8 @@ typedef enum SpvExecutionMode_ {
     SpvExecutionModeSignedZeroInfNanPreserve = 4461,
     SpvExecutionModeRoundingModeRTE = 4462,
     SpvExecutionModeRoundingModeRTZ = 4463,
+    SpvExecutionModeNonCoherentTileAttachmentReadQCOM = 4489,
+    SpvExecutionModeTileShadingRateQCOM = 4490,
     SpvExecutionModeEarlyAndLateFragmentTestsAMD = 5017,
     SpvExecutionModeStencilRefReplacingEXT = 5027,
     SpvExecutionModeCoalescingAMDX = 5069,
@@ -245,6 +247,7 @@ typedef enum SpvStorageClass_ {
     SpvStorageClassImage = 11,
     SpvStorageClassStorageBuffer = 12,
     SpvStorageClassTileImageEXT = 4172,
+    SpvStorageClassTileAttachmentQCOM = 4491,
     SpvStorageClassNodePayloadAMDX = 5068,
     SpvStorageClassCallableDataKHR = 5328,
     SpvStorageClassCallableDataNV = 5328,
@@ -383,9 +386,15 @@ typedef enum SpvImageChannelDataType_ {
     SpvImageChannelDataTypeFloat = 14,
     SpvImageChannelDataTypeUnormInt24 = 15,
     SpvImageChannelDataTypeUnormInt101010_2 = 16,
+    SpvImageChannelDataTypeUnormInt10X6EXT = 17,
     SpvImageChannelDataTypeUnsignedIntRaw10EXT = 19,
     SpvImageChannelDataTypeUnsignedIntRaw12EXT = 20,
     SpvImageChannelDataTypeUnormInt2_101010EXT = 21,
+    SpvImageChannelDataTypeUnsignedInt10X6EXT = 22,
+    SpvImageChannelDataTypeUnsignedInt12X4EXT = 23,
+    SpvImageChannelDataTypeUnsignedInt14X2EXT = 24,
+    SpvImageChannelDataTypeUnormInt12X4EXT = 25,
+    SpvImageChannelDataTypeUnormInt14X2EXT = 26,
     SpvImageChannelDataTypeMax = 0x7fffffff,
 } SpvImageChannelDataType;
 
@@ -717,6 +726,9 @@ typedef enum SpvBuiltIn_ {
     SpvBuiltInDeviceIndex = 4438,
     SpvBuiltInViewIndex = 4440,
     SpvBuiltInShadingRateKHR = 4444,
+    SpvBuiltInTileOffsetQCOM = 4492,
+    SpvBuiltInTileDimensionQCOM = 4493,
+    SpvBuiltInTileApronSizeQCOM = 4494,
     SpvBuiltInBaryCoordNoPerspAMD = 4992,
     SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993,
     SpvBuiltInBaryCoordNoPerspSampleAMD = 4994,
@@ -1103,6 +1115,7 @@ typedef enum SpvCapability_ {
     SpvCapabilityTextureSampleWeightedQCOM = 4484,
     SpvCapabilityTextureBoxFilterQCOM = 4485,
     SpvCapabilityTextureBlockMatchQCOM = 4486,
+    SpvCapabilityTileShadingQCOM = 4495,
     SpvCapabilityTextureBlockMatch2QCOM = 4498,
     SpvCapabilityFloat16ImageAMD = 5008,
     SpvCapabilityImageGatherBiasLodAMD = 5009,
@@ -1113,6 +1126,11 @@ typedef enum SpvCapability_ {
     SpvCapabilityShaderClockKHR = 5055,
     SpvCapabilityShaderEnqueueAMDX = 5067,
     SpvCapabilityQuadControlKHR = 5087,
+    SpvCapabilityInt4TypeINTEL = 5112,
+    SpvCapabilityInt4CooperativeMatrixINTEL = 5114,
+    SpvCapabilityBFloat16TypeKHR = 5116,
+    SpvCapabilityBFloat16DotProductKHR = 5117,
+    SpvCapabilityBFloat16CooperativeMatrixKHR = 5118,
     SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
     SpvCapabilityGeometryShaderPassthroughNV = 5251,
     SpvCapabilityShaderViewportIndexLayerEXT = 5254,
@@ -1261,6 +1279,7 @@ typedef enum SpvCapability_ {
     SpvCapabilityArithmeticFenceEXT = 6144,
     SpvCapabilityFPGAClusterAttributesV2INTEL = 6150,
     SpvCapabilityFPGAKernelAttributesv2INTEL = 6161,
+    SpvCapabilityTaskSequenceINTEL = 6162,
     SpvCapabilityFPMaxErrorINTEL = 6169,
     SpvCapabilityFPGALatencyControlINTEL = 6171,
     SpvCapabilityFPGAArgumentInterfacesINTEL = 6174,
@@ -1271,7 +1290,9 @@ typedef enum SpvCapability_ {
     SpvCapabilitySubgroup2DBlockTransformINTEL = 6229,
     SpvCapabilitySubgroup2DBlockTransposeINTEL = 6230,
     SpvCapabilitySubgroupMatrixMultiplyAccumulateINTEL = 6236,
+    SpvCapabilityTernaryBitwiseFunctionINTEL = 6241,
     SpvCapabilityGroupUniformArithmeticKHR = 6400,
+    SpvCapabilityTensorFloat32RoundingINTEL = 6425,
     SpvCapabilityMaskedGatherScatterINTEL = 6427,
     SpvCapabilityCacheControlsINTEL = 6441,
     SpvCapabilityRegisterLimitsINTEL = 6460,
@@ -1536,6 +1557,7 @@ typedef enum SpvRawAccessChainOperandsMask_ {
 } SpvRawAccessChainOperandsMask;
 
 typedef enum SpvFPEncoding_ {
+    SpvFPEncodingBFloat16KHR = 0,
     SpvFPEncodingMax = 0x7fffffff,
 } SpvFPEncoding;
 
@@ -2348,6 +2370,11 @@ typedef enum SpvOp_ {
     SpvOpControlBarrierArriveINTEL = 6142,
     SpvOpControlBarrierWaitINTEL = 6143,
     SpvOpArithmeticFenceEXT = 6145,
+    SpvOpTaskSequenceCreateINTEL = 6163,
+    SpvOpTaskSequenceAsyncINTEL = 6164,
+    SpvOpTaskSequenceGetINTEL = 6165,
+    SpvOpTaskSequenceReleaseINTEL = 6166,
+    SpvOpTypeTaskSequenceINTEL = 6199,
     SpvOpSubgroupBlockPrefetchINTEL = 6221,
     SpvOpSubgroup2DBlockLoadINTEL = 6231,
     SpvOpSubgroup2DBlockLoadTransformINTEL = 6232,
@@ -2355,6 +2382,7 @@ typedef enum SpvOp_ {
     SpvOpSubgroup2DBlockPrefetchINTEL = 6234,
     SpvOpSubgroup2DBlockStoreINTEL = 6235,
     SpvOpSubgroupMatrixMultiplyAccumulateINTEL = 6237,
+    SpvOpBitwiseFunctionINTEL = 6242,
     SpvOpGroupIMulKHR = 6401,
     SpvOpGroupFMulKHR = 6402,
     SpvOpGroupBitwiseAndKHR = 6403,
@@ -2363,6 +2391,7 @@ typedef enum SpvOp_ {
     SpvOpGroupLogicalAndKHR = 6406,
     SpvOpGroupLogicalOrKHR = 6407,
     SpvOpGroupLogicalXorKHR = 6408,
+    SpvOpRoundFToTF32INTEL = 6426,
     SpvOpMaskedGatherINTEL = 6428,
     SpvOpMaskedScatterINTEL = 6429,
     SpvOpMax = 0x7fffffff,
@@ -3146,6 +3175,11 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
     case SpvOpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break;
     case SpvOpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break;
     case SpvOpArithmeticFenceEXT: *hasResult = true; *hasResultType = true; break;
+    case SpvOpTaskSequenceCreateINTEL: *hasResult = true; *hasResultType = true; break;
+    case SpvOpTaskSequenceAsyncINTEL: *hasResult = false; *hasResultType = false; break;
+    case SpvOpTaskSequenceGetINTEL: *hasResult = true; *hasResultType = true; break;
+    case SpvOpTaskSequenceReleaseINTEL: *hasResult = false; *hasResultType = false; break;
+    case SpvOpTypeTaskSequenceINTEL: *hasResult = true; *hasResultType = false; break;
     case SpvOpSubgroupBlockPrefetchINTEL: *hasResult = false; *hasResultType = false; break;
     case SpvOpSubgroup2DBlockLoadINTEL: *hasResult = false; *hasResultType = false; break;
     case SpvOpSubgroup2DBlockLoadTransformINTEL: *hasResult = false; *hasResultType = false; break;
@@ -3153,6 +3187,7 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
     case SpvOpSubgroup2DBlockPrefetchINTEL: *hasResult = false; *hasResultType = false; break;
     case SpvOpSubgroup2DBlockStoreINTEL: *hasResult = false; *hasResultType = false; break;
     case SpvOpSubgroupMatrixMultiplyAccumulateINTEL: *hasResult = true; *hasResultType = true; break;
+    case SpvOpBitwiseFunctionINTEL: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupIMulKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupFMulKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break;
@@ -3161,6 +3196,7 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
     case SpvOpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break;
     case SpvOpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break;
+    case SpvOpRoundFToTF32INTEL: *hasResult = true; *hasResultType = true; break;
     case SpvOpMaskedGatherINTEL: *hasResult = true; *hasResultType = true; break;
     case SpvOpMaskedScatterINTEL: *hasResult = false; *hasResultType = false; break;
     }
@@ -3278,6 +3314,8 @@ inline const char* SpvExecutionModeToString(SpvExecutionMode value) {
     case SpvExecutionModeSignedZeroInfNanPreserve: return "SignedZeroInfNanPreserve";
     case SpvExecutionModeRoundingModeRTE: return "RoundingModeRTE";
     case SpvExecutionModeRoundingModeRTZ: return "RoundingModeRTZ";
+    case SpvExecutionModeNonCoherentTileAttachmentReadQCOM: return "NonCoherentTileAttachmentReadQCOM";
+    case SpvExecutionModeTileShadingRateQCOM: return "TileShadingRateQCOM";
     case SpvExecutionModeEarlyAndLateFragmentTestsAMD: return "EarlyAndLateFragmentTestsAMD";
     case SpvExecutionModeStencilRefReplacingEXT: return "StencilRefReplacingEXT";
     case SpvExecutionModeCoalescingAMDX: return "CoalescingAMDX";
@@ -3344,6 +3382,7 @@ inline const char* SpvStorageClassToString(SpvStorageClass value) {
     case SpvStorageClassImage: return "Image";
     case SpvStorageClassStorageBuffer: return "StorageBuffer";
     case SpvStorageClassTileImageEXT: return "TileImageEXT";
+    case SpvStorageClassTileAttachmentQCOM: return "TileAttachmentQCOM";
     case SpvStorageClassNodePayloadAMDX: return "NodePayloadAMDX";
     case SpvStorageClassCallableDataKHR: return "CallableDataKHR";
     case SpvStorageClassIncomingCallableDataKHR: return "IncomingCallableDataKHR";
@@ -3487,9 +3526,15 @@ inline const char* SpvImageChannelDataTypeToString(SpvImageChannelDataType value
     case SpvImageChannelDataTypeFloat: return "Float";
     case SpvImageChannelDataTypeUnormInt24: return "UnormInt24";
     case SpvImageChannelDataTypeUnormInt101010_2: return "UnormInt101010_2";
+    case SpvImageChannelDataTypeUnormInt10X6EXT: return "UnormInt10X6EXT";
     case SpvImageChannelDataTypeUnsignedIntRaw10EXT: return "UnsignedIntRaw10EXT";
     case SpvImageChannelDataTypeUnsignedIntRaw12EXT: return "UnsignedIntRaw12EXT";
     case SpvImageChannelDataTypeUnormInt2_101010EXT: return "UnormInt2_101010EXT";
+    case SpvImageChannelDataTypeUnsignedInt10X6EXT: return "UnsignedInt10X6EXT";
+    case SpvImageChannelDataTypeUnsignedInt12X4EXT: return "UnsignedInt12X4EXT";
+    case SpvImageChannelDataTypeUnsignedInt14X2EXT: return "UnsignedInt14X2EXT";
+    case SpvImageChannelDataTypeUnormInt12X4EXT: return "UnormInt12X4EXT";
+    case SpvImageChannelDataTypeUnormInt14X2EXT: return "UnormInt14X2EXT";
     default: return "Unknown";
     }
 }
@@ -3745,6 +3790,9 @@ inline const char* SpvBuiltInToString(SpvBuiltIn value) {
     case SpvBuiltInDeviceIndex: return "DeviceIndex";
     case SpvBuiltInViewIndex: return "ViewIndex";
     case SpvBuiltInShadingRateKHR: return "ShadingRateKHR";
+    case SpvBuiltInTileOffsetQCOM: return "TileOffsetQCOM";
+    case SpvBuiltInTileDimensionQCOM: return "TileDimensionQCOM";
+    case SpvBuiltInTileApronSizeQCOM: return "TileApronSizeQCOM";
     case SpvBuiltInBaryCoordNoPerspAMD: return "BaryCoordNoPerspAMD";
     case SpvBuiltInBaryCoordNoPerspCentroidAMD: return "BaryCoordNoPerspCentroidAMD";
     case SpvBuiltInBaryCoordNoPerspSampleAMD: return "BaryCoordNoPerspSampleAMD";
@@ -3959,6 +4007,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
     case SpvCapabilityTextureSampleWeightedQCOM: return "TextureSampleWeightedQCOM";
     case SpvCapabilityTextureBoxFilterQCOM: return "TextureBoxFilterQCOM";
     case SpvCapabilityTextureBlockMatchQCOM: return "TextureBlockMatchQCOM";
+    case SpvCapabilityTileShadingQCOM: return "TileShadingQCOM";
     case SpvCapabilityTextureBlockMatch2QCOM: return "TextureBlockMatch2QCOM";
     case SpvCapabilityFloat16ImageAMD: return "Float16ImageAMD";
     case SpvCapabilityImageGatherBiasLodAMD: return "ImageGatherBiasLodAMD";
@@ -3969,6 +4018,11 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
     case SpvCapabilityShaderClockKHR: return "ShaderClockKHR";
     case SpvCapabilityShaderEnqueueAMDX: return "ShaderEnqueueAMDX";
     case SpvCapabilityQuadControlKHR: return "QuadControlKHR";
+    case SpvCapabilityInt4TypeINTEL: return "Int4TypeINTEL";
+    case SpvCapabilityInt4CooperativeMatrixINTEL: return "Int4CooperativeMatrixINTEL";
+    case SpvCapabilityBFloat16TypeKHR: return "BFloat16TypeKHR";
+    case SpvCapabilityBFloat16DotProductKHR: return "BFloat16DotProductKHR";
+    case SpvCapabilityBFloat16CooperativeMatrixKHR: return "BFloat16CooperativeMatrixKHR";
     case SpvCapabilitySampleMaskOverrideCoverageNV: return "SampleMaskOverrideCoverageNV";
     case SpvCapabilityGeometryShaderPassthroughNV: return "GeometryShaderPassthroughNV";
     case SpvCapabilityShaderViewportIndexLayerEXT: return "ShaderViewportIndexLayerEXT";
@@ -4091,6 +4145,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
     case SpvCapabilityArithmeticFenceEXT: return "ArithmeticFenceEXT";
     case SpvCapabilityFPGAClusterAttributesV2INTEL: return "FPGAClusterAttributesV2INTEL";
     case SpvCapabilityFPGAKernelAttributesv2INTEL: return "FPGAKernelAttributesv2INTEL";
+    case SpvCapabilityTaskSequenceINTEL: return "TaskSequenceINTEL";
     case SpvCapabilityFPMaxErrorINTEL: return "FPMaxErrorINTEL";
     case SpvCapabilityFPGALatencyControlINTEL: return "FPGALatencyControlINTEL";
     case SpvCapabilityFPGAArgumentInterfacesINTEL: return "FPGAArgumentInterfacesINTEL";
@@ -4101,7 +4156,9 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
     case SpvCapabilitySubgroup2DBlockTransformINTEL: return "Subgroup2DBlockTransformINTEL";
     case SpvCapabilitySubgroup2DBlockTransposeINTEL: return "Subgroup2DBlockTransposeINTEL";
     case SpvCapabilitySubgroupMatrixMultiplyAccumulateINTEL: return "SubgroupMatrixMultiplyAccumulateINTEL";
+    case SpvCapabilityTernaryBitwiseFunctionINTEL: return "TernaryBitwiseFunctionINTEL";
     case SpvCapabilityGroupUniformArithmeticKHR: return "GroupUniformArithmeticKHR";
+    case SpvCapabilityTensorFloat32RoundingINTEL: return "TensorFloat32RoundingINTEL";
     case SpvCapabilityMaskedGatherScatterINTEL: return "MaskedGatherScatterINTEL";
     case SpvCapabilityCacheControlsINTEL: return "CacheControlsINTEL";
     case SpvCapabilityRegisterLimitsINTEL: return "RegisterLimitsINTEL";
@@ -4259,6 +4316,7 @@ inline const char* SpvNamedMaximumNumberOfRegistersToString(SpvNamedMaximumNumbe
 
 inline const char* SpvFPEncodingToString(SpvFPEncoding value) {
     switch (value) {
+    case SpvFPEncodingBFloat16KHR: return "BFloat16KHR";
     default: return "Unknown";
     }
 }
@@ -5066,6 +5124,11 @@ inline const char* SpvOpToString(SpvOp value) {
     case SpvOpControlBarrierArriveINTEL: return "OpControlBarrierArriveINTEL";
     case SpvOpControlBarrierWaitINTEL: return "OpControlBarrierWaitINTEL";
     case SpvOpArithmeticFenceEXT: return "OpArithmeticFenceEXT";
+    case SpvOpTaskSequenceCreateINTEL: return "OpTaskSequenceCreateINTEL";
+    case SpvOpTaskSequenceAsyncINTEL: return "OpTaskSequenceAsyncINTEL";
+    case SpvOpTaskSequenceGetINTEL: return "OpTaskSequenceGetINTEL";
+    case SpvOpTaskSequenceReleaseINTEL: return "OpTaskSequenceReleaseINTEL";
+    case SpvOpTypeTaskSequenceINTEL: return "OpTypeTaskSequenceINTEL";
     case SpvOpSubgroupBlockPrefetchINTEL: return "OpSubgroupBlockPrefetchINTEL";
     case SpvOpSubgroup2DBlockLoadINTEL: return "OpSubgroup2DBlockLoadINTEL";
     case SpvOpSubgroup2DBlockLoadTransformINTEL: return "OpSubgroup2DBlockLoadTransformINTEL";
@@ -5073,6 +5136,7 @@ inline const char* SpvOpToString(SpvOp value) {
     case SpvOpSubgroup2DBlockPrefetchINTEL: return "OpSubgroup2DBlockPrefetchINTEL";
     case SpvOpSubgroup2DBlockStoreINTEL: return "OpSubgroup2DBlockStoreINTEL";
     case SpvOpSubgroupMatrixMultiplyAccumulateINTEL: return "OpSubgroupMatrixMultiplyAccumulateINTEL";
+    case SpvOpBitwiseFunctionINTEL: return "OpBitwiseFunctionINTEL";
     case SpvOpGroupIMulKHR: return "OpGroupIMulKHR";
     case SpvOpGroupFMulKHR: return "OpGroupFMulKHR";
     case SpvOpGroupBitwiseAndKHR: return "OpGroupBitwiseAndKHR";
@@ -5081,6 +5145,7 @@ inline const char* SpvOpToString(SpvOp value) {
     case SpvOpGroupLogicalAndKHR: return "OpGroupLogicalAndKHR";
     case SpvOpGroupLogicalOrKHR: return "OpGroupLogicalOrKHR";
     case SpvOpGroupLogicalXorKHR: return "OpGroupLogicalXorKHR";
+    case SpvOpRoundFToTF32INTEL: return "OpRoundFToTF32INTEL";
     case SpvOpMaskedGatherINTEL: return "OpMaskedGatherINTEL";
     case SpvOpMaskedScatterINTEL: return "OpMaskedScatterINTEL";
     default: return "Unknown";

+ 65 - 0
3rdparty/spirv-headers/include/spirv/unified1/spirv.hpp11

@@ -172,6 +172,8 @@ enum class ExecutionMode : unsigned {
     SignedZeroInfNanPreserve = 4461,
     RoundingModeRTE = 4462,
     RoundingModeRTZ = 4463,
+    NonCoherentTileAttachmentReadQCOM = 4489,
+    TileShadingRateQCOM = 4490,
     EarlyAndLateFragmentTestsAMD = 5017,
     StencilRefReplacingEXT = 5027,
     CoalescingAMDX = 5069,
@@ -241,6 +243,7 @@ enum class StorageClass : unsigned {
     Image = 11,
     StorageBuffer = 12,
     TileImageEXT = 4172,
+    TileAttachmentQCOM = 4491,
     NodePayloadAMDX = 5068,
     CallableDataKHR = 5328,
     CallableDataNV = 5328,
@@ -379,9 +382,15 @@ enum class ImageChannelDataType : unsigned {
     Float = 14,
     UnormInt24 = 15,
     UnormInt101010_2 = 16,
+    UnormInt10X6EXT = 17,
     UnsignedIntRaw10EXT = 19,
     UnsignedIntRaw12EXT = 20,
     UnormInt2_101010EXT = 21,
+    UnsignedInt10X6EXT = 22,
+    UnsignedInt12X4EXT = 23,
+    UnsignedInt14X2EXT = 24,
+    UnormInt12X4EXT = 25,
+    UnormInt14X2EXT = 26,
     Max = 0x7fffffff,
 };
 
@@ -713,6 +722,9 @@ enum class BuiltIn : unsigned {
     DeviceIndex = 4438,
     ViewIndex = 4440,
     ShadingRateKHR = 4444,
+    TileOffsetQCOM = 4492,
+    TileDimensionQCOM = 4493,
+    TileApronSizeQCOM = 4494,
     BaryCoordNoPerspAMD = 4992,
     BaryCoordNoPerspCentroidAMD = 4993,
     BaryCoordNoPerspSampleAMD = 4994,
@@ -1099,6 +1111,7 @@ enum class Capability : unsigned {
     TextureSampleWeightedQCOM = 4484,
     TextureBoxFilterQCOM = 4485,
     TextureBlockMatchQCOM = 4486,
+    TileShadingQCOM = 4495,
     TextureBlockMatch2QCOM = 4498,
     Float16ImageAMD = 5008,
     ImageGatherBiasLodAMD = 5009,
@@ -1109,6 +1122,11 @@ enum class Capability : unsigned {
     ShaderClockKHR = 5055,
     ShaderEnqueueAMDX = 5067,
     QuadControlKHR = 5087,
+    Int4TypeINTEL = 5112,
+    Int4CooperativeMatrixINTEL = 5114,
+    BFloat16TypeKHR = 5116,
+    BFloat16DotProductKHR = 5117,
+    BFloat16CooperativeMatrixKHR = 5118,
     SampleMaskOverrideCoverageNV = 5249,
     GeometryShaderPassthroughNV = 5251,
     ShaderViewportIndexLayerEXT = 5254,
@@ -1257,6 +1275,7 @@ enum class Capability : unsigned {
     ArithmeticFenceEXT = 6144,
     FPGAClusterAttributesV2INTEL = 6150,
     FPGAKernelAttributesv2INTEL = 6161,
+    TaskSequenceINTEL = 6162,
     FPMaxErrorINTEL = 6169,
     FPGALatencyControlINTEL = 6171,
     FPGAArgumentInterfacesINTEL = 6174,
@@ -1267,7 +1286,9 @@ enum class Capability : unsigned {
     Subgroup2DBlockTransformINTEL = 6229,
     Subgroup2DBlockTransposeINTEL = 6230,
     SubgroupMatrixMultiplyAccumulateINTEL = 6236,
+    TernaryBitwiseFunctionINTEL = 6241,
     GroupUniformArithmeticKHR = 6400,
+    TensorFloat32RoundingINTEL = 6425,
     MaskedGatherScatterINTEL = 6427,
     CacheControlsINTEL = 6441,
     RegisterLimitsINTEL = 6460,
@@ -1532,6 +1553,7 @@ enum class RawAccessChainOperandsMask : unsigned {
 };
 
 enum class FPEncoding : unsigned {
+    BFloat16KHR = 0,
     Max = 0x7fffffff,
 };
 
@@ -2344,6 +2366,11 @@ enum class Op : unsigned {
     OpControlBarrierArriveINTEL = 6142,
     OpControlBarrierWaitINTEL = 6143,
     OpArithmeticFenceEXT = 6145,
+    OpTaskSequenceCreateINTEL = 6163,
+    OpTaskSequenceAsyncINTEL = 6164,
+    OpTaskSequenceGetINTEL = 6165,
+    OpTaskSequenceReleaseINTEL = 6166,
+    OpTypeTaskSequenceINTEL = 6199,
     OpSubgroupBlockPrefetchINTEL = 6221,
     OpSubgroup2DBlockLoadINTEL = 6231,
     OpSubgroup2DBlockLoadTransformINTEL = 6232,
@@ -2351,6 +2378,7 @@ enum class Op : unsigned {
     OpSubgroup2DBlockPrefetchINTEL = 6234,
     OpSubgroup2DBlockStoreINTEL = 6235,
     OpSubgroupMatrixMultiplyAccumulateINTEL = 6237,
+    OpBitwiseFunctionINTEL = 6242,
     OpGroupIMulKHR = 6401,
     OpGroupFMulKHR = 6402,
     OpGroupBitwiseAndKHR = 6403,
@@ -2359,6 +2387,7 @@ enum class Op : unsigned {
     OpGroupLogicalAndKHR = 6406,
     OpGroupLogicalOrKHR = 6407,
     OpGroupLogicalXorKHR = 6408,
+    OpRoundFToTF32INTEL = 6426,
     OpMaskedGatherINTEL = 6428,
     OpMaskedScatterINTEL = 6429,
     Max = 0x7fffffff,
@@ -3142,6 +3171,11 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
     case Op::OpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break;
     case Op::OpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break;
     case Op::OpArithmeticFenceEXT: *hasResult = true; *hasResultType = true; break;
+    case Op::OpTaskSequenceCreateINTEL: *hasResult = true; *hasResultType = true; break;
+    case Op::OpTaskSequenceAsyncINTEL: *hasResult = false; *hasResultType = false; break;
+    case Op::OpTaskSequenceGetINTEL: *hasResult = true; *hasResultType = true; break;
+    case Op::OpTaskSequenceReleaseINTEL: *hasResult = false; *hasResultType = false; break;
+    case Op::OpTypeTaskSequenceINTEL: *hasResult = true; *hasResultType = false; break;
     case Op::OpSubgroupBlockPrefetchINTEL: *hasResult = false; *hasResultType = false; break;
     case Op::OpSubgroup2DBlockLoadINTEL: *hasResult = false; *hasResultType = false; break;
     case Op::OpSubgroup2DBlockLoadTransformINTEL: *hasResult = false; *hasResultType = false; break;
@@ -3149,6 +3183,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
     case Op::OpSubgroup2DBlockPrefetchINTEL: *hasResult = false; *hasResultType = false; break;
     case Op::OpSubgroup2DBlockStoreINTEL: *hasResult = false; *hasResultType = false; break;
     case Op::OpSubgroupMatrixMultiplyAccumulateINTEL: *hasResult = true; *hasResultType = true; break;
+    case Op::OpBitwiseFunctionINTEL: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupIMulKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupFMulKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break;
@@ -3157,6 +3192,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
     case Op::OpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break;
     case Op::OpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break;
+    case Op::OpRoundFToTF32INTEL: *hasResult = true; *hasResultType = true; break;
     case Op::OpMaskedGatherINTEL: *hasResult = true; *hasResultType = true; break;
     case Op::OpMaskedScatterINTEL: *hasResult = false; *hasResultType = false; break;
     }
@@ -3274,6 +3310,8 @@ inline const char* ExecutionModeToString(ExecutionMode value) {
     case ExecutionMode::SignedZeroInfNanPreserve: return "SignedZeroInfNanPreserve";
     case ExecutionMode::RoundingModeRTE: return "RoundingModeRTE";
     case ExecutionMode::RoundingModeRTZ: return "RoundingModeRTZ";
+    case ExecutionMode::NonCoherentTileAttachmentReadQCOM: return "NonCoherentTileAttachmentReadQCOM";
+    case ExecutionMode::TileShadingRateQCOM: return "TileShadingRateQCOM";
     case ExecutionMode::EarlyAndLateFragmentTestsAMD: return "EarlyAndLateFragmentTestsAMD";
     case ExecutionMode::StencilRefReplacingEXT: return "StencilRefReplacingEXT";
     case ExecutionMode::CoalescingAMDX: return "CoalescingAMDX";
@@ -3340,6 +3378,7 @@ inline const char* StorageClassToString(StorageClass value) {
     case StorageClass::Image: return "Image";
     case StorageClass::StorageBuffer: return "StorageBuffer";
     case StorageClass::TileImageEXT: return "TileImageEXT";
+    case StorageClass::TileAttachmentQCOM: return "TileAttachmentQCOM";
     case StorageClass::NodePayloadAMDX: return "NodePayloadAMDX";
     case StorageClass::CallableDataKHR: return "CallableDataKHR";
     case StorageClass::IncomingCallableDataKHR: return "IncomingCallableDataKHR";
@@ -3483,9 +3522,15 @@ inline const char* ImageChannelDataTypeToString(ImageChannelDataType value) {
     case ImageChannelDataType::Float: return "Float";
     case ImageChannelDataType::UnormInt24: return "UnormInt24";
     case ImageChannelDataType::UnormInt101010_2: return "UnormInt101010_2";
+    case ImageChannelDataType::UnormInt10X6EXT: return "UnormInt10X6EXT";
     case ImageChannelDataType::UnsignedIntRaw10EXT: return "UnsignedIntRaw10EXT";
     case ImageChannelDataType::UnsignedIntRaw12EXT: return "UnsignedIntRaw12EXT";
     case ImageChannelDataType::UnormInt2_101010EXT: return "UnormInt2_101010EXT";
+    case ImageChannelDataType::UnsignedInt10X6EXT: return "UnsignedInt10X6EXT";
+    case ImageChannelDataType::UnsignedInt12X4EXT: return "UnsignedInt12X4EXT";
+    case ImageChannelDataType::UnsignedInt14X2EXT: return "UnsignedInt14X2EXT";
+    case ImageChannelDataType::UnormInt12X4EXT: return "UnormInt12X4EXT";
+    case ImageChannelDataType::UnormInt14X2EXT: return "UnormInt14X2EXT";
     default: return "Unknown";
     }
 }
@@ -3741,6 +3786,9 @@ inline const char* BuiltInToString(BuiltIn value) {
     case BuiltIn::DeviceIndex: return "DeviceIndex";
     case BuiltIn::ViewIndex: return "ViewIndex";
     case BuiltIn::ShadingRateKHR: return "ShadingRateKHR";
+    case BuiltIn::TileOffsetQCOM: return "TileOffsetQCOM";
+    case BuiltIn::TileDimensionQCOM: return "TileDimensionQCOM";
+    case BuiltIn::TileApronSizeQCOM: return "TileApronSizeQCOM";
     case BuiltIn::BaryCoordNoPerspAMD: return "BaryCoordNoPerspAMD";
     case BuiltIn::BaryCoordNoPerspCentroidAMD: return "BaryCoordNoPerspCentroidAMD";
     case BuiltIn::BaryCoordNoPerspSampleAMD: return "BaryCoordNoPerspSampleAMD";
@@ -3955,6 +4003,7 @@ inline const char* CapabilityToString(Capability value) {
     case Capability::TextureSampleWeightedQCOM: return "TextureSampleWeightedQCOM";
     case Capability::TextureBoxFilterQCOM: return "TextureBoxFilterQCOM";
     case Capability::TextureBlockMatchQCOM: return "TextureBlockMatchQCOM";
+    case Capability::TileShadingQCOM: return "TileShadingQCOM";
     case Capability::TextureBlockMatch2QCOM: return "TextureBlockMatch2QCOM";
     case Capability::Float16ImageAMD: return "Float16ImageAMD";
     case Capability::ImageGatherBiasLodAMD: return "ImageGatherBiasLodAMD";
@@ -3965,6 +4014,11 @@ inline const char* CapabilityToString(Capability value) {
     case Capability::ShaderClockKHR: return "ShaderClockKHR";
     case Capability::ShaderEnqueueAMDX: return "ShaderEnqueueAMDX";
     case Capability::QuadControlKHR: return "QuadControlKHR";
+    case Capability::Int4TypeINTEL: return "Int4TypeINTEL";
+    case Capability::Int4CooperativeMatrixINTEL: return "Int4CooperativeMatrixINTEL";
+    case Capability::BFloat16TypeKHR: return "BFloat16TypeKHR";
+    case Capability::BFloat16DotProductKHR: return "BFloat16DotProductKHR";
+    case Capability::BFloat16CooperativeMatrixKHR: return "BFloat16CooperativeMatrixKHR";
     case Capability::SampleMaskOverrideCoverageNV: return "SampleMaskOverrideCoverageNV";
     case Capability::GeometryShaderPassthroughNV: return "GeometryShaderPassthroughNV";
     case Capability::ShaderViewportIndexLayerEXT: return "ShaderViewportIndexLayerEXT";
@@ -4087,6 +4141,7 @@ inline const char* CapabilityToString(Capability value) {
     case Capability::ArithmeticFenceEXT: return "ArithmeticFenceEXT";
     case Capability::FPGAClusterAttributesV2INTEL: return "FPGAClusterAttributesV2INTEL";
     case Capability::FPGAKernelAttributesv2INTEL: return "FPGAKernelAttributesv2INTEL";
+    case Capability::TaskSequenceINTEL: return "TaskSequenceINTEL";
     case Capability::FPMaxErrorINTEL: return "FPMaxErrorINTEL";
     case Capability::FPGALatencyControlINTEL: return "FPGALatencyControlINTEL";
     case Capability::FPGAArgumentInterfacesINTEL: return "FPGAArgumentInterfacesINTEL";
@@ -4097,7 +4152,9 @@ inline const char* CapabilityToString(Capability value) {
     case Capability::Subgroup2DBlockTransformINTEL: return "Subgroup2DBlockTransformINTEL";
     case Capability::Subgroup2DBlockTransposeINTEL: return "Subgroup2DBlockTransposeINTEL";
     case Capability::SubgroupMatrixMultiplyAccumulateINTEL: return "SubgroupMatrixMultiplyAccumulateINTEL";
+    case Capability::TernaryBitwiseFunctionINTEL: return "TernaryBitwiseFunctionINTEL";
     case Capability::GroupUniformArithmeticKHR: return "GroupUniformArithmeticKHR";
+    case Capability::TensorFloat32RoundingINTEL: return "TensorFloat32RoundingINTEL";
     case Capability::MaskedGatherScatterINTEL: return "MaskedGatherScatterINTEL";
     case Capability::CacheControlsINTEL: return "CacheControlsINTEL";
     case Capability::RegisterLimitsINTEL: return "RegisterLimitsINTEL";
@@ -4255,6 +4312,7 @@ inline const char* NamedMaximumNumberOfRegistersToString(NamedMaximumNumberOfReg
 
 inline const char* FPEncodingToString(FPEncoding value) {
     switch (value) {
+    case FPEncoding::BFloat16KHR: return "BFloat16KHR";
     default: return "Unknown";
     }
 }
@@ -5062,6 +5120,11 @@ inline const char* OpToString(Op value) {
     case Op::OpControlBarrierArriveINTEL: return "OpControlBarrierArriveINTEL";
     case Op::OpControlBarrierWaitINTEL: return "OpControlBarrierWaitINTEL";
     case Op::OpArithmeticFenceEXT: return "OpArithmeticFenceEXT";
+    case Op::OpTaskSequenceCreateINTEL: return "OpTaskSequenceCreateINTEL";
+    case Op::OpTaskSequenceAsyncINTEL: return "OpTaskSequenceAsyncINTEL";
+    case Op::OpTaskSequenceGetINTEL: return "OpTaskSequenceGetINTEL";
+    case Op::OpTaskSequenceReleaseINTEL: return "OpTaskSequenceReleaseINTEL";
+    case Op::OpTypeTaskSequenceINTEL: return "OpTypeTaskSequenceINTEL";
     case Op::OpSubgroupBlockPrefetchINTEL: return "OpSubgroupBlockPrefetchINTEL";
     case Op::OpSubgroup2DBlockLoadINTEL: return "OpSubgroup2DBlockLoadINTEL";
     case Op::OpSubgroup2DBlockLoadTransformINTEL: return "OpSubgroup2DBlockLoadTransformINTEL";
@@ -5069,6 +5132,7 @@ inline const char* OpToString(Op value) {
     case Op::OpSubgroup2DBlockPrefetchINTEL: return "OpSubgroup2DBlockPrefetchINTEL";
     case Op::OpSubgroup2DBlockStoreINTEL: return "OpSubgroup2DBlockStoreINTEL";
     case Op::OpSubgroupMatrixMultiplyAccumulateINTEL: return "OpSubgroupMatrixMultiplyAccumulateINTEL";
+    case Op::OpBitwiseFunctionINTEL: return "OpBitwiseFunctionINTEL";
     case Op::OpGroupIMulKHR: return "OpGroupIMulKHR";
     case Op::OpGroupFMulKHR: return "OpGroupFMulKHR";
     case Op::OpGroupBitwiseAndKHR: return "OpGroupBitwiseAndKHR";
@@ -5077,6 +5141,7 @@ inline const char* OpToString(Op value) {
     case Op::OpGroupLogicalAndKHR: return "OpGroupLogicalAndKHR";
     case Op::OpGroupLogicalOrKHR: return "OpGroupLogicalOrKHR";
     case Op::OpGroupLogicalXorKHR: return "OpGroupLogicalXorKHR";
+    case Op::OpRoundFToTF32INTEL: return "OpRoundFToTF32INTEL";
     case Op::OpMaskedGatherINTEL: return "OpMaskedGatherINTEL";
     case Op::OpMaskedScatterINTEL: return "OpMaskedScatterINTEL";
     default: return "Unknown";

+ 30 - 1
3rdparty/spirv-headers/include/spirv/unified1/spirv.json

@@ -191,6 +191,8 @@
                     "SignedZeroInfNanPreserve": 4461,
                     "RoundingModeRTE": 4462,
                     "RoundingModeRTZ": 4463,
+                    "NonCoherentTileAttachmentReadQCOM": 4489,
+                    "TileShadingRateQCOM": 4490,
                     "EarlyAndLateFragmentTestsAMD": 5017,
                     "StencilRefReplacingEXT": 5027,
                     "CoalescingAMDX": 5069,
@@ -263,6 +265,7 @@
                     "Image": 11,
                     "StorageBuffer": 12,
                     "TileImageEXT": 4172,
+                    "TileAttachmentQCOM": 4491,
                     "NodePayloadAMDX": 5068,
                     "CallableDataKHR": 5328,
                     "CallableDataNV": 5328,
@@ -419,9 +422,15 @@
                     "Float": 14,
                     "UnormInt24": 15,
                     "UnormInt101010_2": 16,
+                    "UnormInt10X6EXT": 17,
                     "UnsignedIntRaw10EXT": 19,
                     "UnsignedIntRaw12EXT": 20,
-                    "UnormInt2_101010EXT": 21
+                    "UnormInt2_101010EXT": 21,
+                    "UnsignedInt10X6EXT": 22,
+                    "UnsignedInt12X4EXT": 23,
+                    "UnsignedInt14X2EXT": 24,
+                    "UnormInt12X4EXT": 25,
+                    "UnormInt14X2EXT": 26
                 }
             },
             {
@@ -739,6 +748,9 @@
                     "DeviceIndex": 4438,
                     "ViewIndex": 4440,
                     "ShadingRateKHR": 4444,
+                    "TileOffsetQCOM": 4492,
+                    "TileDimensionQCOM": 4493,
+                    "TileApronSizeQCOM": 4494,
                     "BaryCoordNoPerspAMD": 4992,
                     "BaryCoordNoPerspCentroidAMD": 4993,
                     "BaryCoordNoPerspSampleAMD": 4994,
@@ -1075,6 +1087,7 @@
                     "TextureSampleWeightedQCOM": 4484,
                     "TextureBoxFilterQCOM": 4485,
                     "TextureBlockMatchQCOM": 4486,
+                    "TileShadingQCOM": 4495,
                     "TextureBlockMatch2QCOM": 4498,
                     "Float16ImageAMD": 5008,
                     "ImageGatherBiasLodAMD": 5009,
@@ -1085,6 +1098,11 @@
                     "ShaderClockKHR": 5055,
                     "ShaderEnqueueAMDX": 5067,
                     "QuadControlKHR": 5087,
+                    "Int4TypeINTEL": 5112,
+                    "Int4CooperativeMatrixINTEL": 5114,
+                    "BFloat16TypeKHR": 5116,
+                    "BFloat16DotProductKHR": 5117,
+                    "BFloat16CooperativeMatrixKHR": 5118,
                     "SampleMaskOverrideCoverageNV": 5249,
                     "GeometryShaderPassthroughNV": 5251,
                     "ShaderViewportIndexLayerEXT": 5254,
@@ -1233,6 +1251,7 @@
                     "ArithmeticFenceEXT": 6144,
                     "FPGAClusterAttributesV2INTEL": 6150,
                     "FPGAKernelAttributesv2INTEL": 6161,
+                    "TaskSequenceINTEL": 6162,
                     "FPMaxErrorINTEL": 6169,
                     "FPGALatencyControlINTEL": 6171,
                     "FPGAArgumentInterfacesINTEL": 6174,
@@ -1243,7 +1262,9 @@
                     "Subgroup2DBlockTransformINTEL": 6229,
                     "Subgroup2DBlockTransposeINTEL": 6230,
                     "SubgroupMatrixMultiplyAccumulateINTEL": 6236,
+                    "TernaryBitwiseFunctionINTEL": 6241,
                     "GroupUniformArithmeticKHR": 6400,
+                    "TensorFloat32RoundingINTEL": 6425,
                     "MaskedGatherScatterINTEL": 6427,
                     "CacheControlsINTEL": 6441,
                     "RegisterLimitsINTEL": 6460
@@ -1510,6 +1531,7 @@
                 "Type": "Value",
                 "Values":
                 {
+                    "BFloat16KHR": 0
                 }
             },
             {
@@ -2331,6 +2353,11 @@
                     "OpControlBarrierArriveINTEL": 6142,
                     "OpControlBarrierWaitINTEL": 6143,
                     "OpArithmeticFenceEXT": 6145,
+                    "OpTaskSequenceCreateINTEL": 6163,
+                    "OpTaskSequenceAsyncINTEL": 6164,
+                    "OpTaskSequenceGetINTEL": 6165,
+                    "OpTaskSequenceReleaseINTEL": 6166,
+                    "OpTypeTaskSequenceINTEL": 6199,
                     "OpSubgroupBlockPrefetchINTEL": 6221,
                     "OpSubgroup2DBlockLoadINTEL": 6231,
                     "OpSubgroup2DBlockLoadTransformINTEL": 6232,
@@ -2338,6 +2365,7 @@
                     "OpSubgroup2DBlockPrefetchINTEL": 6234,
                     "OpSubgroup2DBlockStoreINTEL": 6235,
                     "OpSubgroupMatrixMultiplyAccumulateINTEL": 6237,
+                    "OpBitwiseFunctionINTEL": 6242,
                     "OpGroupIMulKHR": 6401,
                     "OpGroupFMulKHR": 6402,
                     "OpGroupBitwiseAndKHR": 6403,
@@ -2346,6 +2374,7 @@
                     "OpGroupLogicalAndKHR": 6406,
                     "OpGroupLogicalOrKHR": 6407,
                     "OpGroupLogicalXorKHR": 6408,
+                    "OpRoundFToTF32INTEL": 6426,
                     "OpMaskedGatherINTEL": 6428,
                     "OpMaskedScatterINTEL": 6429
                 }

Некоторые файлы не были показаны из-за большого количества измененных файлов