summaryrefslogtreecommitdiff
path: root/include/spirv/unified1
diff options
context:
space:
mode:
authorArvind Sudarsanam <arvind.sudarsanam@intel.com>2023-06-09 08:24:16 -0700
committerArvind Sudarsanam <arvind.sudarsanam@intel.com>2023-06-09 08:24:16 -0700
commit866d16777a54b8a2f7e17aefbd3f479e09df74d4 (patch)
tree6dbe2176c16274d3a20ae0e8dc2fdec18fcc59ad /include/spirv/unified1
parent9bebe867466663a38dc9a239fc61eca627c0fd0f (diff)
parent8e2ad27488ed2f87c068c01a8f5e8979f7086405 (diff)
downloadSPIRV-Headers-866d16777a54b8a2f7e17aefbd3f479e09df74d4.tar.gz
SPIRV-Headers-866d16777a54b8a2f7e17aefbd3f479e09df74d4.tar.bz2
SPIRV-Headers-866d16777a54b8a2f7e17aefbd3f479e09df74d4.zip
Merge remote-tracking branch 'real-origin/main' into asudarsa/add_fp_max_error_support
Diffstat (limited to 'include/spirv/unified1')
-rw-r--r--include/spirv/unified1/spirv.bf16
-rw-r--r--include/spirv/unified1/spirv.core.grammar.json139
-rw-r--r--include/spirv/unified1/spirv.cs16
-rw-r--r--include/spirv/unified1/spirv.h20
-rw-r--r--include/spirv/unified1/spirv.hpp20
-rw-r--r--include/spirv/unified1/spirv.hpp11100
-rw-r--r--include/spirv/unified1/spirv.json20
-rw-r--r--include/spirv/unified1/spirv.lua16
-rw-r--r--include/spirv/unified1/spirv.py16
-rw-r--r--include/spirv/unified1/spv.d16
10 files changed, 331 insertions, 48 deletions
diff --git a/include/spirv/unified1/spirv.bf b/include/spirv/unified1/spirv.bf
index 5380651..e48dc85 100644
--- a/include/spirv/unified1/spirv.bf
+++ b/include/spirv/unified1/spirv.bf
@@ -66,6 +66,7 @@ namespace Spv
HLSL = 5,
CPP_for_OpenCL = 6,
SYCL = 7,
+ HERO_C = 8,
}
[AllowDuplicates, CRepr] public enum ExecutionModel
@@ -153,6 +154,9 @@ namespace Spv
SubgroupsPerWorkgroupId = 37,
LocalSizeId = 38,
LocalSizeHintId = 39,
+ NonCoherentColorAttachmentReadEXT = 4169,
+ NonCoherentDepthAttachmentReadEXT = 4170,
+ NonCoherentStencilAttachmentReadEXT = 4171,
SubgroupUniformControlFlowKHR = 4421,
PostDepthCoverage = 4446,
DenormPreserve = 4459,
@@ -212,6 +216,7 @@ namespace Spv
AtomicCounter = 10,
Image = 11,
StorageBuffer = 12,
+ TileImageEXT = 4172,
CallableDataKHR = 5328,
CallableDataNV = 5328,
IncomingCallableDataKHR = 5329,
@@ -242,6 +247,7 @@ namespace Spv
Rect = 4,
Buffer = 5,
SubpassData = 6,
+ TileImageDataEXT = 4173,
}
[AllowDuplicates, CRepr] public enum SamplerAddressingMode
@@ -717,6 +723,7 @@ namespace Spv
HitKindKHR = 5333,
HitKindNV = 5333,
CurrentRayTimeNV = 5334,
+ HitTriangleVertexPositionsKHR = 5335,
IncomingRayFlagsKHR = 5351,
IncomingRayFlagsNV = 5351,
RayGeometryIndexKHR = 5352,
@@ -994,6 +1001,9 @@ namespace Spv
ShaderViewportIndex = 70,
UniformDecoration = 71,
CoreBuiltinsARM = 4165,
+ TileImageColorReadAccessEXT = 4166,
+ TileImageDepthReadAccessEXT = 4167,
+ TileImageStencilReadAccessEXT = 4168,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -1076,6 +1086,7 @@ namespace Spv
UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
StorageTexelBufferArrayNonUniformIndexing = 5312,
StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
+ RayTracingPositionFetchKHR = 5336,
RayTracingNV = 5340,
RayTracingMotionBlurNV = 5341,
VulkanMemoryModel = 5345,
@@ -1096,6 +1107,7 @@ namespace Spv
RayTracingOpacityMicromapEXT = 5381,
ShaderInvocationReorderNV = 5383,
BindlessTextureNV = 5390,
+ RayQueryPositionFetchKHR = 5391,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
SubgroupImageBlockIOINTEL = 5570,
@@ -1615,6 +1627,9 @@ namespace Spv
OpPtrEqual = 401,
OpPtrNotEqual = 402,
OpPtrDiff = 403,
+ OpColorAttachmentReadEXT = 4160,
+ OpDepthAttachmentReadEXT = 4161,
+ OpStencilAttachmentReadEXT = 4162,
OpTerminateInvocation = 4416,
OpSubgroupBallotKHR = 4421,
OpSubgroupFirstInvocationKHR = 4422,
@@ -1707,6 +1722,7 @@ namespace Spv
OpTraceNV = 5337,
OpTraceMotionNV = 5338,
OpTraceRayMotionNV = 5339,
+ OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
OpTypeAccelerationStructureKHR = 5341,
OpTypeAccelerationStructureNV = 5341,
OpExecuteCallableNV = 5344,
diff --git a/include/spirv/unified1/spirv.core.grammar.json b/include/spirv/unified1/spirv.core.grammar.json
index d07e77b..9fbc704 100644
--- a/include/spirv/unified1/spirv.core.grammar.json
+++ b/include/spirv/unified1/spirv.core.grammar.json
@@ -4103,6 +4103,43 @@
"version" : "1.4"
},
{
+ "opname" : "OpColorAttachmentReadEXT",
+ "class" : "Image",
+ "opcode" : 4160,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Attachment'" },
+ { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" }
+ ],
+ "capabilities": [ "TileImageColorReadAccessEXT" ],
+ "version" : "None"
+ },
+ {
+ "opname" : "OpDepthAttachmentReadEXT",
+ "class" : "Image",
+ "opcode" : 4161,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "TileImageDepthReadAccessEXT" ],
+ "version" : "None"
+ },
+ {
+ "opname" : "OpStencilAttachmentReadEXT",
+ "class" : "Image",
+ "opcode" : 4162,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "TileImageStencilReadAccessEXT" ],
+ "version" : "None"
+ },
+ {
"opname" : "OpTerminateInvocation",
"class" : "Control-Flow",
"opcode" : 4416,
@@ -5447,6 +5484,25 @@
"version" : "None"
},
{
+ "opname" : "OpRayQueryGetIntersectionTriangleVertexPositionsKHR",
+ "class" : "Reserved",
+ "opcode" : 5340,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ {
+ "kind" : "IdRef",
+ "name" : "'RayQuery'"
+ },
+ {
+ "kind" : "IdRef",
+ "name" : "'Intersection'"
+ }
+ ],
+ "capabilities" : [ "RayQueryPositionFetchKHR" ],
+ "version" : "None"
+ },
+ {
"opname" : "OpTypeAccelerationStructureNV",
"class" : "Reserved",
"opcode" : 5341,
@@ -10028,6 +10084,10 @@
{
"enumerant" : "SYCL",
"value" : 7
+ },
+ {
+ "enumerant" : "HERO_C",
+ "value" : 8
}
]
},
@@ -10474,6 +10534,24 @@
"version" : "1.2"
},
{
+ "enumerant" : "NonCoherentColorAttachmentReadEXT",
+ "value" : 4169,
+ "capabilities" : [ "TileImageColorReadAccessEXT" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "NonCoherentDepthAttachmentReadEXT",
+ "value" : 4170,
+ "capabilities" : [ "TileImageDepthReadAccessEXT" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "NonCoherentStencilAttachmentReadEXT",
+ "value" : 4171,
+ "capabilities" : [ "TileImageStencilReadAccessEXT" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "SubgroupUniformControlFlowKHR",
"value" : 4421,
"capabilities" : [ "Shader" ],
@@ -10888,6 +10966,12 @@
"version" : "1.3"
},
{
+ "enumerant" : "TileImageEXT",
+ "value" : 4172,
+ "capabilities" : [ "TileImageColorReadAccessEXT" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "CallableDataNV",
"value" : 5328,
"extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
@@ -11032,12 +11116,11 @@
{
"enumerant" : "1D",
"value" : 0,
- "capabilities" : [ "Sampled1D", "Image1D" ]
+ "capabilities" : [ "Sampled1D" ]
},
{
"enumerant" : "2D",
- "value" : 1,
- "capabilities" : [ "Shader", "Kernel", "ImageMSArray" ]
+ "value" : 1
},
{
"enumerant" : "3D",
@@ -11046,22 +11129,28 @@
{
"enumerant" : "Cube",
"value" : 3,
- "capabilities" : [ "Shader", "ImageCubeArray" ]
+ "capabilities" : [ "Shader" ]
},
{
"enumerant" : "Rect",
"value" : 4,
- "capabilities" : [ "SampledRect", "ImageRect" ]
+ "capabilities" : [ "SampledRect" ]
},
{
"enumerant" : "Buffer",
"value" : 5,
- "capabilities" : [ "SampledBuffer", "ImageBuffer" ]
+ "capabilities" : [ "SampledBuffer" ]
},
{
"enumerant" : "SubpassData",
"value" : 6,
"capabilities" : [ "InputAttachment" ]
+ },
+ {
+ "enumerant" : "TileImageDataEXT",
+ "value" : 4173,
+ "capabilities" : [ "TileImageColorReadAccessEXT" ],
+ "version" : "None"
}
]
},
@@ -13481,6 +13570,12 @@
"version" : "None"
},
{
+ "enumerant" : "HitTriangleVertexPositionsKHR",
+ "value" : 5335,
+ "capabilities" : [ "RayTracingPositionFetchKHR" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "IncomingRayFlagsNV",
"value" : 5351,
"capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
@@ -14010,6 +14105,24 @@
"extensions" : [ "SPV_ARM_core_builtins" ]
},
{
+ "enumerant" : "TileImageColorReadAccessEXT",
+ "value" : 4166,
+ "extensions" : [ "SPV_EXT_shader_tile_image" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "TileImageDepthReadAccessEXT",
+ "value" : 4167,
+ "extensions" : [ "SPV_EXT_shader_tile_image" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "TileImageStencilReadAccessEXT",
+ "value" : 4168,
+ "extensions" : [ "SPV_EXT_shader_tile_image" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "FragmentShadingRateKHR",
"value" : 4422,
"capabilities" : [ "Shader" ],
@@ -14553,6 +14666,13 @@
"version" : "1.5"
},
{
+ "enumerant" : "RayTracingPositionFetchKHR",
+ "value" : 5336,
+ "capabilities" : [ "Shader" ],
+ "extensions" : [ "SPV_KHR_ray_tracing_position_fetch" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "RayTracingNV",
"value" : 5340,
"capabilities" : [ "Shader" ],
@@ -14684,6 +14804,13 @@
"version" : "None"
},
{
+ "enumerant" : "RayQueryPositionFetchKHR",
+ "value" : 5391,
+ "capabilities" : [ "Shader" ],
+ "extensions" : [ "SPV_KHR_ray_tracing_position_fetch" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "SubgroupShuffleINTEL",
"value" : 5568,
"extensions" : [ "SPV_INTEL_subgroups" ],
diff --git a/include/spirv/unified1/spirv.cs b/include/spirv/unified1/spirv.cs
index ae3840e..a6fe817 100644
--- a/include/spirv/unified1/spirv.cs
+++ b/include/spirv/unified1/spirv.cs
@@ -65,6 +65,7 @@ namespace Spv
HLSL = 5,
CPP_for_OpenCL = 6,
SYCL = 7,
+ HERO_C = 8,
}
public enum ExecutionModel
@@ -152,6 +153,9 @@ namespace Spv
SubgroupsPerWorkgroupId = 37,
LocalSizeId = 38,
LocalSizeHintId = 39,
+ NonCoherentColorAttachmentReadEXT = 4169,
+ NonCoherentDepthAttachmentReadEXT = 4170,
+ NonCoherentStencilAttachmentReadEXT = 4171,
SubgroupUniformControlFlowKHR = 4421,
PostDepthCoverage = 4446,
DenormPreserve = 4459,
@@ -211,6 +215,7 @@ namespace Spv
AtomicCounter = 10,
Image = 11,
StorageBuffer = 12,
+ TileImageEXT = 4172,
CallableDataKHR = 5328,
CallableDataNV = 5328,
IncomingCallableDataKHR = 5329,
@@ -241,6 +246,7 @@ namespace Spv
Rect = 4,
Buffer = 5,
SubpassData = 6,
+ TileImageDataEXT = 4173,
}
public enum SamplerAddressingMode
@@ -716,6 +722,7 @@ namespace Spv
HitKindKHR = 5333,
HitKindNV = 5333,
CurrentRayTimeNV = 5334,
+ HitTriangleVertexPositionsKHR = 5335,
IncomingRayFlagsKHR = 5351,
IncomingRayFlagsNV = 5351,
RayGeometryIndexKHR = 5352,
@@ -993,6 +1000,9 @@ namespace Spv
ShaderViewportIndex = 70,
UniformDecoration = 71,
CoreBuiltinsARM = 4165,
+ TileImageColorReadAccessEXT = 4166,
+ TileImageDepthReadAccessEXT = 4167,
+ TileImageStencilReadAccessEXT = 4168,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -1075,6 +1085,7 @@ namespace Spv
UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
StorageTexelBufferArrayNonUniformIndexing = 5312,
StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
+ RayTracingPositionFetchKHR = 5336,
RayTracingNV = 5340,
RayTracingMotionBlurNV = 5341,
VulkanMemoryModel = 5345,
@@ -1095,6 +1106,7 @@ namespace Spv
RayTracingOpacityMicromapEXT = 5381,
ShaderInvocationReorderNV = 5383,
BindlessTextureNV = 5390,
+ RayQueryPositionFetchKHR = 5391,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
SubgroupImageBlockIOINTEL = 5570,
@@ -1614,6 +1626,9 @@ namespace Spv
OpPtrEqual = 401,
OpPtrNotEqual = 402,
OpPtrDiff = 403,
+ OpColorAttachmentReadEXT = 4160,
+ OpDepthAttachmentReadEXT = 4161,
+ OpStencilAttachmentReadEXT = 4162,
OpTerminateInvocation = 4416,
OpSubgroupBallotKHR = 4421,
OpSubgroupFirstInvocationKHR = 4422,
@@ -1706,6 +1721,7 @@ namespace Spv
OpTraceNV = 5337,
OpTraceMotionNV = 5338,
OpTraceRayMotionNV = 5339,
+ OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
OpTypeAccelerationStructureKHR = 5341,
OpTypeAccelerationStructureNV = 5341,
OpExecuteCallableNV = 5344,
diff --git a/include/spirv/unified1/spirv.h b/include/spirv/unified1/spirv.h
index e9ba5fb..dc10f76 100644
--- a/include/spirv/unified1/spirv.h
+++ b/include/spirv/unified1/spirv.h
@@ -73,6 +73,7 @@ typedef enum SpvSourceLanguage_ {
SpvSourceLanguageHLSL = 5,
SpvSourceLanguageCPP_for_OpenCL = 6,
SpvSourceLanguageSYCL = 7,
+ SpvSourceLanguageHERO_C = 8,
SpvSourceLanguageMax = 0x7fffffff,
} SpvSourceLanguage;
@@ -160,6 +161,9 @@ typedef enum SpvExecutionMode_ {
SpvExecutionModeSubgroupsPerWorkgroupId = 37,
SpvExecutionModeLocalSizeId = 38,
SpvExecutionModeLocalSizeHintId = 39,
+ SpvExecutionModeNonCoherentColorAttachmentReadEXT = 4169,
+ SpvExecutionModeNonCoherentDepthAttachmentReadEXT = 4170,
+ SpvExecutionModeNonCoherentStencilAttachmentReadEXT = 4171,
SpvExecutionModeSubgroupUniformControlFlowKHR = 4421,
SpvExecutionModePostDepthCoverage = 4446,
SpvExecutionModeDenormPreserve = 4459,
@@ -219,6 +223,7 @@ typedef enum SpvStorageClass_ {
SpvStorageClassAtomicCounter = 10,
SpvStorageClassImage = 11,
SpvStorageClassStorageBuffer = 12,
+ SpvStorageClassTileImageEXT = 4172,
SpvStorageClassCallableDataKHR = 5328,
SpvStorageClassCallableDataNV = 5328,
SpvStorageClassIncomingCallableDataKHR = 5329,
@@ -249,6 +254,7 @@ typedef enum SpvDim_ {
SpvDimRect = 4,
SpvDimBuffer = 5,
SpvDimSubpassData = 6,
+ SpvDimTileImageDataEXT = 4173,
SpvDimMax = 0x7fffffff,
} SpvDim;
@@ -722,6 +728,7 @@ typedef enum SpvBuiltIn_ {
SpvBuiltInHitKindKHR = 5333,
SpvBuiltInHitKindNV = 5333,
SpvBuiltInCurrentRayTimeNV = 5334,
+ SpvBuiltInHitTriangleVertexPositionsKHR = 5335,
SpvBuiltInIncomingRayFlagsKHR = 5351,
SpvBuiltInIncomingRayFlagsNV = 5351,
SpvBuiltInRayGeometryIndexKHR = 5352,
@@ -993,6 +1000,9 @@ typedef enum SpvCapability_ {
SpvCapabilityShaderViewportIndex = 70,
SpvCapabilityUniformDecoration = 71,
SpvCapabilityCoreBuiltinsARM = 4165,
+ SpvCapabilityTileImageColorReadAccessEXT = 4166,
+ SpvCapabilityTileImageDepthReadAccessEXT = 4167,
+ SpvCapabilityTileImageStencilReadAccessEXT = 4168,
SpvCapabilityFragmentShadingRateKHR = 4422,
SpvCapabilitySubgroupBallotKHR = 4423,
SpvCapabilityDrawParameters = 4427,
@@ -1075,6 +1085,7 @@ typedef enum SpvCapability_ {
SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311,
SpvCapabilityStorageTexelBufferArrayNonUniformIndexing = 5312,
SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
+ SpvCapabilityRayTracingPositionFetchKHR = 5336,
SpvCapabilityRayTracingNV = 5340,
SpvCapabilityRayTracingMotionBlurNV = 5341,
SpvCapabilityVulkanMemoryModel = 5345,
@@ -1095,6 +1106,7 @@ typedef enum SpvCapability_ {
SpvCapabilityRayTracingOpacityMicromapEXT = 5381,
SpvCapabilityShaderInvocationReorderNV = 5383,
SpvCapabilityBindlessTextureNV = 5390,
+ SpvCapabilityRayQueryPositionFetchKHR = 5391,
SpvCapabilitySubgroupShuffleINTEL = 5568,
SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
SpvCapabilitySubgroupImageBlockIOINTEL = 5570,
@@ -1612,6 +1624,9 @@ typedef enum SpvOp_ {
SpvOpPtrEqual = 401,
SpvOpPtrNotEqual = 402,
SpvOpPtrDiff = 403,
+ SpvOpColorAttachmentReadEXT = 4160,
+ SpvOpDepthAttachmentReadEXT = 4161,
+ SpvOpStencilAttachmentReadEXT = 4162,
SpvOpTerminateInvocation = 4416,
SpvOpSubgroupBallotKHR = 4421,
SpvOpSubgroupFirstInvocationKHR = 4422,
@@ -1704,6 +1719,7 @@ typedef enum SpvOp_ {
SpvOpTraceNV = 5337,
SpvOpTraceMotionNV = 5338,
SpvOpTraceRayMotionNV = 5339,
+ SpvOpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
SpvOpTypeAccelerationStructureKHR = 5341,
SpvOpTypeAccelerationStructureNV = 5341,
SpvOpExecuteCallableNV = 5344,
@@ -2332,6 +2348,9 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
case SpvOpPtrEqual: *hasResult = true; *hasResultType = true; break;
case SpvOpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
case SpvOpPtrDiff: *hasResult = true; *hasResultType = true; break;
+ case SpvOpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
+ case SpvOpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
+ case SpvOpStencilAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case SpvOpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
case SpvOpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
case SpvOpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
@@ -2417,6 +2436,7 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
case SpvOpTraceNV: *hasResult = false; *hasResultType = false; break;
case SpvOpTraceMotionNV: *hasResult = false; *hasResultType = false; break;
case SpvOpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break;
+ case SpvOpRayQueryGetIntersectionTriangleVertexPositionsKHR: *hasResult = true; *hasResultType = true; break;
case SpvOpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
case SpvOpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
case SpvOpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
diff --git a/include/spirv/unified1/spirv.hpp b/include/spirv/unified1/spirv.hpp
index 8b12b0e..c7c4c9d 100644
--- a/include/spirv/unified1/spirv.hpp
+++ b/include/spirv/unified1/spirv.hpp
@@ -69,6 +69,7 @@ enum SourceLanguage {
SourceLanguageHLSL = 5,
SourceLanguageCPP_for_OpenCL = 6,
SourceLanguageSYCL = 7,
+ SourceLanguageHERO_C = 8,
SourceLanguageMax = 0x7fffffff,
};
@@ -156,6 +157,9 @@ enum ExecutionMode {
ExecutionModeSubgroupsPerWorkgroupId = 37,
ExecutionModeLocalSizeId = 38,
ExecutionModeLocalSizeHintId = 39,
+ ExecutionModeNonCoherentColorAttachmentReadEXT = 4169,
+ ExecutionModeNonCoherentDepthAttachmentReadEXT = 4170,
+ ExecutionModeNonCoherentStencilAttachmentReadEXT = 4171,
ExecutionModeSubgroupUniformControlFlowKHR = 4421,
ExecutionModePostDepthCoverage = 4446,
ExecutionModeDenormPreserve = 4459,
@@ -215,6 +219,7 @@ enum StorageClass {
StorageClassAtomicCounter = 10,
StorageClassImage = 11,
StorageClassStorageBuffer = 12,
+ StorageClassTileImageEXT = 4172,
StorageClassCallableDataKHR = 5328,
StorageClassCallableDataNV = 5328,
StorageClassIncomingCallableDataKHR = 5329,
@@ -245,6 +250,7 @@ enum Dim {
DimRect = 4,
DimBuffer = 5,
DimSubpassData = 6,
+ DimTileImageDataEXT = 4173,
DimMax = 0x7fffffff,
};
@@ -718,6 +724,7 @@ enum BuiltIn {
BuiltInHitKindKHR = 5333,
BuiltInHitKindNV = 5333,
BuiltInCurrentRayTimeNV = 5334,
+ BuiltInHitTriangleVertexPositionsKHR = 5335,
BuiltInIncomingRayFlagsKHR = 5351,
BuiltInIncomingRayFlagsNV = 5351,
BuiltInRayGeometryIndexKHR = 5352,
@@ -989,6 +996,9 @@ enum Capability {
CapabilityShaderViewportIndex = 70,
CapabilityUniformDecoration = 71,
CapabilityCoreBuiltinsARM = 4165,
+ CapabilityTileImageColorReadAccessEXT = 4166,
+ CapabilityTileImageDepthReadAccessEXT = 4167,
+ CapabilityTileImageStencilReadAccessEXT = 4168,
CapabilityFragmentShadingRateKHR = 4422,
CapabilitySubgroupBallotKHR = 4423,
CapabilityDrawParameters = 4427,
@@ -1071,6 +1081,7 @@ enum Capability {
CapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311,
CapabilityStorageTexelBufferArrayNonUniformIndexing = 5312,
CapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
+ CapabilityRayTracingPositionFetchKHR = 5336,
CapabilityRayTracingNV = 5340,
CapabilityRayTracingMotionBlurNV = 5341,
CapabilityVulkanMemoryModel = 5345,
@@ -1091,6 +1102,7 @@ enum Capability {
CapabilityRayTracingOpacityMicromapEXT = 5381,
CapabilityShaderInvocationReorderNV = 5383,
CapabilityBindlessTextureNV = 5390,
+ CapabilityRayQueryPositionFetchKHR = 5391,
CapabilitySubgroupShuffleINTEL = 5568,
CapabilitySubgroupBufferBlockIOINTEL = 5569,
CapabilitySubgroupImageBlockIOINTEL = 5570,
@@ -1608,6 +1620,9 @@ enum Op {
OpPtrEqual = 401,
OpPtrNotEqual = 402,
OpPtrDiff = 403,
+ OpColorAttachmentReadEXT = 4160,
+ OpDepthAttachmentReadEXT = 4161,
+ OpStencilAttachmentReadEXT = 4162,
OpTerminateInvocation = 4416,
OpSubgroupBallotKHR = 4421,
OpSubgroupFirstInvocationKHR = 4422,
@@ -1700,6 +1715,7 @@ enum Op {
OpTraceNV = 5337,
OpTraceMotionNV = 5338,
OpTraceRayMotionNV = 5339,
+ OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
OpTypeAccelerationStructureKHR = 5341,
OpTypeAccelerationStructureNV = 5341,
OpExecuteCallableNV = 5344,
@@ -2328,6 +2344,9 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case OpPtrEqual: *hasResult = true; *hasResultType = true; break;
case OpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
case OpPtrDiff: *hasResult = true; *hasResultType = true; break;
+ case OpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
+ case OpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
+ case OpStencilAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case OpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
case OpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
case OpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
@@ -2413,6 +2432,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case OpTraceNV: *hasResult = false; *hasResultType = false; break;
case OpTraceMotionNV: *hasResult = false; *hasResultType = false; break;
case OpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break;
+ case OpRayQueryGetIntersectionTriangleVertexPositionsKHR: *hasResult = true; *hasResultType = true; break;
case OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
case OpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
case OpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
diff --git a/include/spirv/unified1/spirv.hpp11 b/include/spirv/unified1/spirv.hpp11
index 0a3defa..b9aa891 100644
--- a/include/spirv/unified1/spirv.hpp11
+++ b/include/spirv/unified1/spirv.hpp11
@@ -69,6 +69,7 @@ enum class SourceLanguage : unsigned {
HLSL = 5,
CPP_for_OpenCL = 6,
SYCL = 7,
+ HERO_C = 8,
Max = 0x7fffffff,
};
@@ -156,6 +157,9 @@ enum class ExecutionMode : unsigned {
SubgroupsPerWorkgroupId = 37,
LocalSizeId = 38,
LocalSizeHintId = 39,
+ NonCoherentColorAttachmentReadEXT = 4169,
+ NonCoherentDepthAttachmentReadEXT = 4170,
+ NonCoherentStencilAttachmentReadEXT = 4171,
SubgroupUniformControlFlowKHR = 4421,
PostDepthCoverage = 4446,
DenormPreserve = 4459,
@@ -215,6 +219,7 @@ enum class StorageClass : unsigned {
AtomicCounter = 10,
Image = 11,
StorageBuffer = 12,
+ TileImageEXT = 4172,
CallableDataKHR = 5328,
CallableDataNV = 5328,
IncomingCallableDataKHR = 5329,
@@ -245,6 +250,7 @@ enum class Dim : unsigned {
Rect = 4,
Buffer = 5,
SubpassData = 6,
+ TileImageDataEXT = 4173,
Max = 0x7fffffff,
};
@@ -718,6 +724,7 @@ enum class BuiltIn : unsigned {
HitKindKHR = 5333,
HitKindNV = 5333,
CurrentRayTimeNV = 5334,
+ HitTriangleVertexPositionsKHR = 5335,
IncomingRayFlagsKHR = 5351,
IncomingRayFlagsNV = 5351,
RayGeometryIndexKHR = 5352,
@@ -989,6 +996,9 @@ enum class Capability : unsigned {
ShaderViewportIndex = 70,
UniformDecoration = 71,
CoreBuiltinsARM = 4165,
+ TileImageColorReadAccessEXT = 4166,
+ TileImageDepthReadAccessEXT = 4167,
+ TileImageStencilReadAccessEXT = 4168,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -1071,6 +1081,7 @@ enum class Capability : unsigned {
UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
StorageTexelBufferArrayNonUniformIndexing = 5312,
StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
+ RayTracingPositionFetchKHR = 5336,
RayTracingNV = 5340,
RayTracingMotionBlurNV = 5341,
VulkanMemoryModel = 5345,
@@ -1091,6 +1102,7 @@ enum class Capability : unsigned {
RayTracingOpacityMicromapEXT = 5381,
ShaderInvocationReorderNV = 5383,
BindlessTextureNV = 5390,
+ RayQueryPositionFetchKHR = 5391,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
SubgroupImageBlockIOINTEL = 5570,
@@ -1608,6 +1620,9 @@ enum class Op : unsigned {
OpPtrEqual = 401,
OpPtrNotEqual = 402,
OpPtrDiff = 403,
+ OpColorAttachmentReadEXT = 4160,
+ OpDepthAttachmentReadEXT = 4161,
+ OpStencilAttachmentReadEXT = 4162,
OpTerminateInvocation = 4416,
OpSubgroupBallotKHR = 4421,
OpSubgroupFirstInvocationKHR = 4422,
@@ -1700,6 +1715,7 @@ enum class Op : unsigned {
OpTraceNV = 5337,
OpTraceMotionNV = 5338,
OpTraceRayMotionNV = 5339,
+ OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
OpTypeAccelerationStructureKHR = 5341,
OpTypeAccelerationStructureNV = 5341,
OpExecuteCallableNV = 5344,
@@ -2328,6 +2344,9 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case Op::OpPtrEqual: *hasResult = true; *hasResultType = true; break;
case Op::OpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
case Op::OpPtrDiff: *hasResult = true; *hasResultType = true; break;
+ case Op::OpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
+ case Op::OpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
+ case Op::OpStencilAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case Op::OpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
case Op::OpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
case Op::OpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
@@ -2413,6 +2432,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case Op::OpTraceNV: *hasResult = false; *hasResultType = false; break;
case Op::OpTraceMotionNV: *hasResult = false; *hasResultType = false; break;
case Op::OpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break;
+ case Op::OpRayQueryGetIntersectionTriangleVertexPositionsKHR: *hasResult = true; *hasResultType = true; break;
case Op::OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
case Op::OpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
case Op::OpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
@@ -2688,46 +2708,46 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
// Overload bitwise operators for mask bit combining
-inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); }
-inline ImageOperandsMask operator&(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) & unsigned(b)); }
-inline ImageOperandsMask operator^(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) ^ unsigned(b)); }
-inline ImageOperandsMask operator~(ImageOperandsMask a) { return ImageOperandsMask(~unsigned(a)); }
-inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); }
-inline FPFastMathModeMask operator&(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) & unsigned(b)); }
-inline FPFastMathModeMask operator^(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) ^ unsigned(b)); }
-inline FPFastMathModeMask operator~(FPFastMathModeMask a) { return FPFastMathModeMask(~unsigned(a)); }
-inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); }
-inline SelectionControlMask operator&(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) & unsigned(b)); }
-inline SelectionControlMask operator^(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) ^ unsigned(b)); }
-inline SelectionControlMask operator~(SelectionControlMask a) { return SelectionControlMask(~unsigned(a)); }
-inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); }
-inline LoopControlMask operator&(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) & unsigned(b)); }
-inline LoopControlMask operator^(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) ^ unsigned(b)); }
-inline LoopControlMask operator~(LoopControlMask a) { return LoopControlMask(~unsigned(a)); }
-inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); }
-inline FunctionControlMask operator&(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) & unsigned(b)); }
-inline FunctionControlMask operator^(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) ^ unsigned(b)); }
-inline FunctionControlMask operator~(FunctionControlMask a) { return FunctionControlMask(~unsigned(a)); }
-inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); }
-inline MemorySemanticsMask operator&(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) & unsigned(b)); }
-inline MemorySemanticsMask operator^(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) ^ unsigned(b)); }
-inline MemorySemanticsMask operator~(MemorySemanticsMask a) { return MemorySemanticsMask(~unsigned(a)); }
-inline MemoryAccessMask operator|(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) | unsigned(b)); }
-inline MemoryAccessMask operator&(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) & unsigned(b)); }
-inline MemoryAccessMask operator^(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) ^ unsigned(b)); }
-inline MemoryAccessMask operator~(MemoryAccessMask a) { return MemoryAccessMask(~unsigned(a)); }
-inline KernelProfilingInfoMask operator|(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) | unsigned(b)); }
-inline KernelProfilingInfoMask operator&(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) & unsigned(b)); }
-inline KernelProfilingInfoMask operator^(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) ^ unsigned(b)); }
-inline KernelProfilingInfoMask operator~(KernelProfilingInfoMask a) { return KernelProfilingInfoMask(~unsigned(a)); }
-inline RayFlagsMask operator|(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) | unsigned(b)); }
-inline RayFlagsMask operator&(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) & unsigned(b)); }
-inline RayFlagsMask operator^(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) ^ unsigned(b)); }
-inline RayFlagsMask operator~(RayFlagsMask a) { return RayFlagsMask(~unsigned(a)); }
-inline FragmentShadingRateMask operator|(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) | unsigned(b)); }
-inline FragmentShadingRateMask operator&(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) & unsigned(b)); }
-inline FragmentShadingRateMask operator^(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) ^ unsigned(b)); }
-inline FragmentShadingRateMask operator~(FragmentShadingRateMask a) { return FragmentShadingRateMask(~unsigned(a)); }
+constexpr ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); }
+constexpr ImageOperandsMask operator&(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) & unsigned(b)); }
+constexpr ImageOperandsMask operator^(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) ^ unsigned(b)); }
+constexpr ImageOperandsMask operator~(ImageOperandsMask a) { return ImageOperandsMask(~unsigned(a)); }
+constexpr FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); }
+constexpr FPFastMathModeMask operator&(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) & unsigned(b)); }
+constexpr FPFastMathModeMask operator^(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) ^ unsigned(b)); }
+constexpr FPFastMathModeMask operator~(FPFastMathModeMask a) { return FPFastMathModeMask(~unsigned(a)); }
+constexpr SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); }
+constexpr SelectionControlMask operator&(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) & unsigned(b)); }
+constexpr SelectionControlMask operator^(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) ^ unsigned(b)); }
+constexpr SelectionControlMask operator~(SelectionControlMask a) { return SelectionControlMask(~unsigned(a)); }
+constexpr LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); }
+constexpr LoopControlMask operator&(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) & unsigned(b)); }
+constexpr LoopControlMask operator^(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) ^ unsigned(b)); }
+constexpr LoopControlMask operator~(LoopControlMask a) { return LoopControlMask(~unsigned(a)); }
+constexpr FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); }
+constexpr FunctionControlMask operator&(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) & unsigned(b)); }
+constexpr FunctionControlMask operator^(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) ^ unsigned(b)); }
+constexpr FunctionControlMask operator~(FunctionControlMask a) { return FunctionControlMask(~unsigned(a)); }
+constexpr MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); }
+constexpr MemorySemanticsMask operator&(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) & unsigned(b)); }
+constexpr MemorySemanticsMask operator^(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) ^ unsigned(b)); }
+constexpr MemorySemanticsMask operator~(MemorySemanticsMask a) { return MemorySemanticsMask(~unsigned(a)); }
+constexpr MemoryAccessMask operator|(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) | unsigned(b)); }
+constexpr MemoryAccessMask operator&(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) & unsigned(b)); }
+constexpr MemoryAccessMask operator^(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) ^ unsigned(b)); }
+constexpr MemoryAccessMask operator~(MemoryAccessMask a) { return MemoryAccessMask(~unsigned(a)); }
+constexpr KernelProfilingInfoMask operator|(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) | unsigned(b)); }
+constexpr KernelProfilingInfoMask operator&(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) & unsigned(b)); }
+constexpr KernelProfilingInfoMask operator^(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) ^ unsigned(b)); }
+constexpr KernelProfilingInfoMask operator~(KernelProfilingInfoMask a) { return KernelProfilingInfoMask(~unsigned(a)); }
+constexpr RayFlagsMask operator|(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) | unsigned(b)); }
+constexpr RayFlagsMask operator&(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) & unsigned(b)); }
+constexpr RayFlagsMask operator^(RayFlagsMask a, RayFlagsMask b) { return RayFlagsMask(unsigned(a) ^ unsigned(b)); }
+constexpr RayFlagsMask operator~(RayFlagsMask a) { return RayFlagsMask(~unsigned(a)); }
+constexpr FragmentShadingRateMask operator|(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) | unsigned(b)); }
+constexpr FragmentShadingRateMask operator&(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) & unsigned(b)); }
+constexpr FragmentShadingRateMask operator^(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) ^ unsigned(b)); }
+constexpr FragmentShadingRateMask operator~(FragmentShadingRateMask a) { return FragmentShadingRateMask(~unsigned(a)); }
} // end namespace spv
diff --git a/include/spirv/unified1/spirv.json b/include/spirv/unified1/spirv.json
index 04b5f65..1f53b56 100644
--- a/include/spirv/unified1/spirv.json
+++ b/include/spirv/unified1/spirv.json
@@ -75,7 +75,8 @@
"OpenCL_CPP": 4,
"HLSL": 5,
"CPP_for_OpenCL": 6,
- "SYCL": 7
+ "SYCL": 7,
+ "HERO_C": 8
}
},
{
@@ -175,6 +176,9 @@
"SubgroupsPerWorkgroupId": 37,
"LocalSizeId": 38,
"LocalSizeHintId": 39,
+ "NonCoherentColorAttachmentReadEXT": 4169,
+ "NonCoherentDepthAttachmentReadEXT": 4170,
+ "NonCoherentStencilAttachmentReadEXT": 4171,
"SubgroupUniformControlFlowKHR": 4421,
"PostDepthCoverage": 4446,
"DenormPreserve": 4459,
@@ -237,6 +241,7 @@
"AtomicCounter": 10,
"Image": 11,
"StorageBuffer": 12,
+ "TileImageEXT": 4172,
"CallableDataKHR": 5328,
"CallableDataNV": 5328,
"IncomingCallableDataKHR": 5329,
@@ -269,7 +274,8 @@
"Cube": 3,
"Rect": 4,
"Buffer": 5,
- "SubpassData": 6
+ "SubpassData": 6,
+ "TileImageDataEXT": 4173
}
},
{
@@ -747,6 +753,7 @@
"HitKindKHR": 5333,
"HitKindNV": 5333,
"CurrentRayTimeNV": 5334,
+ "HitTriangleVertexPositionsKHR": 5335,
"IncomingRayFlagsKHR": 5351,
"IncomingRayFlagsNV": 5351,
"RayGeometryIndexKHR": 5352,
@@ -969,6 +976,9 @@
"ShaderViewportIndex": 70,
"UniformDecoration": 71,
"CoreBuiltinsARM": 4165,
+ "TileImageColorReadAccessEXT": 4166,
+ "TileImageDepthReadAccessEXT": 4167,
+ "TileImageStencilReadAccessEXT": 4168,
"FragmentShadingRateKHR": 4422,
"SubgroupBallotKHR": 4423,
"DrawParameters": 4427,
@@ -1051,6 +1061,7 @@
"UniformTexelBufferArrayNonUniformIndexingEXT": 5311,
"StorageTexelBufferArrayNonUniformIndexing": 5312,
"StorageTexelBufferArrayNonUniformIndexingEXT": 5312,
+ "RayTracingPositionFetchKHR": 5336,
"RayTracingNV": 5340,
"RayTracingMotionBlurNV": 5341,
"VulkanMemoryModel": 5345,
@@ -1071,6 +1082,7 @@
"RayTracingOpacityMicromapEXT": 5381,
"ShaderInvocationReorderNV": 5383,
"BindlessTextureNV": 5390,
+ "RayQueryPositionFetchKHR": 5391,
"SubgroupShuffleINTEL": 5568,
"SubgroupBufferBlockIOINTEL": 5569,
"SubgroupImageBlockIOINTEL": 5570,
@@ -1598,6 +1610,9 @@
"OpPtrEqual": 401,
"OpPtrNotEqual": 402,
"OpPtrDiff": 403,
+ "OpColorAttachmentReadEXT": 4160,
+ "OpDepthAttachmentReadEXT": 4161,
+ "OpStencilAttachmentReadEXT": 4162,
"OpTerminateInvocation": 4416,
"OpSubgroupBallotKHR": 4421,
"OpSubgroupFirstInvocationKHR": 4422,
@@ -1690,6 +1705,7 @@
"OpTraceNV": 5337,
"OpTraceMotionNV": 5338,
"OpTraceRayMotionNV": 5339,
+ "OpRayQueryGetIntersectionTriangleVertexPositionsKHR": 5340,
"OpTypeAccelerationStructureKHR": 5341,
"OpTypeAccelerationStructureNV": 5341,
"OpExecuteCallableNV": 5344,
diff --git a/include/spirv/unified1/spirv.lua b/include/spirv/unified1/spirv.lua
index 67dff22..cf15e4c 100644
--- a/include/spirv/unified1/spirv.lua
+++ b/include/spirv/unified1/spirv.lua
@@ -60,6 +60,7 @@ spv = {
HLSL = 5,
CPP_for_OpenCL = 6,
SYCL = 7,
+ HERO_C = 8,
},
ExecutionModel = {
@@ -143,6 +144,9 @@ spv = {
SubgroupsPerWorkgroupId = 37,
LocalSizeId = 38,
LocalSizeHintId = 39,
+ NonCoherentColorAttachmentReadEXT = 4169,
+ NonCoherentDepthAttachmentReadEXT = 4170,
+ NonCoherentStencilAttachmentReadEXT = 4171,
SubgroupUniformControlFlowKHR = 4421,
PostDepthCoverage = 4446,
DenormPreserve = 4459,
@@ -201,6 +205,7 @@ spv = {
AtomicCounter = 10,
Image = 11,
StorageBuffer = 12,
+ TileImageEXT = 4172,
CallableDataKHR = 5328,
CallableDataNV = 5328,
IncomingCallableDataKHR = 5329,
@@ -230,6 +235,7 @@ spv = {
Rect = 4,
Buffer = 5,
SubpassData = 6,
+ TileImageDataEXT = 4173,
},
SamplerAddressingMode = {
@@ -690,6 +696,7 @@ spv = {
HitKindKHR = 5333,
HitKindNV = 5333,
CurrentRayTimeNV = 5334,
+ HitTriangleVertexPositionsKHR = 5335,
IncomingRayFlagsKHR = 5351,
IncomingRayFlagsNV = 5351,
RayGeometryIndexKHR = 5352,
@@ -951,6 +958,9 @@ spv = {
ShaderViewportIndex = 70,
UniformDecoration = 71,
CoreBuiltinsARM = 4165,
+ TileImageColorReadAccessEXT = 4166,
+ TileImageDepthReadAccessEXT = 4167,
+ TileImageStencilReadAccessEXT = 4168,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -1033,6 +1043,7 @@ spv = {
UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
StorageTexelBufferArrayNonUniformIndexing = 5312,
StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
+ RayTracingPositionFetchKHR = 5336,
RayTracingNV = 5340,
RayTracingMotionBlurNV = 5341,
VulkanMemoryModel = 5345,
@@ -1053,6 +1064,7 @@ spv = {
RayTracingOpacityMicromapEXT = 5381,
ShaderInvocationReorderNV = 5383,
BindlessTextureNV = 5390,
+ RayQueryPositionFetchKHR = 5391,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
SubgroupImageBlockIOINTEL = 5570,
@@ -1559,6 +1571,9 @@ spv = {
OpPtrEqual = 401,
OpPtrNotEqual = 402,
OpPtrDiff = 403,
+ OpColorAttachmentReadEXT = 4160,
+ OpDepthAttachmentReadEXT = 4161,
+ OpStencilAttachmentReadEXT = 4162,
OpTerminateInvocation = 4416,
OpSubgroupBallotKHR = 4421,
OpSubgroupFirstInvocationKHR = 4422,
@@ -1651,6 +1666,7 @@ spv = {
OpTraceNV = 5337,
OpTraceMotionNV = 5338,
OpTraceRayMotionNV = 5339,
+ OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
OpTypeAccelerationStructureKHR = 5341,
OpTypeAccelerationStructureNV = 5341,
OpExecuteCallableNV = 5344,
diff --git a/include/spirv/unified1/spirv.py b/include/spirv/unified1/spirv.py
index 58664d8..ed3896f 100644
--- a/include/spirv/unified1/spirv.py
+++ b/include/spirv/unified1/spirv.py
@@ -60,6 +60,7 @@ spv = {
'HLSL' : 5,
'CPP_for_OpenCL' : 6,
'SYCL' : 7,
+ 'HERO_C' : 8,
},
'ExecutionModel' : {
@@ -143,6 +144,9 @@ spv = {
'SubgroupsPerWorkgroupId' : 37,
'LocalSizeId' : 38,
'LocalSizeHintId' : 39,
+ 'NonCoherentColorAttachmentReadEXT' : 4169,
+ 'NonCoherentDepthAttachmentReadEXT' : 4170,
+ 'NonCoherentStencilAttachmentReadEXT' : 4171,
'SubgroupUniformControlFlowKHR' : 4421,
'PostDepthCoverage' : 4446,
'DenormPreserve' : 4459,
@@ -201,6 +205,7 @@ spv = {
'AtomicCounter' : 10,
'Image' : 11,
'StorageBuffer' : 12,
+ 'TileImageEXT' : 4172,
'CallableDataKHR' : 5328,
'CallableDataNV' : 5328,
'IncomingCallableDataKHR' : 5329,
@@ -230,6 +235,7 @@ spv = {
'Rect' : 4,
'Buffer' : 5,
'SubpassData' : 6,
+ 'TileImageDataEXT' : 4173,
},
'SamplerAddressingMode' : {
@@ -690,6 +696,7 @@ spv = {
'HitKindKHR' : 5333,
'HitKindNV' : 5333,
'CurrentRayTimeNV' : 5334,
+ 'HitTriangleVertexPositionsKHR' : 5335,
'IncomingRayFlagsKHR' : 5351,
'IncomingRayFlagsNV' : 5351,
'RayGeometryIndexKHR' : 5352,
@@ -951,6 +958,9 @@ spv = {
'ShaderViewportIndex' : 70,
'UniformDecoration' : 71,
'CoreBuiltinsARM' : 4165,
+ 'TileImageColorReadAccessEXT' : 4166,
+ 'TileImageDepthReadAccessEXT' : 4167,
+ 'TileImageStencilReadAccessEXT' : 4168,
'FragmentShadingRateKHR' : 4422,
'SubgroupBallotKHR' : 4423,
'DrawParameters' : 4427,
@@ -1033,6 +1043,7 @@ spv = {
'UniformTexelBufferArrayNonUniformIndexingEXT' : 5311,
'StorageTexelBufferArrayNonUniformIndexing' : 5312,
'StorageTexelBufferArrayNonUniformIndexingEXT' : 5312,
+ 'RayTracingPositionFetchKHR' : 5336,
'RayTracingNV' : 5340,
'RayTracingMotionBlurNV' : 5341,
'VulkanMemoryModel' : 5345,
@@ -1053,6 +1064,7 @@ spv = {
'RayTracingOpacityMicromapEXT' : 5381,
'ShaderInvocationReorderNV' : 5383,
'BindlessTextureNV' : 5390,
+ 'RayQueryPositionFetchKHR' : 5391,
'SubgroupShuffleINTEL' : 5568,
'SubgroupBufferBlockIOINTEL' : 5569,
'SubgroupImageBlockIOINTEL' : 5570,
@@ -1559,6 +1571,9 @@ spv = {
'OpPtrEqual' : 401,
'OpPtrNotEqual' : 402,
'OpPtrDiff' : 403,
+ 'OpColorAttachmentReadEXT' : 4160,
+ 'OpDepthAttachmentReadEXT' : 4161,
+ 'OpStencilAttachmentReadEXT' : 4162,
'OpTerminateInvocation' : 4416,
'OpSubgroupBallotKHR' : 4421,
'OpSubgroupFirstInvocationKHR' : 4422,
@@ -1651,6 +1666,7 @@ spv = {
'OpTraceNV' : 5337,
'OpTraceMotionNV' : 5338,
'OpTraceRayMotionNV' : 5339,
+ 'OpRayQueryGetIntersectionTriangleVertexPositionsKHR' : 5340,
'OpTypeAccelerationStructureKHR' : 5341,
'OpTypeAccelerationStructureNV' : 5341,
'OpExecuteCallableNV' : 5344,
diff --git a/include/spirv/unified1/spv.d b/include/spirv/unified1/spv.d
index 5b94498..e79ca51 100644
--- a/include/spirv/unified1/spv.d
+++ b/include/spirv/unified1/spv.d
@@ -68,6 +68,7 @@ enum SourceLanguage : uint
HLSL = 5,
CPP_for_OpenCL = 6,
SYCL = 7,
+ HERO_C = 8,
}
enum ExecutionModel : uint
@@ -155,6 +156,9 @@ enum ExecutionMode : uint
SubgroupsPerWorkgroupId = 37,
LocalSizeId = 38,
LocalSizeHintId = 39,
+ NonCoherentColorAttachmentReadEXT = 4169,
+ NonCoherentDepthAttachmentReadEXT = 4170,
+ NonCoherentStencilAttachmentReadEXT = 4171,
SubgroupUniformControlFlowKHR = 4421,
PostDepthCoverage = 4446,
DenormPreserve = 4459,
@@ -214,6 +218,7 @@ enum StorageClass : uint
AtomicCounter = 10,
Image = 11,
StorageBuffer = 12,
+ TileImageEXT = 4172,
CallableDataKHR = 5328,
CallableDataNV = 5328,
IncomingCallableDataKHR = 5329,
@@ -244,6 +249,7 @@ enum Dim : uint
Rect = 4,
Buffer = 5,
SubpassData = 6,
+ TileImageDataEXT = 4173,
}
enum SamplerAddressingMode : uint
@@ -719,6 +725,7 @@ enum BuiltIn : uint
HitKindKHR = 5333,
HitKindNV = 5333,
CurrentRayTimeNV = 5334,
+ HitTriangleVertexPositionsKHR = 5335,
IncomingRayFlagsKHR = 5351,
IncomingRayFlagsNV = 5351,
RayGeometryIndexKHR = 5352,
@@ -996,6 +1003,9 @@ enum Capability : uint
ShaderViewportIndex = 70,
UniformDecoration = 71,
CoreBuiltinsARM = 4165,
+ TileImageColorReadAccessEXT = 4166,
+ TileImageDepthReadAccessEXT = 4167,
+ TileImageStencilReadAccessEXT = 4168,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -1078,6 +1088,7 @@ enum Capability : uint
UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
StorageTexelBufferArrayNonUniformIndexing = 5312,
StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
+ RayTracingPositionFetchKHR = 5336,
RayTracingNV = 5340,
RayTracingMotionBlurNV = 5341,
VulkanMemoryModel = 5345,
@@ -1098,6 +1109,7 @@ enum Capability : uint
RayTracingOpacityMicromapEXT = 5381,
ShaderInvocationReorderNV = 5383,
BindlessTextureNV = 5390,
+ RayQueryPositionFetchKHR = 5391,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
SubgroupImageBlockIOINTEL = 5570,
@@ -1617,6 +1629,9 @@ enum Op : uint
OpPtrEqual = 401,
OpPtrNotEqual = 402,
OpPtrDiff = 403,
+ OpColorAttachmentReadEXT = 4160,
+ OpDepthAttachmentReadEXT = 4161,
+ OpStencilAttachmentReadEXT = 4162,
OpTerminateInvocation = 4416,
OpSubgroupBallotKHR = 4421,
OpSubgroupFirstInvocationKHR = 4422,
@@ -1709,6 +1724,7 @@ enum Op : uint
OpTraceNV = 5337,
OpTraceMotionNV = 5338,
OpTraceRayMotionNV = 5339,
+ OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
OpTypeAccelerationStructureKHR = 5341,
OpTypeAccelerationStructureNV = 5341,
OpExecuteCallableNV = 5344,