Skip to content

Commit 3f334df

Browse files
committed
address review comments and fix metal test
1 parent 07bd6b7 commit 3f334df

15 files changed

+91
-100
lines changed

source/slang/core.meta.slang

+2-2
Original file line numberDiff line numberDiff line change
@@ -440,8 +440,8 @@ attribute_syntax [Differentiable(order:int = 0)] : BackwardDifferentiableAttribu
440440
__intrinsic_op($(kIROp_RequirePrelude))
441441
void __requirePrelude(constexpr String preludeText);
442442

443-
__intrinsic_op($(kIROp_RequireGLSLExtension))
444-
void __requireGLSLExtension(constexpr String preludeText);
443+
__intrinsic_op($(kIROp_RequireTargetExtension))
444+
void __requireTargetExtension(constexpr String preludeText);
445445

446446
/// @experimetal
447447
/// Perform a compile-time condition check and emit a compile-time error if the condition is false.

source/slang/glsl.meta.slang

+24-24
Original file line numberDiff line numberDiff line change
@@ -4276,7 +4276,7 @@ __generic<T : __BuiltinType>
42764276
case glsl:
42774277
{
42784278
if (__type_equals<T, float>())
4279-
__requireGLSLExtension("GL_EXT_shader_atomic_float");
4279+
__requireTargetExtension("GL_EXT_shader_atomic_float");
42804280
}
42814281
case spirv:
42824282
if (__type_equals<T, float>())
@@ -4298,7 +4298,7 @@ __generic<T : __BuiltinType>
42984298
case glsl:
42994299
{
43004300
if (__type_equals<T, float>())
4301-
__requireGLSLExtension("GL_EXT_shader_atomic_float2");
4301+
__requireTargetExtension("GL_EXT_shader_atomic_float2");
43024302
}
43034303
case spirv:
43044304
if (__type_equals<T, float>())
@@ -4738,7 +4738,7 @@ void requireGLSLExtForRayTracingBuiltin()
47384738
__target_switch
47394739
{
47404740
case glsl:
4741-
__requireGLSLExtension("GL_EXT_ray_tracing");
4741+
__requireTargetExtension("GL_EXT_ray_tracing");
47424742
__intrinsic_asm "";
47434743
default:
47444744
return;
@@ -6284,30 +6284,30 @@ public void traceRayMotionNV(
62846284
__generic<T : __BuiltinType>
62856285
[ForceInline]
62866286
void typeRequireChecks_shader_subgroup_GLSL() {
6287-
// the following is a seperate function call, since else the `__requireGLSLExtension` and associated __intrinsic_asm is ignored if the calling function also calls an __intrinsic_asm
6287+
// the following is a seperate function call, since else the `__requireTargetExtension` and associated __intrinsic_asm is ignored if the calling function also calls an __intrinsic_asm
62886288
__target_switch
62896289
{
62906290
case glsl:
62916291
if (__type_equals<T, half>()
62926292
|| __type_equals<T, float16_t>()
6293-
) __requireGLSLExtension("GL_EXT_shader_subgroup_extended_types_float16");
6293+
) __requireTargetExtension("GL_EXT_shader_subgroup_extended_types_float16");
62946294
else if (__type_equals<T, uint8_t>()
62956295
|| __type_equals<T, int8_t>()
6296-
) __requireGLSLExtension("GL_EXT_shader_subgroup_extended_types_int8");
6296+
) __requireTargetExtension("GL_EXT_shader_subgroup_extended_types_int8");
62976297
else if (__type_equals<T, uint16_t>()
62986298
|| __type_equals<T, int16_t>()
6299-
) __requireGLSLExtension("GL_EXT_shader_subgroup_extended_types_int16");
6299+
) __requireTargetExtension("GL_EXT_shader_subgroup_extended_types_int16");
63006300
else if (__type_equals<T, uint64_t>()
63016301
|| __type_equals<T, int64_t>()
6302-
) __requireGLSLExtension("GL_EXT_shader_subgroup_extended_types_int64");
6302+
) __requireTargetExtension("GL_EXT_shader_subgroup_extended_types_int64");
63036303

63046304
__intrinsic_asm "";
63056305
}
63066306
}
63076307

