mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-08 11:30:06 +00:00
Add support for GL_NV_shader_sm_builtins
Including spirv and AST tests Also increase size of TBuiltInVariable bitfields since we've now exceeded 127 and add a static_assert to make this easier to find next time it happens!
This commit is contained in:
parent
92b5c9ee91
commit
2cb2f197a7
@ -75,4 +75,7 @@ const char* const E_SPV_NV_shading_rate = "SPV_NV_shading_rate";
|
||||
//SPV_NV_cooperative_matrix
|
||||
const char* const E_SPV_NV_cooperative_matrix = "SPV_NV_cooperative_matrix";
|
||||
|
||||
//SPV_NV_shader_sm_builtins
|
||||
const char* const E_SPV_NV_shader_sm_builtins = "SPV_NV_shader_sm_builtins";
|
||||
|
||||
#endif // #ifndef GLSLextNV_H
|
||||
|
@ -946,6 +946,24 @@ spv::BuiltIn TGlslangToSpvTraverser::TranslateBuiltInDecoration(glslang::TBuiltI
|
||||
case glslang::EbvMeshViewIndicesNV:
|
||||
return spv::BuiltInMeshViewIndicesNV;
|
||||
#endif
|
||||
|
||||
// sm builtins
|
||||
case glslang::EbvWarpsPerSM:
|
||||
builder.addExtension(spv::E_SPV_NV_shader_sm_builtins);
|
||||
builder.addCapability(spv::CapabilityShaderSMBuiltinsNV);
|
||||
return spv::BuiltInWarpsPerSMNV;
|
||||
case glslang::EbvSMCount:
|
||||
builder.addExtension(spv::E_SPV_NV_shader_sm_builtins);
|
||||
builder.addCapability(spv::CapabilityShaderSMBuiltinsNV);
|
||||
return spv::BuiltInSMCountNV;
|
||||
case glslang::EbvWarpID:
|
||||
builder.addExtension(spv::E_SPV_NV_shader_sm_builtins);
|
||||
builder.addCapability(spv::CapabilityShaderSMBuiltinsNV);
|
||||
return spv::BuiltInWarpIDNV;
|
||||
case glslang::EbvSMID:
|
||||
builder.addExtension(spv::E_SPV_NV_shader_sm_builtins);
|
||||
builder.addCapability(spv::CapabilityShaderSMBuiltinsNV);
|
||||
return spv::BuiltInSMIDNV;
|
||||
default:
|
||||
return spv::BuiltInMax;
|
||||
}
|
||||
|
@ -423,6 +423,10 @@ const char* BuiltInString(int builtIn)
|
||||
case BuiltInMeshViewCountNV: return "MeshViewCountNV";
|
||||
case BuiltInMeshViewIndicesNV: return "MeshViewIndicesNV";
|
||||
#endif
|
||||
case BuiltInWarpsPerSMNV: return "WarpsPerSMNV";
|
||||
case BuiltInSMCountNV: return "SMCountNV";
|
||||
case BuiltInWarpIDNV: return "WarpIDNV";
|
||||
case BuiltInSMIDNV: return "SMIDNV";
|
||||
|
||||
default: return "Bad";
|
||||
}
|
||||
@ -948,6 +952,7 @@ const char* CapabilityString(int info)
|
||||
case CapabilityVariablePointers: return "VariablePointers";
|
||||
|
||||
case CapabilityCooperativeMatrixNV: return "CooperativeMatrixNV";
|
||||
case CapabilityShaderSMBuiltinsNV: return "ShaderSMBuiltinsNV";
|
||||
|
||||
case CapabilityFragmentShaderSampleInterlockEXT: return "CapabilityFragmentShaderSampleInterlockEXT";
|
||||
case CapabilityFragmentShaderPixelInterlockEXT: return "CapabilityFragmentShaderPixelInterlockEXT";
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:232: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:233: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:234: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:235: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 450
|
||||
@ -97,6 +101,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:3 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -597,6 +602,20 @@ ERROR: node is still EOpNull!
|
||||
0:226 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:226 'ballot' ( temp 4-component vector of uint)
|
||||
0:226 'parti' ( temp 4-component vector of uint)
|
||||
0:230 Function Definition: sm_builtins_err( ( global void)
|
||||
0:230 Function Parameters:
|
||||
0:232 Sequence
|
||||
0:232 'gl_WarpsPerSMNV' ( flat in uint WarpsPerSMNV)
|
||||
0:233 'gl_SMCountNV' ( flat in uint SMCountNV)
|
||||
0:234 'gl_WarpIDNV' ( flat in uint WarpIDNV)
|
||||
0:235 'gl_SMIDNV' ( flat in uint SMIDNV)
|
||||
0:242 Function Definition: sm_builtins( ( global void)
|
||||
0:242 Function Parameters:
|
||||
0:244 Sequence
|
||||
0:244 'gl_WarpsPerSMNV' ( flat in uint WarpsPerSMNV)
|
||||
0:245 'gl_SMCountNV' ( flat in uint SMCountNV)
|
||||
0:246 'gl_WarpIDNV' ( flat in uint WarpIDNV)
|
||||
0:247 'gl_SMIDNV' ( flat in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'data' (layout( location=0) out 4-component vector of uint)
|
||||
|
||||
@ -613,6 +632,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:105 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:238: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:239: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:240: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:241: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 450
|
||||
@ -97,6 +101,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
invocations = -1
|
||||
max_vertices = 1
|
||||
@ -606,6 +611,20 @@ ERROR: node is still EOpNull!
|
||||
0:232 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:232 'ballot' ( temp 4-component vector of uint)
|
||||
0:232 'parti' ( temp 4-component vector of uint)
|
||||
0:236 Function Definition: sm_builtins_err( ( global void)
|
||||
0:236 Function Parameters:
|
||||
0:238 Sequence
|
||||
0:238 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:239 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:240 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:241 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:248 Function Definition: sm_builtins( ( global void)
|
||||
0:248 Function Parameters:
|
||||
0:250 Sequence
|
||||
0:250 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:251 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:252 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:253 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout( set=0 binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer runtime-sized array of 4-component vector of uint result})
|
||||
|
||||
@ -622,6 +641,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
invocations = 1
|
||||
max_vertices = 1
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:237: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:238: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:239: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:240: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 450
|
||||
@ -97,6 +101,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
vertices = 1
|
||||
ERROR: node is still EOpNull!
|
||||
@ -603,6 +608,20 @@ ERROR: node is still EOpNull!
|
||||
0:231 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:231 'ballot' ( temp 4-component vector of uint)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:235 Function Definition: sm_builtins_err( ( global void)
|
||||
0:235 Function Parameters:
|
||||
0:237 Sequence
|
||||
0:237 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:238 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:239 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:240 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:247 Function Definition: sm_builtins( ( global void)
|
||||
0:247 Function Parameters:
|
||||
0:249 Sequence
|
||||
0:249 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:250 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:251 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:252 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout( set=0 binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer runtime-sized array of 4-component vector of uint result})
|
||||
|
||||
@ -619,6 +638,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
vertices = 1
|
||||
ERROR: node is still EOpNull!
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:237: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:238: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:239: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:240: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 450
|
||||
@ -97,6 +101,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
input primitive = isolines
|
||||
vertex spacing = none
|
||||
@ -605,6 +610,20 @@ ERROR: node is still EOpNull!
|
||||
0:231 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:231 'ballot' ( temp 4-component vector of uint)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:235 Function Definition: sm_builtins_err( ( global void)
|
||||
0:235 Function Parameters:
|
||||
0:237 Sequence
|
||||
0:237 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:238 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:239 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:240 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:247 Function Definition: sm_builtins( ( global void)
|
||||
0:247 Function Parameters:
|
||||
0:249 Sequence
|
||||
0:249 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:250 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:251 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:252 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout( set=0 binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer runtime-sized array of 4-component vector of uint result})
|
||||
|
||||
@ -621,6 +640,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
input primitive = isolines
|
||||
vertex spacing = equal_spacing
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:236: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:237: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:238: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:239: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 450
|
||||
@ -97,6 +101,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:3 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -602,6 +607,20 @@ ERROR: node is still EOpNull!
|
||||
0:230 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:230 'ballot' ( temp 4-component vector of uint)
|
||||
0:230 'parti' ( temp 4-component vector of uint)
|
||||
0:234 Function Definition: sm_builtins_err( ( global void)
|
||||
0:234 Function Parameters:
|
||||
0:236 Sequence
|
||||
0:236 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:237 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:238 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:239 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:246 Function Definition: sm_builtins( ( global void)
|
||||
0:246 Function Parameters:
|
||||
0:248 Sequence
|
||||
0:248 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:249 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:250 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:251 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout( set=0 binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer runtime-sized array of 4-component vector of uint result})
|
||||
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||
@ -620,6 +639,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:109 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:242: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:243: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:244: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:245: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 450
|
||||
@ -97,6 +101,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
local_size = (8, 8, 1)
|
||||
ERROR: node is still EOpNull!
|
||||
@ -631,6 +636,20 @@ ERROR: node is still EOpNull!
|
||||
0:236 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:236 'ballot' ( temp 4-component vector of uint)
|
||||
0:236 'parti' ( temp 4-component vector of uint)
|
||||
0:240 Function Definition: sm_builtins_err( ( global void)
|
||||
0:240 Function Parameters:
|
||||
0:242 Sequence
|
||||
0:242 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:243 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:244 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:245 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:252 Function Definition: sm_builtins( ( global void)
|
||||
0:252 Function Parameters:
|
||||
0:254 Sequence
|
||||
0:254 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:255 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:256 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:257 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
|
||||
0:? 8 (const uint)
|
||||
@ -651,6 +670,7 @@ Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
local_size = (8, 8, 1)
|
||||
ERROR: node is still EOpNull!
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:298: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:299: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:300: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:301: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_mesh_shader
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
max_vertices = 81
|
||||
max_primitives = 32
|
||||
@ -887,6 +892,20 @@ ERROR: node is still EOpNull!
|
||||
0:292 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:292 'ballot' ( temp 4-component vector of uint)
|
||||
0:292 'parti' ( temp 4-component vector of uint)
|
||||
0:296 Function Definition: sm_builtins_err( ( global void)
|
||||
0:296 Function Parameters:
|
||||
0:298 Sequence
|
||||
0:298 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:299 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:300 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:301 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:308 Function Definition: sm_builtins( ( global void)
|
||||
0:308 Function Parameters:
|
||||
0:310 Sequence
|
||||
0:310 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:311 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:312 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:313 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
|
||||
0:? 32 (const uint)
|
||||
@ -910,6 +929,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_mesh_shader
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
max_vertices = 81
|
||||
max_primitives = 32
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:259: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:260: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:261: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:262: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -671,6 +676,20 @@ ERROR: node is still EOpNull!
|
||||
0:253 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:253 'ballot' ( temp 4-component vector of uint)
|
||||
0:253 'parti' ( temp 4-component vector of uint)
|
||||
0:257 Function Definition: sm_builtins_err( ( global void)
|
||||
0:257 Function Parameters:
|
||||
0:259 Sequence
|
||||
0:259 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:260 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:261 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:262 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:269 Function Definition: sm_builtins( ( global void)
|
||||
0:269 Function Parameters:
|
||||
0:271 Sequence
|
||||
0:271 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:272 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:273 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:274 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
|
||||
@ -688,6 +707,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:106 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:247: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:248: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:249: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:250: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -614,6 +619,20 @@ ERROR: node is still EOpNull!
|
||||
0:241 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:241 'ballot' ( temp 4-component vector of uint)
|
||||
0:241 'parti' ( temp 4-component vector of uint)
|
||||
0:245 Function Definition: sm_builtins_err( ( global void)
|
||||
0:245 Function Parameters:
|
||||
0:247 Sequence
|
||||
0:247 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:248 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:249 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:250 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:257 Function Definition: sm_builtins( ( global void)
|
||||
0:257 Function Parameters:
|
||||
0:259 Sequence
|
||||
0:259 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:260 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:261 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:262 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'data0' (layout( location=0) callableDataNV 4-component vector of float)
|
||||
0:? 'anon@0' (layout( location=1) callableDataInNV block{ callableDataInNV uint data1})
|
||||
@ -632,6 +651,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:109 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:257: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:258: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:259: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:260: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -680,6 +685,20 @@ ERROR: node is still EOpNull!
|
||||
0:251 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:251 'ballot' ( temp 4-component vector of uint)
|
||||
0:251 'parti' ( temp 4-component vector of uint)
|
||||
0:255 Function Definition: sm_builtins_err( ( global void)
|
||||
0:255 Function Parameters:
|
||||
0:257 Sequence
|
||||
0:257 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:258 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:259 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:260 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:267 Function Definition: sm_builtins( ( global void)
|
||||
0:267 Function Parameters:
|
||||
0:269 Sequence
|
||||
0:269 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:270 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:271 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:272 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'localPayload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
@ -699,6 +718,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:108 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:251: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:252: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:253: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:254: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -644,6 +649,20 @@ ERROR: node is still EOpNull!
|
||||
0:245 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:245 'ballot' ( temp 4-component vector of uint)
|
||||
0:245 'parti' ( temp 4-component vector of uint)
|
||||
0:249 Function Definition: sm_builtins_err( ( global void)
|
||||
0:249 Function Parameters:
|
||||
0:251 Sequence
|
||||
0:251 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:252 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:253 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:254 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:261 Function Definition: sm_builtins( ( global void)
|
||||
0:261 Function Parameters:
|
||||
0:263 Sequence
|
||||
0:263 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:264 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:265 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:266 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV0' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'accNV1' (layout( set=0 binding=1) uniform accelerationStructureNV)
|
||||
@ -664,6 +683,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:113 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:97: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:100: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:257: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:258: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:259: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:260: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:5 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -658,6 +663,20 @@ ERROR: node is still EOpNull!
|
||||
0:251 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:251 'ballot' ( temp 4-component vector of uint)
|
||||
0:251 'parti' ( temp 4-component vector of uint)
|
||||
0:255 Function Definition: sm_builtins_err( ( global void)
|
||||
0:255 Function Parameters:
|
||||
0:257 Sequence
|
||||
0:257 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:258 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:259 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:260 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:267 Function Definition: sm_builtins( ( global void)
|
||||
0:267 Function Parameters:
|
||||
0:269 Sequence
|
||||
0:269 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:270 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:271 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:272 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'iAttr' ( hitAttributeNV 4-component vector of float)
|
||||
|
||||
@ -675,6 +694,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:108 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:97: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:100: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:251: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:252: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:253: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:254: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:5 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
@ -652,6 +657,20 @@ ERROR: node is still EOpNull!
|
||||
0:245 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:245 'ballot' ( temp 4-component vector of uint)
|
||||
0:245 'parti' ( temp 4-component vector of uint)
|
||||
0:249 Function Definition: sm_builtins_err( ( global void)
|
||||
0:249 Function Parameters:
|
||||
0:251 Sequence
|
||||
0:251 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:252 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:253 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:254 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:261 Function Definition: sm_builtins( ( global void)
|
||||
0:261 Function Parameters:
|
||||
0:263 Sequence
|
||||
0:263 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:264 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:265 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:266 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'localPayload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
@ -671,6 +690,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:109 Function Definition: main( ( global void)
|
||||
|
@ -85,7 +85,11 @@ ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not reques
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 86 compilation errors. No code generated.
|
||||
ERROR: 0:288: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:289: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:290: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 0:291: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
@ -98,6 +102,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_mesh_shader
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
local_size = (32, 1, 1)
|
||||
ERROR: node is still EOpNull!
|
||||
@ -729,6 +734,20 @@ ERROR: node is still EOpNull!
|
||||
0:282 subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
|
||||
0:282 'ballot' ( temp 4-component vector of uint)
|
||||
0:282 'parti' ( temp 4-component vector of uint)
|
||||
0:286 Function Definition: sm_builtins_err( ( global void)
|
||||
0:286 Function Parameters:
|
||||
0:288 Sequence
|
||||
0:288 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:289 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:290 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:291 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:298 Function Definition: sm_builtins( ( global void)
|
||||
0:298 Function Parameters:
|
||||
0:300 Sequence
|
||||
0:300 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:301 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:302 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:303 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
|
||||
0:? 32 (const uint)
|
||||
@ -753,6 +772,7 @@ Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_mesh_shader
|
||||
Requested GL_NV_shader_sm_builtins
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
local_size = (32, 1, 1)
|
||||
ERROR: node is still EOpNull!
|
||||
|
50
Test/baseResults/spv.smBuiltins.frag.out
Normal file
50
Test/baseResults/spv.smBuiltins.frag.out
Normal file
@ -0,0 +1,50 @@
|
||||
spv.smBuiltins.frag
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80007
|
||||
// Id's are bound by 20
|
||||
|
||||
Capability Shader
|
||||
Capability ShaderSMBuiltinsNV
|
||||
Extension "SPV_NV_shader_sm_builtins"
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 9 11 13 15 17
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_NV_shader_sm_builtins"
|
||||
Name 4 "main"
|
||||
Name 9 "data"
|
||||
Name 11 "gl_WarpsPerSMNV"
|
||||
Name 13 "gl_SMCountNV"
|
||||
Name 15 "gl_WarpIDNV"
|
||||
Name 17 "gl_SMIDNV"
|
||||
Decorate 9(data) Location 0
|
||||
Decorate 11(gl_WarpsPerSMNV) Flat
|
||||
Decorate 11(gl_WarpsPerSMNV) BuiltIn WarpsPerSMNV
|
||||
Decorate 13(gl_SMCountNV) Flat
|
||||
Decorate 13(gl_SMCountNV) BuiltIn SMCountNV
|
||||
Decorate 15(gl_WarpIDNV) Flat
|
||||
Decorate 15(gl_WarpIDNV) BuiltIn WarpIDNV
|
||||
Decorate 17(gl_SMIDNV) Flat
|
||||
Decorate 17(gl_SMIDNV) BuiltIn SMIDNV
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7: TypeVector 6(int) 4
|
||||
8: TypePointer Output 7(ivec4)
|
||||
9(data): 8(ptr) Variable Output
|
||||
10: TypePointer Input 6(int)
|
||||
11(gl_WarpsPerSMNV): 10(ptr) Variable Input
|
||||
13(gl_SMCountNV): 10(ptr) Variable Input
|
||||
15(gl_WarpIDNV): 10(ptr) Variable Input
|
||||
17(gl_SMIDNV): 10(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
12: 6(int) Load 11(gl_WarpsPerSMNV)
|
||||
14: 6(int) Load 13(gl_SMCountNV)
|
||||
16: 6(int) Load 15(gl_WarpIDNV)
|
||||
18: 6(int) Load 17(gl_SMIDNV)
|
||||
19: 7(ivec4) CompositeConstruct 12 14 16 18
|
||||
Store 9(data) 19
|
||||
Return
|
||||
FunctionEnd
|
62
Test/baseResults/spv.smBuiltins.vert.out
Normal file
62
Test/baseResults/spv.smBuiltins.vert.out
Normal file
@ -0,0 +1,62 @@
|
||||
spv.smBuiltins.vert
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80007
|
||||
// Id's are bound by 29
|
||||
|
||||
Capability Shader
|
||||
Capability ShaderSMBuiltinsNV
|
||||
Extension "SPV_NV_shader_sm_builtins"
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 15 18 20 22 24
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_NV_shader_sm_builtins"
|
||||
Name 4 "main"
|
||||
Name 9 "Output"
|
||||
MemberName 9(Output) 0 "result"
|
||||
Name 11 ""
|
||||
Name 15 "gl_VertexIndex"
|
||||
Name 18 "gl_WarpsPerSMNV"
|
||||
Name 20 "gl_SMCountNV"
|
||||
Name 22 "gl_WarpIDNV"
|
||||
Name 24 "gl_SMIDNV"
|
||||
Decorate 8 ArrayStride 16
|
||||
MemberDecorate 9(Output) 0 Offset 0
|
||||
Decorate 9(Output) BufferBlock
|
||||
Decorate 11 DescriptorSet 0
|
||||
Decorate 11 Binding 0
|
||||
Decorate 15(gl_VertexIndex) BuiltIn VertexIndex
|
||||
Decorate 18(gl_WarpsPerSMNV) BuiltIn WarpsPerSMNV
|
||||
Decorate 20(gl_SMCountNV) BuiltIn SMCountNV
|
||||
Decorate 22(gl_WarpIDNV) BuiltIn WarpIDNV
|
||||
Decorate 24(gl_SMIDNV) BuiltIn SMIDNV
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7: TypeVector 6(int) 4
|
||||
8: TypeRuntimeArray 7(ivec4)
|
||||
9(Output): TypeStruct 8
|
||||
10: TypePointer Uniform 9(Output)
|
||||
11: 10(ptr) Variable Uniform
|
||||
12: TypeInt 32 1
|
||||
13: 12(int) Constant 0
|
||||
14: TypePointer Input 12(int)
|
||||
15(gl_VertexIndex): 14(ptr) Variable Input
|
||||
17: TypePointer Input 6(int)
|
||||
18(gl_WarpsPerSMNV): 17(ptr) Variable Input
|
||||
20(gl_SMCountNV): 17(ptr) Variable Input
|
||||
22(gl_WarpIDNV): 17(ptr) Variable Input
|
||||
24(gl_SMIDNV): 17(ptr) Variable Input
|
||||
27: TypePointer Uniform 7(ivec4)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
16: 12(int) Load 15(gl_VertexIndex)
|
||||
19: 6(int) Load 18(gl_WarpsPerSMNV)
|
||||
21: 6(int) Load 20(gl_SMCountNV)
|
||||
23: 6(int) Load 22(gl_WarpIDNV)
|
||||
25: 6(int) Load 24(gl_SMIDNV)
|
||||
26: 7(ivec4) CompositeConstruct 19 21 23 25
|
||||
28: 27(ptr) AccessChain 11 13 16
|
||||
Store 28 26
|
||||
Return
|
||||
FunctionEnd
|
@ -11,7 +11,7 @@ spv.specConstant.vert
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 9 "arraySize"
|
||||
Name 14 "foo(vf4[s2765];"
|
||||
Name 14 "foo(vf4[s2769];"
|
||||
Name 13 "p"
|
||||
Name 17 "builtin_spec_constant("
|
||||
Name 20 "color"
|
||||
@ -102,10 +102,10 @@ spv.specConstant.vert
|
||||
Store 20(color) 46
|
||||
48: 10 Load 22(ucol)
|
||||
Store 47(param) 48
|
||||
49: 2 FunctionCall 14(foo(vf4[s2765];) 47(param)
|
||||
49: 2 FunctionCall 14(foo(vf4[s2769];) 47(param)
|
||||
Return
|
||||
FunctionEnd
|
||||
14(foo(vf4[s2765];): 2 Function None 12
|
||||
14(foo(vf4[s2769];): 2 Function None 12
|
||||
13(p): 11(ptr) FunctionParameter
|
||||
15: Label
|
||||
54: 24(ptr) AccessChain 53(dupUcol) 23
|
||||
|
@ -226,3 +226,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -232,3 +232,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -231,3 +231,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -230,3 +230,24 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -230,3 +230,24 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
||||
|
@ -236,3 +236,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -291,3 +291,24 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -253,3 +253,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -241,3 +241,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -251,3 +251,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -245,3 +245,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -251,3 +251,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -245,3 +245,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
@ -282,3 +282,23 @@ void partitioned_works(vec4 f4)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
||||
// tests for NV_shader_sm_builtins
|
||||
void sm_builtins_err()
|
||||
{
|
||||
gl_WarpsPerSMNV; // ERROR, no extension
|
||||
gl_SMCountNV; // ERROR, no extension
|
||||
gl_WarpIDNV; // ERROR, no extension
|
||||
gl_SMIDNV; // ERROR, no extension
|
||||
}
|
||||
|
||||
#ifdef GL_NV_shader_sm_builtins
|
||||
#extension GL_NV_shader_sm_builtins : enable
|
||||
#endif
|
||||
|
||||
void sm_builtins()
|
||||
{
|
||||
gl_WarpsPerSMNV;
|
||||
gl_SMCountNV;
|
||||
gl_WarpIDNV;
|
||||
gl_SMIDNV;
|
||||
}
|
||||
|
7
Test/spv.smBuiltins.frag
Normal file
7
Test/spv.smBuiltins.frag
Normal file
@ -0,0 +1,7 @@
|
||||
#version 450
|
||||
#extension GL_NV_shader_sm_builtins: enable
|
||||
layout(location = 0) out uvec4 data;
|
||||
void main (void)
|
||||
{
|
||||
data = uvec4(gl_WarpsPerSMNV, gl_SMCountNV, gl_WarpIDNV, gl_SMIDNV);
|
||||
}
|
11
Test/spv.smBuiltins.vert
Normal file
11
Test/spv.smBuiltins.vert
Normal file
@ -0,0 +1,11 @@
|
||||
#version 450
|
||||
#extension GL_NV_shader_sm_builtins: enable
|
||||
layout(set = 0, binding = 0, std430) buffer Output
|
||||
{
|
||||
uvec4 result[];
|
||||
};
|
||||
|
||||
void main (void)
|
||||
{
|
||||
result[gl_VertexIndex] = uvec4(gl_WarpsPerSMNV, gl_SMCountNV, gl_WarpIDNV, gl_SMIDNV);
|
||||
}
|
@ -275,6 +275,12 @@ enum TBuiltInVariable {
|
||||
EbvMeshViewIndicesNV,
|
||||
#endif
|
||||
|
||||
// sm builtins
|
||||
EbvWarpsPerSM,
|
||||
EbvSMCount,
|
||||
EbvWarpID,
|
||||
EbvSMID,
|
||||
|
||||
// HLSL built-ins that live only temporarily, until they get remapped
|
||||
// to one of the above.
|
||||
EbvFragDepthGreater,
|
||||
@ -460,6 +466,11 @@ __inline const char* GetBuiltInVariableString(TBuiltInVariable v)
|
||||
case EbvMeshViewIndicesNV: return "MeshViewIndicesNV";
|
||||
#endif
|
||||
|
||||
case EbvWarpsPerSM: return "WarpsPerSMNV";
|
||||
case EbvSMCount: return "SMCountNV";
|
||||
case EbvWarpID: return "WarpIDNV";
|
||||
case EbvSMID: return "SMIDNV";
|
||||
|
||||
default: return "unknown built-in variable";
|
||||
}
|
||||
}
|
||||
|
@ -514,8 +514,9 @@ public:
|
||||
|
||||
const char* semanticName;
|
||||
TStorageQualifier storage : 6;
|
||||
TBuiltInVariable builtIn : 8;
|
||||
TBuiltInVariable declaredBuiltIn : 8;
|
||||
TBuiltInVariable builtIn : 9;
|
||||
TBuiltInVariable declaredBuiltIn : 9;
|
||||
static_assert(EbvLast < 256, "need to increase size of TBuiltInVariable bitfields!");
|
||||
TPrecisionQualifier precision : 3;
|
||||
bool invariant : 1; // require canonical treatment for cross-shader invariance
|
||||
bool noContraction: 1; // prevent contraction and reassociation, e.g., for 'precise' keyword, and expressions it affects
|
||||
|
@ -6141,6 +6141,11 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
|
||||
"in highp uvec4 gl_SubgroupGtMask;"
|
||||
"in highp uvec4 gl_SubgroupLeMask;"
|
||||
"in highp uvec4 gl_SubgroupLtMask;"
|
||||
// GL_NV_shader_sm_builtins
|
||||
"in highp uint gl_WarpsPerSMNV;"
|
||||
"in highp uint gl_SMCountNV;"
|
||||
"in highp uint gl_WarpIDNV;"
|
||||
"in highp uint gl_SMIDNV;"
|
||||
"\n";
|
||||
const char* fragmentSubgroupDecls =
|
||||
"flat in mediump uint gl_SubgroupSize;"
|
||||
@ -6150,6 +6155,11 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
|
||||
"flat in highp uvec4 gl_SubgroupGtMask;"
|
||||
"flat in highp uvec4 gl_SubgroupLeMask;"
|
||||
"flat in highp uvec4 gl_SubgroupLtMask;"
|
||||
// GL_NV_shader_sm_builtins
|
||||
"flat in highp uint gl_WarpsPerSMNV;"
|
||||
"flat in highp uint gl_SMCountNV;"
|
||||
"flat in highp uint gl_WarpIDNV;"
|
||||
"flat in highp uint gl_SMIDNV;"
|
||||
"\n";
|
||||
const char* computeSubgroupDecls =
|
||||
"in highp uint gl_NumSubgroups;"
|
||||
@ -8181,6 +8191,16 @@ void TBuiltIns::identifyBuiltIns(int version, EProfile profile, const SpvVersion
|
||||
BuiltInVariable("gl_SubgroupGtMask", EbvSubgroupGtMask2, symbolTable);
|
||||
BuiltInVariable("gl_SubgroupLeMask", EbvSubgroupLeMask2, symbolTable);
|
||||
BuiltInVariable("gl_SubgroupLtMask", EbvSubgroupLtMask2, symbolTable);
|
||||
|
||||
// GL_NV_shader_sm_builtins
|
||||
symbolTable.setVariableExtensions("gl_WarpsPerSMNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMCountNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_WarpIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
BuiltInVariable("gl_WarpsPerSMNV", EbvWarpsPerSM, symbolTable);
|
||||
BuiltInVariable("gl_SMCountNV", EbvSMCount, symbolTable);
|
||||
BuiltInVariable("gl_WarpIDNV", EbvWarpID, symbolTable);
|
||||
BuiltInVariable("gl_SMIDNV", EbvSMID, symbolTable);
|
||||
}
|
||||
|
||||
break;
|
||||
@ -8582,6 +8602,15 @@ void TBuiltIns::identifyBuiltIns(int version, EProfile profile, const SpvVersion
|
||||
symbolTable.setFunctionExtensions("subgroupPartitionedExclusiveXorNV", 1, &E_GL_NV_shader_subgroup_partitioned);
|
||||
#endif
|
||||
|
||||
// GL_NV_shader_sm_builtins
|
||||
symbolTable.setVariableExtensions("gl_WarpsPerSMNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMCountNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_WarpIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
BuiltInVariable("gl_WarpsPerSMNV", EbvWarpsPerSM, symbolTable);
|
||||
BuiltInVariable("gl_SMCountNV", EbvSMCount, symbolTable);
|
||||
BuiltInVariable("gl_WarpIDNV", EbvWarpID, symbolTable);
|
||||
BuiltInVariable("gl_SMIDNV", EbvSMID, symbolTable);
|
||||
}
|
||||
|
||||
if (profile == EEsProfile) {
|
||||
@ -8686,6 +8715,16 @@ void TBuiltIns::identifyBuiltIns(int version, EProfile profile, const SpvVersion
|
||||
BuiltInVariable("gl_SubgroupGtMask", EbvSubgroupGtMask2, symbolTable);
|
||||
BuiltInVariable("gl_SubgroupLeMask", EbvSubgroupLeMask2, symbolTable);
|
||||
BuiltInVariable("gl_SubgroupLtMask", EbvSubgroupLtMask2, symbolTable);
|
||||
|
||||
// GL_NV_shader_sm_builtins
|
||||
symbolTable.setVariableExtensions("gl_WarpsPerSMNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMCountNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_WarpIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
BuiltInVariable("gl_WarpsPerSMNV", EbvWarpsPerSM, symbolTable);
|
||||
BuiltInVariable("gl_SMCountNV", EbvSMCount, symbolTable);
|
||||
BuiltInVariable("gl_WarpIDNV", EbvWarpID, symbolTable);
|
||||
BuiltInVariable("gl_SMIDNV", EbvSMID, symbolTable);
|
||||
}
|
||||
|
||||
if ((profile != EEsProfile && version >= 140) ||
|
||||
@ -8800,6 +8839,16 @@ void TBuiltIns::identifyBuiltIns(int version, EProfile profile, const SpvVersion
|
||||
BuiltInVariable("gl_SubgroupGtMask", EbvSubgroupGtMask2, symbolTable);
|
||||
BuiltInVariable("gl_SubgroupLeMask", EbvSubgroupLeMask2, symbolTable);
|
||||
BuiltInVariable("gl_SubgroupLtMask", EbvSubgroupLtMask2, symbolTable);
|
||||
|
||||
// GL_NV_shader_sm_builtins
|
||||
symbolTable.setVariableExtensions("gl_WarpsPerSMNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMCountNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_WarpIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
BuiltInVariable("gl_WarpsPerSMNV", EbvWarpsPerSM, symbolTable);
|
||||
BuiltInVariable("gl_SMCountNV", EbvSMCount, symbolTable);
|
||||
BuiltInVariable("gl_WarpIDNV", EbvWarpID, symbolTable);
|
||||
BuiltInVariable("gl_SMIDNV", EbvSMID, symbolTable);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -8934,6 +8983,16 @@ void TBuiltIns::identifyBuiltIns(int version, EProfile profile, const SpvVersion
|
||||
BuiltInVariable("gl_SubgroupLtMask", EbvSubgroupLtMask2, symbolTable);
|
||||
|
||||
symbolTable.setFunctionExtensions("subgroupMemoryBarrierShared", 1, &E_GL_KHR_shader_subgroup_basic);
|
||||
|
||||
// GL_NV_shader_sm_builtins
|
||||
symbolTable.setVariableExtensions("gl_WarpsPerSMNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMCountNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_WarpIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
BuiltInVariable("gl_WarpsPerSMNV", EbvWarpsPerSM, symbolTable);
|
||||
BuiltInVariable("gl_SMCountNV", EbvSMCount, symbolTable);
|
||||
BuiltInVariable("gl_WarpIDNV", EbvWarpID, symbolTable);
|
||||
BuiltInVariable("gl_SMIDNV", EbvSMID, symbolTable);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -9024,6 +9083,16 @@ void TBuiltIns::identifyBuiltIns(int version, EProfile profile, const SpvVersion
|
||||
BuiltInVariable("gl_SubgroupLtMask", EbvSubgroupLtMask2, symbolTable);
|
||||
|
||||
symbolTable.setFunctionExtensions("subgroupMemoryBarrierShared", 1, &E_GL_KHR_shader_subgroup_basic);
|
||||
|
||||
// GL_NV_shader_sm_builtins
|
||||
symbolTable.setVariableExtensions("gl_WarpsPerSMNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMCountNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_WarpIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
symbolTable.setVariableExtensions("gl_SMIDNV", 1, &E_GL_NV_shader_sm_builtins);
|
||||
BuiltInVariable("gl_WarpsPerSMNV", EbvWarpsPerSM, symbolTable);
|
||||
BuiltInVariable("gl_SMCountNV", EbvSMCount, symbolTable);
|
||||
BuiltInVariable("gl_WarpIDNV", EbvWarpID, symbolTable);
|
||||
BuiltInVariable("gl_SMIDNV", EbvSMID, symbolTable);
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
|
@ -251,6 +251,7 @@ void TParseVersions::initializeExtensionBehavior()
|
||||
#endif
|
||||
|
||||
extensionBehavior[E_GL_NV_cooperative_matrix] = EBhDisable;
|
||||
extensionBehavior[E_GL_NV_shader_sm_builtins] = EBhDisable;
|
||||
|
||||
// AEP
|
||||
extensionBehavior[E_GL_ANDROID_extension_pack_es31a] = EBhDisable;
|
||||
@ -459,6 +460,7 @@ void TParseVersions::getPreamble(std::string& preamble)
|
||||
preamble +=
|
||||
"#define GL_EXT_device_group 1\n"
|
||||
"#define GL_EXT_multiview 1\n"
|
||||
"#define GL_NV_shader_sm_builtins 1\n"
|
||||
;
|
||||
}
|
||||
|
||||
|
@ -228,6 +228,7 @@ const int Num_viewportEXTs = sizeof(viewportEXTs) / sizeof(viewportEXTs[0]);
|
||||
#endif
|
||||
|
||||
const char* const E_GL_NV_cooperative_matrix = "GL_NV_cooperative_matrix";
|
||||
const char* const E_GL_NV_shader_sm_builtins = "GL_NV_shader_sm_builtins";
|
||||
|
||||
// AEP
|
||||
const char* const E_GL_ANDROID_extension_pack_es31a = "GL_ANDROID_extension_pack_es31a";
|
||||
|
@ -410,6 +410,8 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.xfb2.vert",
|
||||
"spv.xfb3.vert",
|
||||
"spv.samplerlessTextureFunctions.frag",
|
||||
"spv.smBuiltins.vert",
|
||||
"spv.smBuiltins.frag",
|
||||
})),
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
@ -5,7 +5,7 @@
|
||||
"site" : "github",
|
||||
"subrepo" : "KhronosGroup/SPIRV-Tools",
|
||||
"subdir" : "External/spirv-tools",
|
||||
"commit" : "d01a3c3b4b76e942e1c22adca5a9713197dde901"
|
||||
"commit" : "0755d6ce821cb1ca1e5a5bdf3a8d1d63b08da86d"
|
||||
},
|
||||
{
|
||||
"name" : "spirv-tools/external/spirv-headers",
|
||||
|
Loading…
Reference in New Issue
Block a user