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<int16_t, 5> vi; 13 int16_t i; 14 vector<bool, 5> vb; 15 bool b; 16 17 // 8.1 18 19 // 8.2 20 21 // 8.3 22 //vi = abs(vi); 23 //vi = sign(vi); 24 vi = min(vi, i); 25 vi = min(vi, vi); 26 vi = max(vi, i); 27 vi = max(vi, vi); 28 vi = clamp(vi, i, i); 29 vi = clamp(vi, vi, vi); 30 vi = mix(vi, vi, vb); 31 32 // 8.5 33 34 // 8.7 35 vb = lessThan(vi, vi); 36 vb = lessThanEqual(vi, vi); 37 vb = greaterThan(vi, vi); 38 vb = greaterThanEqual(vi, vi); 39 vb = equal(vi, vi); 40 vb = notEqual(vi, vi); 41 42 // 8.8 43 //vi = uaddCarry(vi, vi, vi); 44 //vi = usubBorrow(vi, vi, vi); 45 imulExtended(vi, vi, vi, vi); 46 vi = bitfieldExtract(vi, i, i); 47 vi = bitfieldInsert(vi, vi, i, i); 48 vi = bitfieldReverse(vi); 49 vi = bitCount(vi); 50 //vi = findLSB(vi); 51 //vi = findMSB(vi); 52 53 // GL_EXT_shader_integer_mix 54 vi = mix(vi, vi, vb); 55 vb = mix(vb, vb, vb); 56 57 // GL_EXT_expect_assume 58 vi = expectEXT(vi, vi); 59}