Merge pull request #294 from kpet/clspv-texel-buffer
Add support for texel buffers to clspv non-semantic instruction set
diff --git a/include/spirv/spir-v.xml b/include/spirv/spir-v.xml
index 7acaed3..dad141b 100644
--- a/include/spirv/spir-v.xml
+++ b/include/spirv/spir-v.xml
@@ -85,7 +85,8 @@
<id value="32" vendor="TornadoVM" tool="SPIRV Beehive Toolkit" comment="https://github.com/beehive-lab/spirv-beehive-toolkit"/>
<id value="33" vendor="DragonJoker" tool="ShaderWriter" comment="Contact Sylvain Doremus, https://github.com/DragonJoker/ShaderWriter"/>
<id value="34" vendor="Rayan Hatout" tool="SPIRVSmith" comment="Contact Rayan Hatout rayan.hatout@gmail.com, Repo https://github.com/rayanht/SPIRVSmith"/>
- <unused start="35" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
+ <id value="35" vendor="Saarland University" tool="Shady" comment="Contact Hugo Devillers devillers@uni-saarland.de, Repo https://github.com/Hugobros3/shady"/>
+ <unused start="36" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
</ids>
<!-- SECTION: SPIR-V Opcodes and Enumerants -->
diff --git a/include/spirv/unified1/spirv.bf b/include/spirv/unified1/spirv.bf
index f83434a..4bdb937 100644
--- a/include/spirv/unified1/spirv.bf
+++ b/include/spirv/unified1/spirv.bf
@@ -1063,6 +1063,7 @@
FragmentShaderPixelInterlockEXT = 5378,
DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
+ RayTracingOpacityMicromapEXT = 5381,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
@@ -1136,6 +1137,7 @@
CullNoOpaqueKHR = 7,
SkipTrianglesKHR = 8,
SkipAABBsKHR = 9,
+ ForceOpacityMicromap2StateEXT = 10,
}
[AllowDuplicates, CRepr] public enum RayFlagsMask
@@ -1151,6 +1153,7 @@
CullNoOpaqueKHR = 0x00000080,
SkipTrianglesKHR = 0x00000100,
SkipAABBsKHR = 0x00000200,
+ ForceOpacityMicromap2StateEXT = 0x00000400,
}
[AllowDuplicates, CRepr] public enum RayQueryIntersection
diff --git a/include/spirv/unified1/spirv.core.grammar.json b/include/spirv/unified1/spirv.core.grammar.json
index 5cedfb0..c6517c4 100644
--- a/include/spirv/unified1/spirv.core.grammar.json
+++ b/include/spirv/unified1/spirv.core.grammar.json
@@ -9409,6 +9409,12 @@
"value" : "0x0200",
"capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
"version" : "None"
+ },
+ {
+ "enumerant" : "ForceOpacityMicromap2StateEXT",
+ "value" : "0x0400",
+ "capabilities" : [ "RayTracingOpacityMicromapEXT" ],
+ "version" : "None"
}
]
},
@@ -13911,6 +13917,13 @@
"version" : "1.6"
},
{
+ "enumerant" : "RayTracingOpacityMicromapEXT",
+ "value" : 5381,
+ "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
+ "extensions" : [ "SPV_EXT_opacity_micromap" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "BindlessTextureNV",
"value" : 5390,
"extensions" : [ "SPV_NV_bindless_texture" ],
diff --git a/include/spirv/unified1/spirv.cs b/include/spirv/unified1/spirv.cs
index 9a0b14f..0cf3d34 100644
--- a/include/spirv/unified1/spirv.cs
+++ b/include/spirv/unified1/spirv.cs
@@ -1062,6 +1062,7 @@
FragmentShaderPixelInterlockEXT = 5378,
DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
+ RayTracingOpacityMicromapEXT = 5381,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
@@ -1135,6 +1136,7 @@
CullNoOpaqueKHR = 7,
SkipTrianglesKHR = 8,
SkipAABBsKHR = 9,
+ ForceOpacityMicromap2StateEXT = 10,
}
public enum RayFlagsMask
@@ -1150,6 +1152,7 @@
CullNoOpaqueKHR = 0x00000080,
SkipTrianglesKHR = 0x00000100,
SkipAABBsKHR = 0x00000200,
+ ForceOpacityMicromap2StateEXT = 0x00000400,
}
public enum RayQueryIntersection
diff --git a/include/spirv/unified1/spirv.h b/include/spirv/unified1/spirv.h
index c3b1b3b..af4f06b 100644
--- a/include/spirv/unified1/spirv.h
+++ b/include/spirv/unified1/spirv.h
@@ -1062,6 +1062,7 @@
SpvCapabilityFragmentShaderPixelInterlockEXT = 5378,
SpvCapabilityDemoteToHelperInvocation = 5379,
SpvCapabilityDemoteToHelperInvocationEXT = 5379,
+ SpvCapabilityRayTracingOpacityMicromapEXT = 5381,
SpvCapabilityBindlessTextureNV = 5390,
SpvCapabilitySubgroupShuffleINTEL = 5568,
SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
@@ -1135,6 +1136,7 @@
SpvRayFlagsCullNoOpaqueKHRShift = 7,
SpvRayFlagsSkipTrianglesKHRShift = 8,
SpvRayFlagsSkipAABBsKHRShift = 9,
+ SpvRayFlagsForceOpacityMicromap2StateEXTShift = 10,
SpvRayFlagsMax = 0x7fffffff,
} SpvRayFlagsShift;
@@ -1150,6 +1152,7 @@
SpvRayFlagsCullNoOpaqueKHRMask = 0x00000080,
SpvRayFlagsSkipTrianglesKHRMask = 0x00000100,
SpvRayFlagsSkipAABBsKHRMask = 0x00000200,
+ SpvRayFlagsForceOpacityMicromap2StateEXTMask = 0x00000400,
} SpvRayFlagsMask;
typedef enum SpvRayQueryIntersection_ {
diff --git a/include/spirv/unified1/spirv.hpp b/include/spirv/unified1/spirv.hpp
index 38813cc..b7ec5d7 100644
--- a/include/spirv/unified1/spirv.hpp
+++ b/include/spirv/unified1/spirv.hpp
@@ -1058,6 +1058,7 @@
CapabilityFragmentShaderPixelInterlockEXT = 5378,
CapabilityDemoteToHelperInvocation = 5379,
CapabilityDemoteToHelperInvocationEXT = 5379,
+ CapabilityRayTracingOpacityMicromapEXT = 5381,
CapabilityBindlessTextureNV = 5390,
CapabilitySubgroupShuffleINTEL = 5568,
CapabilitySubgroupBufferBlockIOINTEL = 5569,
@@ -1131,6 +1132,7 @@
RayFlagsCullNoOpaqueKHRShift = 7,
RayFlagsSkipTrianglesKHRShift = 8,
RayFlagsSkipAABBsKHRShift = 9,
+ RayFlagsForceOpacityMicromap2StateEXTShift = 10,
RayFlagsMax = 0x7fffffff,
};
@@ -1146,6 +1148,7 @@
RayFlagsCullNoOpaqueKHRMask = 0x00000080,
RayFlagsSkipTrianglesKHRMask = 0x00000100,
RayFlagsSkipAABBsKHRMask = 0x00000200,
+ RayFlagsForceOpacityMicromap2StateEXTMask = 0x00000400,
};
enum RayQueryIntersection {
diff --git a/include/spirv/unified1/spirv.hpp11 b/include/spirv/unified1/spirv.hpp11
index 10309fe..f0f5871 100644
--- a/include/spirv/unified1/spirv.hpp11
+++ b/include/spirv/unified1/spirv.hpp11
@@ -1058,6 +1058,7 @@
FragmentShaderPixelInterlockEXT = 5378,
DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
+ RayTracingOpacityMicromapEXT = 5381,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
@@ -1131,6 +1132,7 @@
CullNoOpaqueKHR = 7,
SkipTrianglesKHR = 8,
SkipAABBsKHR = 9,
+ ForceOpacityMicromap2StateEXT = 10,
Max = 0x7fffffff,
};
@@ -1146,6 +1148,7 @@
CullNoOpaqueKHR = 0x00000080,
SkipTrianglesKHR = 0x00000100,
SkipAABBsKHR = 0x00000200,
+ ForceOpacityMicromap2StateEXT = 0x00000400,
};
enum class RayQueryIntersection : unsigned {
diff --git a/include/spirv/unified1/spirv.json b/include/spirv/unified1/spirv.json
index ebd09ee..466f0b0 100644
--- a/include/spirv/unified1/spirv.json
+++ b/include/spirv/unified1/spirv.json
@@ -1040,6 +1040,7 @@
"FragmentShaderPixelInterlockEXT": 5378,
"DemoteToHelperInvocation": 5379,
"DemoteToHelperInvocationEXT": 5379,
+ "RayTracingOpacityMicromapEXT": 5381,
"BindlessTextureNV": 5390,
"SubgroupShuffleINTEL": 5568,
"SubgroupBufferBlockIOINTEL": 5569,
@@ -1115,7 +1116,8 @@
"CullOpaqueKHR": 6,
"CullNoOpaqueKHR": 7,
"SkipTrianglesKHR": 8,
- "SkipAABBsKHR": 9
+ "SkipAABBsKHR": 9,
+ "ForceOpacityMicromap2StateEXT": 10
}
},
{
diff --git a/include/spirv/unified1/spirv.lua b/include/spirv/unified1/spirv.lua
index 1d784f7..b763c84 100644
--- a/include/spirv/unified1/spirv.lua
+++ b/include/spirv/unified1/spirv.lua
@@ -1020,6 +1020,7 @@
FragmentShaderPixelInterlockEXT = 5378,
DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
+ RayTracingOpacityMicromapEXT = 5381,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
@@ -1092,6 +1093,7 @@
CullNoOpaqueKHR = 7,
SkipTrianglesKHR = 8,
SkipAABBsKHR = 9,
+ ForceOpacityMicromap2StateEXT = 10,
},
RayFlagsMask = {
@@ -1106,6 +1108,7 @@
CullNoOpaqueKHR = 0x00000080,
SkipTrianglesKHR = 0x00000100,
SkipAABBsKHR = 0x00000200,
+ ForceOpacityMicromap2StateEXT = 0x00000400,
},
RayQueryIntersection = {
diff --git a/include/spirv/unified1/spirv.py b/include/spirv/unified1/spirv.py
index 970649f..12e3401 100644
--- a/include/spirv/unified1/spirv.py
+++ b/include/spirv/unified1/spirv.py
@@ -1020,6 +1020,7 @@
'FragmentShaderPixelInterlockEXT' : 5378,
'DemoteToHelperInvocation' : 5379,
'DemoteToHelperInvocationEXT' : 5379,
+ 'RayTracingOpacityMicromapEXT' : 5381,
'BindlessTextureNV' : 5390,
'SubgroupShuffleINTEL' : 5568,
'SubgroupBufferBlockIOINTEL' : 5569,
@@ -1092,6 +1093,7 @@
'CullNoOpaqueKHR' : 7,
'SkipTrianglesKHR' : 8,
'SkipAABBsKHR' : 9,
+ 'ForceOpacityMicromap2StateEXT' : 10,
},
'RayFlagsMask' : {
@@ -1106,6 +1108,7 @@
'CullNoOpaqueKHR' : 0x00000080,
'SkipTrianglesKHR' : 0x00000100,
'SkipAABBsKHR' : 0x00000200,
+ 'ForceOpacityMicromap2StateEXT' : 0x00000400,
},
'RayQueryIntersection' : {
diff --git a/include/spirv/unified1/spv.d b/include/spirv/unified1/spv.d
index a8c03ff..6462405 100644
--- a/include/spirv/unified1/spv.d
+++ b/include/spirv/unified1/spv.d
@@ -1065,6 +1065,7 @@
FragmentShaderPixelInterlockEXT = 5378,
DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
+ RayTracingOpacityMicromapEXT = 5381,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
SubgroupBufferBlockIOINTEL = 5569,
@@ -1138,6 +1139,7 @@
CullNoOpaqueKHR = 7,
SkipTrianglesKHR = 8,
SkipAABBsKHR = 9,
+ ForceOpacityMicromap2StateEXT = 10,
}
enum RayFlagsMask : uint
@@ -1153,6 +1155,7 @@
CullNoOpaqueKHR = 0x00000080,
SkipTrianglesKHR = 0x00000100,
SkipAABBsKHR = 0x00000200,
+ ForceOpacityMicromap2StateEXT = 0x00000400,
}
enum RayQueryIntersection : uint