mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-09 12:00:05 +00:00
88 lines
1.4 KiB
Plaintext
88 lines
1.4 KiB
Plaintext
#version 450 core
|
|
#extension GL_KHR_memory_scope_semantics : enable
|
|
#extension GL_KHR_cooperative_matrix : enable
|
|
#extension GL_EXT_shader_explicit_arithmetic_types : enable
|
|
|
|
layout (local_size_x = 64, local_size_y = 1, local_size_z = 1) in;
|
|
|
|
|
|
void main()
|
|
{
|
|
coopmat<float, gl_ScopeSubgroup, 8, 8, gl_MatrixUseA> f;
|
|
coopmat<float, gl_ScopeSubgroup, 8, 8, gl_MatrixUseB> f2;
|
|
coopmat<float, gl_ScopeSubgroup, 16, 8, gl_MatrixUseA> f3;
|
|
|
|
coopmat<float16_t, gl_ScopeSubgroup, 8, 8, gl_MatrixUseA> f16;
|
|
|
|
coopmat<uint8_t, gl_ScopeSubgroup, 8, 8, gl_MatrixUseA> u8;
|
|
coopmat<int8_t, gl_ScopeSubgroup, 8, 8, gl_MatrixUseA> i8;
|
|
coopmat<int32_t, gl_ScopeSubgroup, 8, 8, gl_MatrixUseA> i32;
|
|
|
|
f+1.0;
|
|
f-1.0;
|
|
f/1.0;
|
|
1.0+f;
|
|
1.0-f;
|
|
1.0/f;
|
|
f+=1.0;
|
|
f-=1.0;
|
|
f/=1.0;
|
|
|
|
f+f16;
|
|
f-f16;
|
|
f*f16;
|
|
f/f16;
|
|
f+=f16;
|
|
f-=f16;
|
|
f*=f16;
|
|
f/=f16;
|
|
|
|
f+f2;
|
|
f-f2;
|
|
f*f2;
|
|
f/f2;
|
|
f+=f2;
|
|
f-=f2;
|
|
f*=f2;
|
|
f/=f2;
|
|
|
|
f+f3;
|
|
f-f3;
|
|
f*f3;
|
|
f/f3;
|
|
f+=f3;
|
|
f-=f3;
|
|
f*=f3;
|
|
f/=f3;
|
|
|
|
u8+i8;
|
|
u8-i8;
|
|
u8*i8;
|
|
u8/i8;
|
|
u8+=i8;
|
|
u8-=i8;
|
|
u8*=i8;
|
|
u8/=i8;
|
|
|
|
u8+uint8_t(1);
|
|
u8-uint8_t(1);
|
|
u8/uint8_t(1);
|
|
u8+=uint8_t(1);
|
|
u8-=uint8_t(1);
|
|
u8/=uint8_t(1);
|
|
|
|
i8+int8_t(1);
|
|
i8-int8_t(1);
|
|
i8/int8_t(1);
|
|
i8+=int8_t(1);
|
|
i8-=int8_t(1);
|
|
i8/=int8_t(1);
|
|
|
|
i32+1;
|
|
i32-1;
|
|
i32/1;
|
|
i32+=1;
|
|
i32-=1;
|
|
i32/=1;
|
|
}
|