From: Chris Duncan Date: Mon, 3 Feb 2025 23:19:56 +0000 (-0800) Subject: Compress v naming convention using hex convention. X-Git-Tag: v3.0.0~49 X-Git-Url: https://zoso.dev/?a=commitdiff_plain;h=07e993d5807e3d162ad048445bc8edf39cb69c38;p=nano-pow.git Compress v naming convention using hex convention. --- diff --git a/src/shaders/compute.wgsl b/src/shaders/compute.wgsl index bbaafca..c09a1f7 100644 --- a/src/shaders/compute.wgsl +++ b/src/shaders/compute.wgsl @@ -111,9 +111,9 @@ fn main(id: vec3) { var v45: vec4 = vec4(0xADE682D1u, 0x510E527Fu, 0x2B3E6C1Fu, 0x9B05688Cu); var v67: vec4 = vec4(0xFB41BD6Bu, 0x1F83D9ABu, 0x137E2179u, 0x5BE0CD19u); var v89: vec4 = vec4(0xF3BCC908u, 0x6A09E667u, 0x84CAA73Bu, 0xBB67AE85u); - var v1011: vec4 = vec4(0xFE94F82Bu, 0x3C6EF372u, 0x5F1D36F1u, 0xA54FF53Au); - var v1213: vec4 = vec4(0xADE682F9u, 0x510E527Fu, 0x2B3E6C1Fu, 0x9B05688Cu); - var v1415: vec4 = vec4(0x04BE4294u, 0xE07C2654u, 0x137E2179u, 0x5BE0CD19u); + var vAB: vec4 = vec4(0xFE94F82Bu, 0x3C6EF372u, 0x5F1D36F1u, 0xA54FF53Au); + var vCD: vec4 = vec4(0xADE682F9u, 0x510E527Fu, 0x2B3E6C1Fu, 0x9B05688Cu); + var vEF: vec4 = vec4(0x04BE4294u, 0xE07C2654u, 0x137E2179u, 0x5BE0CD19u); /** * Twelve rounds of G mixing as part of BLAKE2b compression step. Normally, @@ -164,13 +164,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -182,46 +182,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=0, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=0, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); // x = VEC4_0; // y = VEC4_0; v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=0, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=0, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); // x = VEC4_0; // y = VEC4_0; @@ -238,8 +238,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -257,13 +257,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -275,46 +275,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=1, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=1, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); x = vec4(m1, m0); y = vec4(VEC2_0, m2); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=1, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=1, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); // x = VEC4_0; y = vec4(VEC2_0, m3); @@ -331,8 +331,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -351,13 +351,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -369,46 +369,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=2, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=2, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); x = vec4(VEC2_0, m3); // y = VEC4_0; v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=2, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=2, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); // x = VEC4_0; y = vec4(m1, m4); @@ -425,8 +425,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -445,13 +445,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -463,46 +463,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=3, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=3, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); x = vec4(m2, VEC2_0); // y = VEC4_0; v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=3, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=3, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); x = vec4(m4, VEC2_0); y = vec4(m0, VEC2_0); @@ -519,8 +519,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -539,13 +539,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -557,46 +557,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=4, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=4, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); // x = VEC4_0; y = vec4(m1, VEC2_0); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=4, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=4, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); x = vec4(VEC2_0, m3); // y = VEC4_0; @@ -613,8 +613,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -633,13 +633,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -651,46 +651,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=5, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=5, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); x = vec4(m4, VEC2_0); // y = VEC4_0; v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=5, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=5, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); x = vec4(VEC2_0, m1); // y = VEC4_0; @@ -707,8 +707,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -727,13 +727,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -745,46 +745,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=6, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=6, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); x = vec4(m0, VEC2_0); // y = vec4(VEC2_0, m3); // still assigned this value from last assignment at r=5 i=4/5 v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=6, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=6, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); // x = VEC4_0; y = vec4(m2, VEC2_0); @@ -801,8 +801,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -821,13 +821,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -839,46 +839,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=7, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=7, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); // x = VEC4_0; y = vec4(m0, m4); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=7, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=7, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); x = vec4(VEC2_0, m2); // y = VEC4_0; @@ -895,8 +895,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -915,13 +915,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -933,46 +933,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=8, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=8, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); // x = VEC4_0; y = vec4(m2, VEC2_0); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=8, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=8, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); x = vec4(m1, VEC2_0); y = vec4(m4, VEC2_0); @@ -989,8 +989,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -1009,13 +1009,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -1027,46 +1027,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=9, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=9, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); // x = VEC4_0; // y = VEC4_0; v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=9, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=9, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); x = vec4(m3, VEC2_0); y = vec4(VEC2_0, m0); @@ -1083,8 +1083,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -1103,13 +1103,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -1121,46 +1121,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=10, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=10, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); // x = VEC4_0; // y = VEC4_0; v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=10, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=10, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); // x = VEC4_0; // y = VEC4_0; @@ -1177,8 +1177,8 @@ fn main(id: vec3) { v67 = vec4(v67.xy, b.xy); v45 = vec4(b.zw, v45.zw); - v1213 = vec4(v1213.xy, d.xy); - v1415 = vec4(d.zw, v1415.zw); + vCD = vec4(vCD.xy, d.xy); + vEF = vec4(d.zw, vEF.zw); @@ -1197,13 +1197,13 @@ fn main(id: vec3) { v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); - v1213 = (v1213 ^ v01).yxwz; - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = (vCD ^ v01).yxwz; + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) >> ROTATE_24) | ((v45 ^ v89).yxwz << ROTATE_8); v01 += v45 + vec4(0u, u32(v01.x + v45.x < v01.x), 0u, u32(v01.z + v45.z < v01.z)); // v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); - v1213 = ((v1213 ^ v01) >> ROTATE_16) | ((v1213 ^ v01).yxwz << ROTATE_16); - v89 += v1213 + vec4(0u, u32(v89.x + v1213.x < v89.x), 0u, u32(v89.z + v1213.z < v89.z)); + vCD = ((vCD ^ v01) >> ROTATE_16) | ((vCD ^ v01).yxwz << ROTATE_16); + v89 += vCD + vec4(0u, u32(v89.x + vCD.x < v89.x), 0u, u32(v89.z + vCD.z < v89.z)); v45 = ((v45 ^ v89) << ROTATE_1) | ((v45 ^ v89).yxwz >> ROTATE_31); /** @@ -1215,46 +1215,46 @@ fn main(id: vec3) { v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += x + vec4(0u, u32(v23.x + x.x < v23.x), 0u, u32(v23.z + x.z < v23.z)); - v1415 = (v1415 ^ v23).yxwz; - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) >> ROTATE_24) | ((v67 ^ v1011).yxwz << ROTATE_8); + vEF = (vEF ^ v23).yxwz; + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) >> ROTATE_24) | ((v67 ^ vAB).yxwz << ROTATE_8); v23 += v67 + vec4(0u, u32(v23.x + v67.x < v23.x), 0u, u32(v23.z + v67.z < v23.z)); // v23 += y + vec4(0u, u32(v23.x + y.x < v23.x), 0u, u32(v23.z + y.z < v23.z)); - v1415 = ((v1415 ^ v23) >> ROTATE_16) | ((v1415 ^ v23).yxwz << ROTATE_16); - v1011 += v1415 + vec4(0u, u32(v1011.x + v1415.x < v1011.x), 0u, u32(v1011.z + v1415.z < v1011.z)); - v67 = ((v67 ^ v1011) << ROTATE_1) | ((v67 ^ v1011).yxwz >> ROTATE_31); + vEF = ((vEF ^ v23) >> ROTATE_16) | ((vEF ^ v23).yxwz << ROTATE_16); + vAB += vEF + vec4(0u, u32(vAB.x + vEF.x < vAB.x), 0u, u32(vAB.z + vEF.z < vAB.z)); + v67 = ((v67 ^ vAB) << ROTATE_1) | ((v67 ^ vAB).yxwz >> ROTATE_31); /** * r=11, i=4, a=v[0], b=v[5], c=v[10], d=v[15] * r=11, i=5, a=v[1], b=v[6], c=v[11], d=v[12] */ b = vec4(v45.zw, v67.xy); - d = vec4(v1415.zw, v1213.xy); + d = vec4(vEF.zw, vCD.xy); x = vec4(m1, m0); y = vec4(VEC2_0, m2); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += x + vec4(0u, u32(v01.x + x.x < v01.x), 0u, u32(v01.z + x.z < v01.z)); d = (d ^ v01).yxwz; - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) >> ROTATE_24) | ((b ^ v1011).yxwz << ROTATE_8); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) >> ROTATE_24) | ((b ^ vAB).yxwz << ROTATE_8); v01 += b + vec4(0u, u32(v01.x + b.x < v01.x), 0u, u32(v01.z + b.z < v01.z)); v01 += y + vec4(0u, u32(v01.x + y.x < v01.x), 0u, u32(v01.z + y.z < v01.z)); d = ((d ^ v01) >> ROTATE_16) | ((d ^ v01).yxwz << ROTATE_16); - v1011 += d + vec4(0u, u32(v1011.x + d.x < v1011.x), 0u, u32(v1011.z + d.z < v1011.z)); - b = ((b ^ v1011) << ROTATE_1) | ((b ^ v1011).yxwz >> ROTATE_31); + vAB += d + vec4(0u, u32(vAB.x + d.x < vAB.x), 0u, u32(vAB.z + d.z < vAB.z)); + b = ((b ^ vAB) << ROTATE_1) | ((b ^ vAB).yxwz >> ROTATE_31); v45 = vec4(v45.xy, b.xy); v67 = vec4(b.zw, v67.zw); - v1415 = vec4(v1415.xy, d.xy); - v1213 = vec4(d.zw, v1213.zw); + vEF = vec4(vEF.xy, d.xy); + vCD = vec4(d.zw, vCD.zw); /** * r=11, i=6, a=v[2], b=v[7], c=v[8], d=v[13] * r=11, i=7, a=v[3], b=v[4], c=v[9], d=v[14] */ b = vec4(v67.zw, v45.xy); - d = vec4(v1213.zw, v1415.xy); + d = vec4(vCD.zw, vEF.xy); // x = VEC4_0; y = vec4(VEC2_0, m3); @@ -1271,8 +1271,8 @@ fn main(id: vec3) { // v67 = vec4(v67.xy, b.xy); // v45 = vec4(b.zw, v45.zw); - // v1213 = vec4(v1213.xy, d.xy); - // v1415 = vec4(d.zw, v1415.zw); + // vCD = vec4(vCD.xy, d.xy); + // vEF = vec4(d.zw, vEF.zw);