yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
b937eae5
main
1#version 450 core 2#extension GL_KHR_memory_scope_semantics : enable 3#extension GL_EXT_long_vector : enable 4#extension GL_EXT_shader_explicit_arithmetic_types : enable 5#extension GL_EXT_buffer_reference : enable 6#extension GL_EXT_expect_assume : enable 7 8layout (local_size_x = 64, local_size_y = 1, local_size_z = 1) in; 9 10void main() 11{ 12 vector<uint32_t, 5> vu; 13 uint32_t u; 14 vector<int32_t, 5> vi; 15 int32_t i; 16 vector<float16_t, 5> vu16; 17 float16_t f16; 18 vector<bool, 5> vb; 19 bool b; 20 21 // 8.1 22 23 // 8.2 24 25 // 8.3 26 //vu = abs(vu); 27 //vu = sign(vu); 28 vu = min(vu, u); 29 vu = min(vu, vu); 30 vu = max(vu, u); 31 vu = max(vu, vu); 32 vu = clamp(vu, u, u); 33 vu = clamp(vu, vu, vu); 34 vu = mix(vu, vu, vb); 35 36 // 8.5 37 38 // 8.7 39 vb = lessThan(vu, vu); 40 vb = lessThanEqual(vu, vu); 41 vb = greaterThan(vu, vu); 42 vb = greaterThanEqual(vu, vu); 43 vb = equal(vu, vu); 44 vb = notEqual(vu, vu); 45 46 // 8.8 47 vu = uaddCarry(vu, vu, vu); 48 vu = usubBorrow(vu, vu, vu); 49 umulExtended(vu, vu, vu, vu); 50 vu = bitfieldExtract(vu, i, i); 51 vu = bitfieldInsert(vu, vu, i, i); 52 vu = bitfieldReverse(vu); 53 vi = bitCount(vu); 54 vi = findLSB(vu); 55 vi = findMSB(vu); 56 57 // GL_EXT_shader_integer_mix 58 vu = mix(vu, vu, vb); 59 vb = mix(vb, vb, vb); 60 61 // GL_EXT_expect_assume 62 vu = expectEXT(vu, vu); 63}