63086308
__generic<T : __BuiltinType>
63096309
void shader_subgroup_preamble() {
6310-
// checks needed for shader_subgroup functions; __requireGLSLExtension does not work
6310+
// checks needed for shader_subgroup functions; __requireTargetExtension does not work
63116311
// (does not add the ext specified correctly to the compile output; using extended type
63126312
// will result in error for using the type)
63136313
__target_switch
@@ -6327,7 +6327,7 @@ void requireGLSLExtForSubgroupBasicBuiltin() {
63276327
__target_switch
63286328
{
63296329
case glsl:
6330-
__requireGLSLExtension("GL_KHR_shader_subgroup_basic");
6330+
__requireTargetExtension("GL_KHR_shader_subgroup_basic");
63316331
__intrinsic_asm "";
63326332
default:
63336333
return;
@@ -6351,7 +6351,7 @@ void requireGLSLExtForSubgroupBallotBuiltin() {
63516351
__target_switch
63526352
{
63536353
case glsl:
6354-
__requireGLSLExtension("GL_KHR_shader_subgroup_ballot");
6354+
__requireTargetExtension("GL_KHR_shader_subgroup_ballot");
63556355
__intrinsic_asm "";
63566356
default:
63576357
return;
@@ -8370,8 +8370,8 @@ void typeRequireChecks_atomic_using_float0_tier()
83708370
{
83718371
case glsl:
83728372
{
8373-
if (__type_equals<T, uint64_t>() || __type_equals<T, int64_t>())
8374-
__requireGLSLExtension("GL_EXT_shader_atomic_int64");
8373+
if (__type_equals<T, uint64_t>() || __type_equals<T, int64_t>())
8374+
__requireTargetExtension("GL_EXT_shader_atomic_int64");
83758375
}
83768376
case spirv:
83778377
return;
@@ -8387,16 +8387,16 @@ void typeRequireChecks_atomic_using_float1_tier()
83878387
case glsl:
83888388
{
83898389
if (__type_equals<T, float>())
8390-
__requireGLSLExtension("GL_EXT_shader_atomic_float");
8390+
__requireTargetExtension("GL_EXT_shader_atomic_float");
83918391
else if (__type_equals<T, half>() || __type_equals<T, float16_t>())
83928392
{
8393-
__requireGLSLExtension("GL_EXT_shader_atomic_float2");
8394-
__requireGLSLExtension("GL_EXT_shader_explicit_arithmetic_types");
8393+
__requireTargetExtension("GL_EXT_shader_atomic_float2");
8394+
__requireTargetExtension("GL_EXT_shader_explicit_arithmetic_types");
83958395
}
83968396
else if (__type_equals<T, double>())
8397-
__requireGLSLExtension("GL_EXT_shader_atomic_float");
8397+
__requireTargetExtension("GL_EXT_shader_atomic_float");
83988398
else if (__type_equals<T, uint64_t>() || __type_equals<T, int64_t>())
8399-
__requireGLSLExtension("GL_EXT_shader_atomic_int64");
8399+
__requireTargetExtension("GL_EXT_shader_atomic_int64");
84008400
}
84018401
case spirv:
84028402
return;
@@ -8412,16 +8412,16 @@ void typeRequireChecks_atomic_using_float2_tier()
84128412
case glsl:
84138413
{
84148414
if (__type_equals<T, float>())
8415-
__requireGLSLExtension("GL_EXT_shader_atomic_float2");
8415+
__requireTargetExtension("GL_EXT_shader_atomic_float2");
84168416
else if (__type_equals<T, half>() || __type_equals<T, float16_t>())
84178417
{
8418-
__requireGLSLExtension("GL_EXT_shader_atomic_float2");
8419-
__requireGLSLExtension("GL_EXT_shader_explicit_arithmetic_types");
8418+
__requireTargetExtension("GL_EXT_shader_atomic_float2");
8419+
__requireTargetExtension("GL_EXT_shader_explicit_arithmetic_types");
84208420
}
84218421
else if (__type_equals<T, double>())
8422-
__requireGLSLExtension("GL_EXT_shader_atomic_float2");
8423-
else if (__type_equals<T, uint64_t>() || __type_equals<T, int64_t>())
8424-
__requireGLSLExtension("GL_EXT_shader_atomic_int64");
8422+
__requireTargetExtension("GL_EXT_shader_atomic_float2");
8423+
else if (__type_equals<T, uint64_t>() || __type_equals<T, int64_t>())
8424+
__requireTargetExtension("GL_EXT_shader_atomic_int64");
84258425
}
84268426
case spirv:
84278427
return;

0 commit comments

Comments
 (0)