SPV: Update to the latest SPIR-V header, includes variable-rate shading
This commit is contained in:
parent
3ead011912
commit
490eba591d
@ -274,6 +274,8 @@ enum ImageFormat {
|
|||||||
ImageFormatRg8ui = 37,
|
ImageFormatRg8ui = 37,
|
||||||
ImageFormatR16ui = 38,
|
ImageFormatR16ui = 38,
|
||||||
ImageFormatR8ui = 39,
|
ImageFormatR8ui = 39,
|
||||||
|
ImageFormatR64ui = 40,
|
||||||
|
ImageFormatR64i = 41,
|
||||||
ImageFormatMax = 0x7fffffff,
|
ImageFormatMax = 0x7fffffff,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -558,8 +560,10 @@ enum BuiltIn {
|
|||||||
BuiltInBaseVertex = 4424,
|
BuiltInBaseVertex = 4424,
|
||||||
BuiltInBaseInstance = 4425,
|
BuiltInBaseInstance = 4425,
|
||||||
BuiltInDrawIndex = 4426,
|
BuiltInDrawIndex = 4426,
|
||||||
|
BuiltInPrimitiveShadingRateKHR = 4432,
|
||||||
BuiltInDeviceIndex = 4438,
|
BuiltInDeviceIndex = 4438,
|
||||||
BuiltInViewIndex = 4440,
|
BuiltInViewIndex = 4440,
|
||||||
|
BuiltInShadingRateKHR = 4444,
|
||||||
BuiltInBaryCoordNoPerspAMD = 4992,
|
BuiltInBaryCoordNoPerspAMD = 4992,
|
||||||
BuiltInBaryCoordNoPerspCentroidAMD = 4993,
|
BuiltInBaryCoordNoPerspCentroidAMD = 4993,
|
||||||
BuiltInBaryCoordNoPerspSampleAMD = 4994,
|
BuiltInBaryCoordNoPerspSampleAMD = 4994,
|
||||||
@ -870,6 +874,7 @@ enum Capability {
|
|||||||
CapabilityGroupNonUniformQuad = 68,
|
CapabilityGroupNonUniformQuad = 68,
|
||||||
CapabilityShaderLayer = 69,
|
CapabilityShaderLayer = 69,
|
||||||
CapabilityShaderViewportIndex = 70,
|
CapabilityShaderViewportIndex = 70,
|
||||||
|
CapabilityFragmentShadingRateKHR = 4422,
|
||||||
CapabilitySubgroupBallotKHR = 4423,
|
CapabilitySubgroupBallotKHR = 4423,
|
||||||
CapabilityDrawParameters = 4427,
|
CapabilityDrawParameters = 4427,
|
||||||
CapabilitySubgroupVoteKHR = 4431,
|
CapabilitySubgroupVoteKHR = 4431,
|
||||||
@ -900,6 +905,7 @@ enum Capability {
|
|||||||
CapabilityFragmentMaskAMD = 5010,
|
CapabilityFragmentMaskAMD = 5010,
|
||||||
CapabilityStencilExportEXT = 5013,
|
CapabilityStencilExportEXT = 5013,
|
||||||
CapabilityImageReadWriteLodAMD = 5015,
|
CapabilityImageReadWriteLodAMD = 5015,
|
||||||
|
CapabilityInt64ImageEXT = 5016,
|
||||||
CapabilityShaderClockKHR = 5055,
|
CapabilityShaderClockKHR = 5055,
|
||||||
CapabilitySampleMaskOverrideCoverageNV = 5249,
|
CapabilitySampleMaskOverrideCoverageNV = 5249,
|
||||||
CapabilityGeometryShaderPassthroughNV = 5251,
|
CapabilityGeometryShaderPassthroughNV = 5251,
|
||||||
@ -1024,6 +1030,22 @@ enum RayQueryCandidateIntersectionType {
|
|||||||
RayQueryCandidateIntersectionTypeMax = 0x7fffffff,
|
RayQueryCandidateIntersectionTypeMax = 0x7fffffff,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum FragmentShadingRateShift {
|
||||||
|
FragmentShadingRateVertical2PixelsShift = 0,
|
||||||
|
FragmentShadingRateVertical4PixelsShift = 1,
|
||||||
|
FragmentShadingRateHorizontal2PixelsShift = 2,
|
||||||
|
FragmentShadingRateHorizontal4PixelsShift = 3,
|
||||||
|
FragmentShadingRateMax = 0x7fffffff,
|
||||||
|
};
|
||||||
|
|
||||||
|
enum FragmentShadingRateMask {
|
||||||
|
FragmentShadingRateMaskNone = 0,
|
||||||
|
FragmentShadingRateVertical2PixelsMask = 0x00000001,
|
||||||
|
FragmentShadingRateVertical4PixelsMask = 0x00000002,
|
||||||
|
FragmentShadingRateHorizontal2PixelsMask = 0x00000004,
|
||||||
|
FragmentShadingRateHorizontal4PixelsMask = 0x00000008,
|
||||||
|
};
|
||||||
|
|
||||||
enum Op {
|
enum Op {
|
||||||
OpNop = 0,
|
OpNop = 0,
|
||||||
OpUndef = 1,
|
OpUndef = 1,
|
||||||
@ -1369,6 +1391,7 @@ enum Op {
|
|||||||
OpPtrEqual = 401,
|
OpPtrEqual = 401,
|
||||||
OpPtrNotEqual = 402,
|
OpPtrNotEqual = 402,
|
||||||
OpPtrDiff = 403,
|
OpPtrDiff = 403,
|
||||||
|
OpTerminateInvocation = 4416,
|
||||||
OpSubgroupBallotKHR = 4421,
|
OpSubgroupBallotKHR = 4421,
|
||||||
OpSubgroupFirstInvocationKHR = 4422,
|
OpSubgroupFirstInvocationKHR = 4422,
|
||||||
OpSubgroupAllKHR = 4428,
|
OpSubgroupAllKHR = 4428,
|
||||||
@ -1939,6 +1962,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
|
|||||||
case OpPtrEqual: *hasResult = true; *hasResultType = true; break;
|
case OpPtrEqual: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
|
case OpPtrNotEqual: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpPtrDiff: *hasResult = true; *hasResultType = true; break;
|
case OpPtrDiff: *hasResult = true; *hasResultType = true; break;
|
||||||
|
case OpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
|
||||||
case OpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
|
case OpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
|
case OpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpSubgroupAllKHR: *hasResult = true; *hasResultType = true; break;
|
case OpSubgroupAllKHR: *hasResult = true; *hasResultType = true; break;
|
||||||
@ -2164,6 +2188,7 @@ inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask
|
|||||||
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 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 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 FragmentShadingRateMask operator|(FragmentShadingRateMask a, FragmentShadingRateMask b) { return FragmentShadingRateMask(unsigned(a) | unsigned(b)); }
|
||||||
|
|
||||||
} // end namespace spv
|
} // end namespace spv
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user