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<float, 5> vf; 13 float f; 14 vector<uint32_t, 5> vu; 15 uint32_t u; 16 vector<int32_t, 5> vi; 17 int32_t i; 18 vector<float16_t, 5> vf16; 19 float16_t f16; 20 vector<bool, 5> vb; 21 bool b; 22 23 vf = max(vf, vf); 24 vf = smoothstep(f, f, vf); 25 vf = smoothstep(vf, vf, vf); 26 27 vf16 = smoothstep(vf16, vf16, vf16); 28 29 // 8.1 30 vf = radians(vf); 31 vf = degrees(vf); 32 vf = sin(vf); 33 vf = cos(vf); 34 vf = tan(vf); 35 vf = asin(vf); 36 vf = acos(vf); 37 vf = atan(vf); 38 vf = atan(vf, vf); 39 vf = sinh(vf); 40 vf = cosh(vf); 41 vf = tanh(vf); 42 vf = asinh(vf); 43 vf = acosh(vf); 44 vf = atanh(vf); 45 46 // 8.2 47 vf = pow(vf, vf); 48 vf = exp(vf); 49 vf = log(vf); 50 vf = exp2(vf); 51 vf = log2(vf); 52 vf = sqrt(vf); 53 vf = inversesqrt(vf); 54 55 // 8.3 56 vf = abs(vf); 57 vf = sign(vf); 58 vf = floor(vf); 59 vf = trunc(vf); 60 vf = round(vf); 61 vf = roundEven(vf); 62 vf = ceil(vf); 63 vf = fract(vf); 64 vf = mod(vf, f); 65 vf = mod(vf, vf); 66 vf = modf(vf, vf); 67 vf = min(vf, f); 68 vf = min(vf, vf); 69 vf = max(vf, f); 70 vf = max(vf, vf); 71 vf = clamp(vf, f, f); 72 vf = clamp(vf, vf, vf); 73 vf = mix(vf, vf, f); 74 vf = mix(vf, vf, vf); 75 vf = mix(vf, vf, vb); 76 vf = step(vf, vf); 77 vf = step(f, vf); 78 vf = smoothstep(vf, vf, vf); 79 vf = smoothstep(f, f, vf); 80 vb = isnan(vf); 81 vb = isinf(vf); 82 vi = floatBitsToInt(vf); 83 vu = floatBitsToUint(vf); 84 vf = intBitsToFloat(vi); 85 vf = uintBitsToFloat(vu); 86 vf = fma(vf, vf, vf); 87 vf = frexp(vf, vi); 88 vf = ldexp(vf, vi); 89 90 // 8.5 91 f = length(vf); 92 f = distance(vf, vf); 93 f = dot(vf, vf); 94 vf = normalize(vf); 95 vf = faceforward(vf, vf, vf); 96 vf = reflect(vf, vf); 97 vf = refract(vf, vf, f); 98 99 // 8.7 100 vb = lessThan(vf, vf); 101 vb = lessThanEqual(vf, vf); 102 vb = greaterThan(vf, vf); 103 vb = greaterThanEqual(vf, vf); 104 vb = equal(vf, vf); 105 vb = notEqual(vf, vf); 106 b = any(vb); 107 b = all(vb); 108 vb = not(vb); 109 110 // 8.8 111 vu = uaddCarry(vu, vu, vu); 112 vu = usubBorrow(vu, vu, vu); 113 umulExtended(vu, vu, vu, vu); 114 imulExtended(vi, vi, vi, vi); 115 vu = bitfieldExtract(vu, i, i); 116 vu = bitfieldInsert(vu, vu, i, i); 117 vu = bitfieldReverse(vu); 118 vi = bitCount(vu); 119 vi = findLSB(vu); 120 vi = findMSB(vu); 121 122 // GL_EXT_shader_integer_mix 123 vu = mix(vu, vu, vb); 124 vb = mix(vb, vb, vb); 125 126 // GL_EXT_expect_assume 127 vu = expectEXT(vu, vu); 128}