Files
wgpu/tests/out/glsl/bits.main.Compute.glsl
Evan Mark Hopkins fb2d438dbd [msl-out] Update firstLeadingBit for signed integers (#2235)
The prior code only supported unsigned integers.

Also fixes #2236.

Co-authored-by: Jim Blandy <jimb@red-bean.com>
2023-02-02 09:47:17 -08:00

137 lines
3.5 KiB
GLSL

#version 310 es
precision highp float;
precision highp int;
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
int i = 0;
ivec2 i2_ = ivec2(0);
ivec3 i3_ = ivec3(0);
ivec4 i4_ = ivec4(0);
uint u = 0u;
uvec2 u2_ = uvec2(0u);
uvec3 u3_ = uvec3(0u);
uvec4 u4_ = uvec4(0u);
vec2 f2_ = vec2(0.0);
vec4 f4_ = vec4(0.0);
i = 0;
i2_ = ivec2(0);
i3_ = ivec3(0);
i4_ = ivec4(0);
u = 0u;
u2_ = uvec2(0u);
u3_ = uvec3(0u);
u4_ = uvec4(0u);
f2_ = vec2(0.0);
f4_ = vec4(0.0);
vec4 _e28 = f4_;
u = packSnorm4x8(_e28);
vec4 _e30 = f4_;
u = packUnorm4x8(_e30);
vec2 _e32 = f2_;
u = packSnorm2x16(_e32);
vec2 _e34 = f2_;
u = packUnorm2x16(_e34);
vec2 _e36 = f2_;
u = packHalf2x16(_e36);
uint _e38 = u;
f4_ = unpackSnorm4x8(_e38);
uint _e40 = u;
f4_ = unpackUnorm4x8(_e40);
uint _e42 = u;
f2_ = unpackSnorm2x16(_e42);
uint _e44 = u;
f2_ = unpackUnorm2x16(_e44);
uint _e46 = u;
f2_ = unpackHalf2x16(_e46);
int _e48 = i;
int _e49 = i;
i = bitfieldInsert(_e48, _e49, int(5u), int(10u));
ivec2 _e53 = i2_;
ivec2 _e54 = i2_;
i2_ = bitfieldInsert(_e53, _e54, int(5u), int(10u));
ivec3 _e58 = i3_;
ivec3 _e59 = i3_;
i3_ = bitfieldInsert(_e58, _e59, int(5u), int(10u));
ivec4 _e63 = i4_;
ivec4 _e64 = i4_;
i4_ = bitfieldInsert(_e63, _e64, int(5u), int(10u));
uint _e68 = u;
uint _e69 = u;
u = bitfieldInsert(_e68, _e69, int(5u), int(10u));
uvec2 _e73 = u2_;
uvec2 _e74 = u2_;
u2_ = bitfieldInsert(_e73, _e74, int(5u), int(10u));
uvec3 _e78 = u3_;
uvec3 _e79 = u3_;
u3_ = bitfieldInsert(_e78, _e79, int(5u), int(10u));
uvec4 _e83 = u4_;
uvec4 _e84 = u4_;
u4_ = bitfieldInsert(_e83, _e84, int(5u), int(10u));
int _e88 = i;
i = bitfieldExtract(_e88, int(5u), int(10u));
ivec2 _e92 = i2_;
i2_ = bitfieldExtract(_e92, int(5u), int(10u));
ivec3 _e96 = i3_;
i3_ = bitfieldExtract(_e96, int(5u), int(10u));
ivec4 _e100 = i4_;
i4_ = bitfieldExtract(_e100, int(5u), int(10u));
uint _e104 = u;
u = bitfieldExtract(_e104, int(5u), int(10u));
uvec2 _e108 = u2_;
u2_ = bitfieldExtract(_e108, int(5u), int(10u));
uvec3 _e112 = u3_;
u3_ = bitfieldExtract(_e112, int(5u), int(10u));
uvec4 _e116 = u4_;
u4_ = bitfieldExtract(_e116, int(5u), int(10u));
int _e120 = i;
i = findLSB(_e120);
uvec2 _e122 = u2_;
u2_ = uvec2(findLSB(_e122));
ivec3 _e124 = i3_;
i3_ = findMSB(_e124);
uvec3 _e126 = u3_;
u3_ = uvec3(findMSB(_e126));
int _e128 = i;
i = findMSB(_e128);
uint _e130 = u;
u = uint(findMSB(_e130));
int _e132 = i;
i = bitCount(_e132);
ivec2 _e134 = i2_;
i2_ = bitCount(_e134);
ivec3 _e136 = i3_;
i3_ = bitCount(_e136);
ivec4 _e138 = i4_;
i4_ = bitCount(_e138);
uint _e140 = u;
u = uint(bitCount(_e140));
uvec2 _e142 = u2_;
u2_ = uvec2(bitCount(_e142));
uvec3 _e144 = u3_;
u3_ = uvec3(bitCount(_e144));
uvec4 _e146 = u4_;
u4_ = uvec4(bitCount(_e146));
int _e148 = i;
i = bitfieldReverse(_e148);
ivec2 _e150 = i2_;
i2_ = bitfieldReverse(_e150);
ivec3 _e152 = i3_;
i3_ = bitfieldReverse(_e152);
ivec4 _e154 = i4_;
i4_ = bitfieldReverse(_e154);
uint _e156 = u;
u = bitfieldReverse(_e156);
uvec2 _e158 = u2_;
u2_ = bitfieldReverse(_e158);
uvec3 _e160 = u3_;
u3_ = bitfieldReverse(_e160);
uvec4 _e162 = u4_;
u4_ = bitfieldReverse(_e162);
return;
}