summaryrefslogtreecommitdiff
path: root/source/slang/hlsl.meta.slang
diff options
context:
space:
mode:
authorEllie Hermaszewska <ellieh@nvidia.com>2023-02-03 12:18:49 +0800
committerGitHub <noreply@github.com>2023-02-03 12:18:49 +0800
commita00dc69ca8dfbc346940c7d03d67c1cb229577fb (patch)
treece102791bfe2b052edb4e4fc3453a92fc53fb3a8 /source/slang/hlsl.meta.slang
parentbbd1e1786401bb88c34802b987d4da72e2364503 (diff)
Use SPIR-V opcode names rather than numbers (#2571)
* s/emititng blobal/emitting global * Use SPIR-V opcode names rather than numbers * regenerate Visual Studio project files * Use names for extended SPIR-V GLSL instructions * Add missing operand for SPIR-V extended instruction * Add warning aginst modifying generated hashing files * Squash warnings on MSVC
Diffstat (limited to 'source/slang/hlsl.meta.slang')
-rw-r--r--source/slang/hlsl.meta.slang240
1 files changed, 120 insertions, 120 deletions
diff --git a/source/slang/hlsl.meta.slang b/source/slang/hlsl.meta.slang
index ed150a4c0..f5b138f25 100644
--- a/source/slang/hlsl.meta.slang
+++ b/source/slang/hlsl.meta.slang
@@ -221,14 +221,14 @@ struct StructuredBuffer
out uint stride);
__target_intrinsic(glsl, "$0._data[$1]")
- __target_intrinsic(spirv_direct, "%addr = 65 resultType*StorageBuffer resultId _0 const(int, 0) _1; 61 resultType resultId %addr;")
+ __target_intrinsic(spirv_direct, "%addr = OpAccessChain resultType*StorageBuffer resultId _0 const(int, 0) _1; OpLoad resultType resultId %addr;")
T Load(int location);
T Load(int location, out uint status);
__subscript(uint index) -> T
{
__target_intrinsic(glsl, "$0._data[$1]")
- __target_intrinsic(spirv_direct, "%addr = 65 resultType*StorageBuffer resultId _0 const(int, 0) _1; 61 resultType resultId %addr;")
+ __target_intrinsic(spirv_direct, "%addr = OpAccessChain resultType*StorageBuffer resultId _0 const(int, 0) _1; OpLoad resultType resultId %addr;")
get;
};
};
@@ -697,14 +697,14 @@ struct $(item.name)
uint IncrementCounter();
__target_intrinsic(glsl, "$0._data[$1]")
- __target_intrinsic(spirv_direct, "%addr = 65 resultType*StorageBuffer resultId _0 const(int, 0) _1; 61 resultType resultId %addr;")
+ __target_intrinsic(spirv_direct, "%addr = OpAccessChain resultType*StorageBuffer resultId _0 const(int, 0) _1; OpLoad resultType resultId %addr;")
T Load(int location);
T Load(int location, out uint status);
__subscript(uint index) -> T
{
__target_intrinsic(glsl, "$0._data[$1]")
- __target_intrinsic(spirv_direct, "*StorageBuffer 65 resultType resultId _0 const(int, 0) _1")
+ __target_intrinsic(spirv_direct, "*StorageBuffer OpAccessChain resultType resultId _0 const(int, 0) _1")
ref;
}
};
@@ -797,7 +797,7 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_abs($0)")
__target_intrinsic(cpp, "$P_abs($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fi(4,5) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fi(FAbs, SAbs) _0")
T abs(T x);
/*{
// Note: this simple definition may not be appropriate for floating-point inputs
@@ -807,7 +807,7 @@ T abs(T x);
__generic<T : __BuiltinIntegerType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fi(4,5) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fi(FAbs, SAbs) _0")
vector<T, N> abs(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, abs, x);
@@ -825,13 +825,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_abs($0)")
__target_intrinsic(cpp, "$P_abs($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fi(4,5) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fi(FAbs, SAbs) _0")
T abs(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fi(4,5) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fi(FAbs, SAbs) _0")
vector<T, N> abs(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, abs, x);
@@ -851,13 +851,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_acos($0)")
__target_intrinsic(cpp, "$P_acos($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 17 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Acos _0")
T acos(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 17 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Acos _0")
vector<T, N> acos(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, acos, x);
@@ -952,7 +952,7 @@ bool any(matrix<T, N, M> x);
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "packDouble2x32(uvec2($0, $1))")
-__target_intrinsic(spirv_direct, "%v = 80 _type(uint2) resultId _0 _1; 12 resultType resultId glsl450 59 %v")
+__target_intrinsic(spirv_direct, "%v = OpCompositeConstruct _type(uint2) resultId _0 _1; OpExtInst resultType resultId glsl450 59 %v")
__glsl_extension(GL_ARB_gpu_shader5)
double asdouble(uint lowbits, uint highbits);
@@ -960,18 +960,18 @@ double asdouble(uint lowbits, uint highbits);
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "intBitsToFloat")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
float asfloat(int x);
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "uintBitsToFloat")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
float asfloat(uint x);
__generic<let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "intBitsToFloat")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
vector<float, N> asfloat(vector< int, N> x)
{
VECTOR_MAP_UNARY(float, N, asfloat, x);
@@ -980,7 +980,7 @@ vector<float, N> asfloat(vector< int, N> x)
__generic<let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "uintBitsToFloat")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
vector<float,N> asfloat(vector<uint,N> x)
{
VECTOR_MAP_UNARY(float, N, asfloat, x);
@@ -1021,13 +1021,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_asin($0)")
__target_intrinsic(cpp, "$P_asin($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 16 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Asin _0")
T asin(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 16 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Asin _0")
vector<T, N> asin(vector<T, N> x)
{
VECTOR_MAP_UNARY(T,N,asin,x);
@@ -1044,18 +1044,18 @@ matrix<T, N, M> asin(matrix<T, N, M> x)
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "floatBitsToInt")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
int asint(float x);
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "int($0)")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
int asint(uint x);
__generic<let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "floatBitsToInt")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
vector<int, N> asint(vector<float, N> x)
{
VECTOR_MAP_UNARY(int, N, asint, x);
@@ -1064,7 +1064,7 @@ vector<int, N> asint(vector<float, N> x)
__generic<let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "ivec$N0($0)")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
vector<int, N> asint(vector<uint, N> x)
{
VECTOR_MAP_UNARY(int, N, asint, x);
@@ -1110,18 +1110,18 @@ void asuint(double value, out uint lowbits, out uint highbits);
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "floatBitsToUint")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
uint asuint(float x);
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "uint($0)")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
uint asuint(int x);
__generic<let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "floatBitsToUint")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
vector<uint,N> asuint(vector<float,N> x)
{
VECTOR_MAP_UNARY(uint, N, asuint, x);
@@ -1130,7 +1130,7 @@ vector<uint,N> asuint(vector<float,N> x)
__generic<let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "uvec$N0($0)")
-__target_intrinsic(spirv_direct, "124 resultType resultId _0")
+__target_intrinsic(spirv_direct, "OpBitcast resultType resultId _0")
vector<uint, N> asuint(vector<int, N> x)
{
VECTOR_MAP_UNARY(uint, N, asuint, x);
@@ -1242,13 +1242,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_atan($0)")
__target_intrinsic(cpp, "$P_atan($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 18 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Atan _0")
T atan(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 18 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Atan _0")
vector<T, N> atan(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, atan, x);
@@ -1266,13 +1266,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl,"atan($0,$1)")
__target_intrinsic(cuda, "$P_atan2($0, $1)")
__target_intrinsic(cpp, "$P_atan2($0, $1)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 25 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Atan2 _0 _1")
T atan2(T y, T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl,"atan($0,$1)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 25 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Atan2 _0 _1")
vector<T, N> atan2(vector<T, N> y, vector<T, N> x)
{
VECTOR_MAP_BINARY(T, N, atan2, y, x);
@@ -1291,13 +1291,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_ceil($0)")
__target_intrinsic(cpp, "$P_ceil($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 9 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Ceil _0")
T ceil(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 9 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Ceil _0")
vector<T, N> ceil(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, ceil, x);
@@ -1318,7 +1318,7 @@ bool CheckAccessFullyMapped(uint status);
__generic<T : __BuiltinIntegerType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(43,44,45) _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FClamp, UClamp, SClamp) _0 _1 _2")
T clamp(T x, T minBound, T maxBound)
{
return min(max(x, minBound), maxBound);
@@ -1327,7 +1327,7 @@ T clamp(T x, T minBound, T maxBound)
__generic<T : __BuiltinIntegerType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(43,44,45) _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FClamp, UClamp, SClamp) _0 _1 _2")
vector<T, N> clamp(vector<T, N> x, vector<T, N> minBound, vector<T, N> maxBound)
{
return min(max(x, minBound), maxBound);
@@ -1343,7 +1343,7 @@ matrix<T,N,M> clamp(matrix<T,N,M> x, matrix<T,N,M> minBound, matrix<T,N,M> maxBo
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(43,44,45) _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FClamp, UClamp, SClamp) _0 _1 _2")
T clamp(T x, T minBound, T maxBound)
{
return min(max(x, minBound), maxBound);
@@ -1352,7 +1352,7 @@ T clamp(T x, T minBound, T maxBound)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(43,44,45) _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FClamp, UClamp, SClamp) _0 _1 _2")
vector<T, N> clamp(vector<T, N> x, vector<T, N> minBound, vector<T, N> maxBound)
{
return min(max(x, minBound), maxBound);
@@ -1393,13 +1393,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_cos($0)")
__target_intrinsic(cpp, "$P_cos($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 14 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Cos _0")
T cos(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 14 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Cos _0")
vector<T, N> cos(vector<T, N> x)
{
VECTOR_MAP_UNARY(T,N, cos, x);
@@ -1418,13 +1418,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_cosh($0)")
__target_intrinsic(cpp, "$P_cosh($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 20 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Cosh _0")
T cosh(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 20 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Cosh _0")
vector<T,N> cosh(vector<T,N> x)
{
VECTOR_MAP_UNARY(T,N, cosh, x);
@@ -1449,7 +1449,7 @@ uint countbits(uint value);
__generic<T : __BuiltinArithmeticType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 68 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Cross _0 _1")
vector<T,3> cross(vector<T,3> left, vector<T,3> right)
{
return vector<T,3>(
@@ -1599,7 +1599,7 @@ matrix<T, N, M> ddy_fine(matrix<T, N, M> x)
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 12 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Degrees _0")
T degrees(T x)
{
return x * (T(180) / T.getPi());
@@ -1608,7 +1608,7 @@ T degrees(T x)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 12 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Degrees _0")
vector<T, N> degrees(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, degrees, x);
@@ -1626,7 +1626,7 @@ matrix<T, N, M> degrees(matrix<T, N, M> x)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 33 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Determinant _0")
T determinant(matrix<T,N,N> m);
// Barrier for device memory
@@ -1643,7 +1643,7 @@ void DeviceMemoryBarrierWithGroupSync();
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 67 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Distance _0 _1")
T distance(vector<T, N> x, vector<T, N> y)
{
return length(x - y);
@@ -1695,12 +1695,12 @@ RWStructuredBuffer<T> __getEquivalentStructuredBuffer<T>(RWByteAddressBuffer b);
__generic<T : __BuiltinArithmeticType>
__target_intrinsic(glsl, interpolateAtCentroid)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 76 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 InterpolateAtCentroid _0")
T EvaluateAttributeAtCentroid(T x);
__generic<T : __BuiltinArithmeticType, let N : int>
__target_intrinsic(glsl, interpolateAtCentroid)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 76 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 InterpolateAtCentroid _0")
vector<T,N> EvaluateAttributeAtCentroid(vector<T,N> x);
__generic<T : __BuiltinArithmeticType, let N : int, let M : int>
@@ -1712,12 +1712,12 @@ matrix<T,N,M> EvaluateAttributeAtCentroid(matrix<T,N,M> x)
__generic<T : __BuiltinArithmeticType>
__target_intrinsic(glsl, "interpolateAtSample($0, int($1))")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 77 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 InterpolateAtSample _0 _1")
T EvaluateAttributeAtSample(T x, uint sampleindex);
__generic<T : __BuiltinArithmeticType, let N : int>
__target_intrinsic(glsl, "interpolateAtSample($0, int($1))")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 77 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 InterpolateAtSample _0 _1")
vector<T,N> EvaluateAttributeAtSample(vector<T,N> x, uint sampleindex);
__generic<T : __BuiltinArithmeticType, let N : int, let M : int>
@@ -1734,12 +1734,12 @@ matrix<T,N,M> EvaluateAttributeAtSample(matrix<T,N,M> x, uint sampleindex)
__generic<T : __BuiltinArithmeticType>
__target_intrinsic(glsl, "interpolateAtOffset($0, vec2($1) / 16.0f)")
-__target_intrinsic(spirv_direct, "%foffset = 111 _type(float2) resultId _1; %offsetdiv16 = 136 _type(float2) resultId %foffset const(float2, 16.0, 16.0); 12 resultType resultId glsl450 78 _0 %offsetdiv16")
+__target_intrinsic(spirv_direct, "%foffset = OpConvertSToF _type(float2) resultId _1; %offsetdiv16 = 136 _type(float2) resultId %foffset const(float2, 16.0, 16.0); OpExtInst resultType resultId glsl450 78 _0 %offsetdiv16")
T EvaluateAttributeSnapped(T x, int2 offset);
__generic<T : __BuiltinArithmeticType, let N : int>
__target_intrinsic(glsl, "interpolateAtOffset($0, vec2($1) / 16.0f)")
-__target_intrinsic(spirv_direct, "%foffset = 111 _type(float2) resultId _1; %offsetdiv16 = 136 _type(float2) resultId %foffset const(float2, 16.0, 16.0); 12 resultType resultId glsl450 78 _0 %offsetdiv16")
+__target_intrinsic(spirv_direct, "%foffset = OpConvertSToF _type(float2) resultId _1; %offsetdiv16 = 136 _type(float2) resultId %foffset const(float2, 16.0, 16.0); OpExtInst resultType resultId glsl450 78 _0 %offsetdiv16")
vector<T,N> EvaluateAttributeSnapped(vector<T,N> x, int2 offset);
__generic<T : __BuiltinArithmeticType, let N : int, let M : int>
@@ -1761,13 +1761,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_exp($0)")
__target_intrinsic(cpp, "$P_exp($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 27 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Exp _0")
T exp(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 27 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Exp _0")
vector<T, N> exp(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, exp, x);
@@ -1787,13 +1787,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_exp2($0)")
__target_intrinsic(cpp, "$P_exp2($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 29 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Exp2 _0")
T exp2(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 29 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Exp2 _0")
vector<T,N> exp2(vector<T,N> x)
{
VECTOR_MAP_UNARY(T, N, exp2, x);
@@ -1886,12 +1886,12 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl,"findMSB")
__target_intrinsic(cuda, "$P_firstbithigh($0)")
__target_intrinsic(cpp, "$P_firstbithigh($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 74 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindSMsb _0")
int firstbithigh(int value);
__target_intrinsic(hlsl)
__target_intrinsic(glsl,"findMSB")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 74 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindSMsb _0")
__generic<let N : int>
vector<int, N> firstbithigh(vector<int, N> value)
{
@@ -1902,12 +1902,12 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl,"findMSB")
__target_intrinsic(cuda, "$P_firstbithigh($0)")
__target_intrinsic(cpp, "$P_firstbithigh($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 75 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindUMsb _0")
uint firstbithigh(uint value);
__target_intrinsic(hlsl)
__target_intrinsic(glsl,"findMSB")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 75 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindUMsb _0")
__generic<let N : int>
vector<uint,N> firstbithigh(vector<uint,N> value)
{
@@ -1919,12 +1919,12 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl,"findLSB")
__target_intrinsic(cuda, "$P_firstbitlow($0)")
__target_intrinsic(cpp, "$P_firstbitlow($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 73 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindILsb _0")
int firstbitlow(int value);
__target_intrinsic(hlsl)
__target_intrinsic(glsl,"findLSB")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 73 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindILsb _0")
__generic<let N : int>
vector<int,N> firstbitlow(vector<int,N> value)
{
@@ -1935,13 +1935,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl,"findLSB")
__target_intrinsic(cuda, "$P_firstbitlow($0)")
__target_intrinsic(cpp, "$P_firstbitlow($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 73 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindILsb _0")
uint firstbitlow(uint value);
__target_intrinsic(hlsl)
__target_intrinsic(glsl,"findLSB")
__generic<let N : int>
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 73 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FindILsb _0")
vector<uint,N> firstbitlow(vector<uint,N> value)
{
VECTOR_MAP_UNARY(uint, N, firstbitlow, value);
@@ -1954,13 +1954,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_floor($0)")
__target_intrinsic(cpp, "$P_floor($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 8 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Floor _0")
T floor(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 8 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Floor _0")
vector<T, N> floor(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, floor, x);
@@ -1978,13 +1978,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_fma($0, $1, $2)")
__target_intrinsic(cpp, "$P_fma($0, $1, $2)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 50 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Fma _0 _1 _2")
double fma(double a, double b, double c);
__generic<let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 50 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Fma _0 _1 _2")
vector<double, N> fma(vector<double, N> a, vector<double, N> b, vector<double, N> c)
{
VECTOR_MAP_TRINARY(double, N, fma, a, b, c);
@@ -2027,13 +2027,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl, fract)
__target_intrinsic(cuda, "$P_frac($0)")
__target_intrinsic(cpp, "$P_frac($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 10 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Fract _0")
T frac(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, fract)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 10 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Fract _0")
vector<T, N> frac(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, frac, x);
@@ -2049,13 +2049,13 @@ matrix<T, N, M> frac(matrix<T, N, M> x)
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 51 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Frexp _0 _1")
T frexp(T x, out T exp);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 51 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Frexp _0 _1")
vector<T, N> frexp(vector<T, N> x, out vector<T, N> exp)
{
VECTOR_MAP_BINARY(T, N, frexp, x, exp);
@@ -2367,7 +2367,7 @@ matrix<bool, N, M> isnan(matrix<T, N, M> x)
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 53 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Ldexp _0 _1")
T ldexp(T x, T exp)
{
return x * exp2(exp);
@@ -2375,7 +2375,7 @@ T ldexp(T x, T exp)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 53 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Ldexp _0 _1")
vector<T, N> ldexp(vector<T, N> x, vector<T, N> exp)
{
return x * exp2(exp);
@@ -2392,7 +2392,7 @@ matrix<T, N, M> ldexp(matrix<T, N, M> x, matrix<T, N, M> exp)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 66 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Length _0")
T length(vector<T, N> x)
{
return sqrt(dot(x, x));
@@ -2402,7 +2402,7 @@ T length(vector<T, N> x)
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, mix)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 46 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FMix _0 _1 _2")
T lerp(T x, T y, T s)
{
return x * (T(1.0f) - s) + y * s;
@@ -2411,7 +2411,7 @@ T lerp(T x, T y, T s)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, mix)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 46 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 FMix _0 _1 _2")
vector<T, N> lerp(vector<T, N> x, vector<T, N> y, vector<T, N> s)
{
return x * (T(1.0f) - s) + y * s;
@@ -2440,13 +2440,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_log($0)")
__target_intrinsic(cpp, "$P_log($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 28 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Log _0")
T log(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 28 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Log _0")
vector<T, N> log(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, log, x);
@@ -2465,13 +2465,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl, "(log( $0 ) * $S0( 0.43429448190325182765112891891661) )" )
__target_intrinsic(cuda, "$P_log10($0)")
__target_intrinsic(cpp, "$P_log10($0)")
-__target_intrinsic(spirv_direct, "%baseElog = 12 resultType resultId glsl450 28 _0; 133 resultType resultId _0 %baseElog const(_p,0.43429448190325182765112891891661)")
+__target_intrinsic(spirv_direct, "%baseElog = OpExtInst resultType resultId glsl450 Log _0; OpFMul resultType resultId _0 %baseElog const(_p,0.43429448190325182765112891891661)")
T log10(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "(log( $0 ) * $S0(0.43429448190325182765112891891661) )" )
-__target_intrinsic(spirv_direct, "%baseElog = 12 resultType resultId glsl450 28 _0; 142 resultType resultId _0 %baseElog const(_p,0.43429448190325182765112891891661)")
+__target_intrinsic(spirv_direct, "%baseElog = OpExtInst resultType resultId glsl450 Log _0; OpVectorTimesScalar resultType resultId _0 %baseElog const(_p,0.43429448190325182765112891891661)")
vector<T,N> log10(vector<T,N> x)
{
VECTOR_MAP_UNARY(T, N, log10, x);
@@ -2490,13 +2490,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_log2($0)")
__target_intrinsic(cpp, "$P_log2($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 30 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Log2 _0")
T log2(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 30 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Log2 _0")
vector<T,N> log2(vector<T,N> x)
{
VECTOR_MAP_UNARY(T, N, log2, x);
@@ -2516,13 +2516,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl, fma)
__target_intrinsic(cuda, "$P_fma($0, $1, $2)")
__target_intrinsic(cpp, "$P_fma($0, $1, $2)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 50 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Fma _0 _1 _2")
T mad(T mvalue, T avalue, T bvalue);
__generic<T : __BuiltinArithmeticType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, fma)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 50 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Fma _0 _1 _2")
vector<T, N> mad(vector<T, N> mvalue, vector<T, N> avalue, vector<T, N> bvalue)
{
VECTOR_MAP_TRINARY(T, N, mad, mvalue, avalue, bvalue);
@@ -2541,7 +2541,7 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_max($0, $1)")
__target_intrinsic(cpp, "$P_max($0, $1)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(40,41,42) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMax, UMax, SMax) _0")
T max(T x, T y);
// Note: a stdlib implementation of `max` (or `min`) will require splitting
// floating-point and integer cases apart, because the floating-point
@@ -2551,7 +2551,7 @@ T max(T x, T y);
__generic<T : __BuiltinIntegerType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(40,41,42) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMax, UMax, SMax) _0")
vector<T, N> max(vector<T, N> x, vector<T, N> y)
{
VECTOR_MAP_BINARY(T, N, max, x, y);
@@ -2569,13 +2569,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_max($0, $1)")
__target_intrinsic(cpp, "$P_max($0, $1)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(40,41,42) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMax, UMax, SMax) _0")
T max(T x, T y);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(40,41,42) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMax, UMax, SMax) _0")
vector<T, N> max(vector<T, N> x, vector<T, N> y)
{
VECTOR_MAP_BINARY(T, N, max, x, y);
@@ -2594,13 +2594,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_min($0, $1)")
__target_intrinsic(cpp, "$P_min($0, $1)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(37,38,39) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMin, UMin, SMin) _0")
T min(T x, T y);
__generic<T : __BuiltinIntegerType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(37,38,39) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMin, UMin, SMin) _0")
vector<T,N> min(vector<T,N> x, vector<T,N> y)
{
VECTOR_MAP_BINARY(T, N, min, x, y);
@@ -2618,13 +2618,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_min($0, $1)")
__target_intrinsic(cpp, "$P_min($0, $1)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(37,38,39) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMin, UMin, SMin) _0")
T min(T x, T y);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fus(37,38,39) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fus(FMin, UMin, SMin) _0")
vector<T,N> min(vector<T,N> x, vector<T,N> y)
{
VECTOR_MAP_BINARY(T, N, min, x, y);
@@ -2928,7 +2928,7 @@ int NonUniformResourceIndex(int index)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 69 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Normalize _0")
vector<T,N> normalize(vector<T,N> x)
{
return x / length(x);
@@ -2940,13 +2940,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_pow($0, $1)")
__target_intrinsic(cpp, "$P_pow($0, $1)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 26 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Pow _0 _1")
T pow(T x, T y);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 26 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Pow _0 _1")
vector<T, N> pow(vector<T, N> x, vector<T, N> y)
{
VECTOR_MAP_BINARY(T, N, pow, x, y);
@@ -3100,7 +3100,7 @@ void ProcessTriTessFactorsMin(
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 11 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Radians _0")
T radians(T x)
{
return x * (T.getPi() / T(180.0f));
@@ -3109,7 +3109,7 @@ T radians(T x)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 11 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Radians _0")
vector<T, N> radians(vector<T, N> x)
{
return x * (T.getPi() / T(180.0f));
@@ -3148,7 +3148,7 @@ matrix<T, N, M> rcp(matrix<T, N, M> x)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 71 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Reflect _0 _1")
vector<T,N> reflect(vector<T,N> i, vector<T,N> n)
{
return i - T(2) * dot(n,i) * n;
@@ -3158,7 +3158,7 @@ vector<T,N> reflect(vector<T,N> i, vector<T,N> n)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 72 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Refract _0 _1 _2")
vector<T,N> refract(vector<T,N> i, vector<T,N> n, T eta)
{
let dotNI = dot(n,i);
@@ -3187,13 +3187,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_round($0)")
__target_intrinsic(cpp, "$P_round($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 1 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Round _0")
T round(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 1 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Round _0")
vector<T, N> round(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, round, x);
@@ -3212,7 +3212,7 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl, "inversesqrt($0)")
__target_intrinsic(cuda, "$P_rsqrt($0)")
__target_intrinsic(cpp, "$P_rsqrt($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 32 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 InverseSqrt _0")
T rsqrt(T x)
{
return T(1.0) / sqrt(x);
@@ -3221,7 +3221,7 @@ T rsqrt(T x)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "inversesqrt($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 32 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 InverseSqrt _0")
vector<T, N> rsqrt(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, rsqrt, x);
@@ -3265,13 +3265,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl, "int(sign($0))")
__target_intrinsic(cuda, "$P_sign($0)")
__target_intrinsic(cpp, "$P_sign($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fi(6,7) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fi(FSign, SSign) _0")
int sign(T x);
__generic<T : __BuiltinSignedArithmeticType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl, "ivec$N0(sign($0))")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 fi(6,7) _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 fi(FSign, SSign) _0")
vector<int, N> sign(vector<T, N> x)
{
VECTOR_MAP_UNARY(int, N, sign, x);
@@ -3292,13 +3292,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_sin($0)")
__target_intrinsic(cpp, "$P_sin($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 13 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Sin _0")
T sin(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 13 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Sin _0")
vector<T, N> sin(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, sin, x);
@@ -3343,13 +3343,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_sinh($0)")
__target_intrinsic(cpp, "$P_sinh($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 19 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Sinh _0")
T sinh(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 19 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Sinh _0")
vector<T, N> sinh(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, sinh, x);
@@ -3366,7 +3366,7 @@ matrix<T, N, M> sinh(matrix<T, N, M> x)
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 49 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 SmoothStep _0 _1 _2")
T smoothstep(T min, T max, T x)
{
let t = saturate((x - min) / (max - min));
@@ -3376,7 +3376,7 @@ T smoothstep(T min, T max, T x)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 49 _0 _1 _2")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 SmoothStep _0 _1 _2")
vector<T, N> smoothstep(vector<T, N> min, vector<T, N> max, vector<T, N> x)
{
VECTOR_MAP_TRINARY(T, N, smoothstep, min, max, x);
@@ -3395,13 +3395,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_sqrt($0)")
__target_intrinsic(cpp, "$P_sqrt($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 31 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Sqrt _0")
T sqrt(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 31 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Sqrt _0")
vector<T, N> sqrt(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, sqrt, x);
@@ -3418,7 +3418,7 @@ matrix<T, N, M> sqrt(matrix<T, N, M> x)
__generic<T : __BuiltinFloatingPointType>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 48 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Step _0 _1")
T step(T y, T x)
{
return x < y ? T(0.0f) : T(1.0f);
@@ -3427,7 +3427,7 @@ T step(T y, T x)
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 48 _0 _1")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Step _0 _1")
vector<T,N> step(vector<T,N> y, vector<T,N> x)
{
VECTOR_MAP_BINARY(T, N, step, y, x);
@@ -3446,13 +3446,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_tan($0)")
__target_intrinsic(cpp, "$P_tan($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 15 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Tan _0")
T tan(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 15 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Tan _0")
vector<T, N> tan(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, tan, x);
@@ -3471,13 +3471,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_tanh($0)")
__target_intrinsic(cpp, "$P_tanh($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 21 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Tanh _0")
T tanh(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 21 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Tanh _0")
vector<T,N> tanh(vector<T,N> x)
{
VECTOR_MAP_UNARY(T, N, tanh, x);
@@ -3509,13 +3509,13 @@ __target_intrinsic(hlsl)
__target_intrinsic(glsl)
__target_intrinsic(cuda, "$P_trunc($0)")
__target_intrinsic(cpp, "$P_trunc($0)")
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 3 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Trunc _0")
T trunc(T x);
__generic<T : __BuiltinFloatingPointType, let N : int>
__target_intrinsic(hlsl)
__target_intrinsic(glsl)
-__target_intrinsic(spirv_direct, "12 resultType resultId glsl450 3 _0")
+__target_intrinsic(spirv_direct, "OpExtInst resultType resultId glsl450 Trunc _0")
vector<T, N> trunc(vector<T, N> x)
{
VECTOR_MAP_UNARY(T, N, trunc, x);