* v0.x ^= 0x01010000u ^ u32(OUTLEN);
*
* INLEN is constant 40 bytes: work value (8) + block hash (32)
- * v12.x ^= u32(INLEN);
+ * vC.x ^= u32(INLEN);
*
* It is always the "last" compression at this INLEN
- * v14 = ~v14;
+ * vE = ~vE;
*/
var v0: vec2<u32> = BLAKE2B_IV_0;
var v1: vec2<u32> = vec2(0x84CAA73Bu, 0xBB67AE85u);
var v7: vec2<u32> = vec2(0x137E2179u, 0x5BE0CD19u);
var v8: vec2<u32> = vec2(0xF3BCC908u, 0x6A09E667u);
var v9: vec2<u32> = vec2(0x84CAA73Bu, 0xBB67AE85u);
- var v10: vec2<u32> = vec2(0xFE94F82Bu, 0x3C6EF372u);
- var v11: vec2<u32> = vec2(0x5F1D36F1u, 0xA54FF53Au);
- var v12: vec2<u32> = vec2(0xADE682F9u, 0x510E527Fu);
- var v13: vec2<u32> = vec2(0x2B3E6C1Fu, 0x9B05688Cu);
- var v14: vec2<u32> = vec2(0x04BE4294u, 0xE07C2654u);
- var v15: vec2<u32> = vec2(0x137E2179u, 0x5BE0CD19u);
+ var vA: vec2<u32> = vec2(0xFE94F82Bu, 0x3C6EF372u);
+ var vB: vec2<u32> = vec2(0x5F1D36F1u, 0xA54FF53Au);
+ var vC: vec2<u32> = vec2(0xADE682F9u, 0x510E527Fu);
+ var vD: vec2<u32> = vec2(0x2B3E6C1Fu, 0x9B05688Cu);
+ var vE: vec2<u32> = vec2(0x04BE4294u, 0xE07C2654u);
+ var vF: vec2<u32> = vec2(0x137E2179u, 0x5BE0CD19u);
/**
* Twelve rounds of G mixing as part of BLAKE2b compression step, each divided
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
v0 = v0 + m0 + vec2(0u, u32(v0.x + m0.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
v0 = v0 + m1 + vec2(0u, u32(v0.x + m1.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m2 + vec2(0u, u32(v1.x + m2.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m3 + vec2(0u, u32(v1.x + m3.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m4 + vec2(0u, u32(v2.x + m4.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=0, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=0, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=0, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=0, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=0, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=1, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m4 + vec2(0u, u32(v1.x + m4.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=1, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=1, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=1, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m1 + vec2(0u, u32(v0.x + m1.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=1, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
v1 = v1 + m0 + vec2(0u, u32(v1.x + m0.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
v1 = v1 + m2 + vec2(0u, u32(v1.x + m2.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=1, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=1, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
v3 = v3 + m3 + vec2(0u, u32(v3.x + m3.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=2, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
* r=2, i=1, a=v[1], b=v[5], c=v[9], d=v[13]
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m0 + vec2(0u, u32(v1.x + m0.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=2, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m2 + vec2(0u, u32(v2.x + m2.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=2, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=2, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=2, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
v1 = v1 + m3 + vec2(0u, u32(v1.x + m3.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=2, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
v2 = v2 + m1 + vec2(0u, u32(v2.x + m1.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=2, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
v3 = v3 + m4 + vec2(0u, u32(v3.x + m4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=3, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m3 + vec2(0u, u32(v1.x + m3.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m1 + vec2(0u, u32(v1.x + m1.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=3, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=3, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=3, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m2 + vec2(0u, u32(v0.x + m2.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=3, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=3, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
v2 = v2 + m4 + vec2(0u, u32(v2.x + m4.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
v2 = v2 + m0 + vec2(0u, u32(v2.x + m0.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=3, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=4, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
v0 = v0 + m0 + vec2(0u, u32(v0.x + m0.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
* r=4, i=1, a=v[1], b=v[5], c=v[9], d=v[13]
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m2 + vec2(0u, u32(v2.x + m2.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m4 + vec2(0u, u32(v2.x + m4.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=4, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=4, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m1 + vec2(0u, u32(v0.x + m1.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=4, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=4, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
v3 = v3 + m3 + vec2(0u, u32(v3.x + m3.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
v0 = v0 + m2 + vec2(0u, u32(v0.x + m2.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
* r=5, i=1, a=v[1], b=v[5], c=v[9], d=v[13]
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m0 + vec2(0u, u32(v2.x + m0.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=5, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
v3 = v3 + m3 + vec2(0u, u32(v3.x + m3.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=5, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m4 + vec2(0u, u32(v0.x + m4.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=5, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=5, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
v3 = v3 + m1 + vec2(0u, u32(v3.x + m1.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=6, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m1 + vec2(0u, u32(v1.x + m1.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=6, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=6, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
v3 = v3 + m4 + vec2(0u, u32(v3.x + m4.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=6, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m0 + vec2(0u, u32(v0.x + m0.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=6, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
v1 = v1 + m3 + vec2(0u, u32(v1.x + m3.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=6, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
v2 = v2 + m2 + vec2(0u, u32(v2.x + m2.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=6, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=7, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
* r=7, i=1, a=v[1], b=v[5], c=v[9], d=v[13]
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=7, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m1 + vec2(0u, u32(v2.x + m1.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=7, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
v3 = v3 + m3 + vec2(0u, u32(v3.x + m3.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=7, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m0 + vec2(0u, u32(v0.x + m0.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=7, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
v1 = v1 + m4 + vec2(0u, u32(v1.x + m4.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=7, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
v3 = v3 + m2 + vec2(0u, u32(v3.x + m2.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=8, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
* r=8, i=1, a=v[1], b=v[5], c=v[9], d=v[13]
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=8, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m3 + vec2(0u, u32(v2.x + m3.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=8, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
v3 = v3 + m0 + vec2(0u, u32(v3.x + m0.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=8, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m2 + vec2(0u, u32(v0.x + m2.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=8, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=8, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
v2 = v2 + m1 + vec2(0u, u32(v2.x + m1.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
v2 = v2 + m4 + vec2(0u, u32(v2.x + m4.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=8, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=9, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
v0 = v0 + m2 + vec2(0u, u32(v0.x + m2.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
* r=9, i=1, a=v[1], b=v[5], c=v[9], d=v[13]
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m4 + vec2(0u, u32(v1.x + m4.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=9, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=9, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
v3 = v3 + m1 + vec2(0u, u32(v3.x + m1.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=9, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=9, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=9, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
v2 = v2 + m3 + vec2(0u, u32(v2.x + m3.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=9, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
v3 = v3 + m0 + vec2(0u, u32(v3.x + m0.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
v0 = v0 + m0 + vec2(0u, u32(v0.x + m0.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
v0 = v0 + m1 + vec2(0u, u32(v0.x + m1.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) << ROTATE_1) | ((v4 ^ v8).yx >> ROTATE_31);
/**
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m2 + vec2(0u, u32(v1.x + m2.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m3 + vec2(0u, u32(v1.x + m3.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
v2 = v2 + m4 + vec2(0u, u32(v2.x + m4.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) << ROTATE_1) | ((v6 ^ v10).yx >> ROTATE_31);
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) << ROTATE_1) | ((v6 ^ vA).yx >> ROTATE_31);
/**
* r=10, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=10, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
- v15 = ((v15 ^ v0) >> ROTATE_16) | ((v15 ^ v0).yx << ROTATE_16);
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) << ROTATE_1) | ((v5 ^ v10).yx >> ROTATE_31);
+ vF = ((vF ^ v0) >> ROTATE_16) | ((vF ^ v0).yx << ROTATE_16);
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) << ROTATE_1) | ((v5 ^ vA).yx >> ROTATE_31);
/**
* r=10, i=5, a=v[1], b=v[6], c=v[11], d=v[12]
*/
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = (v12 ^ v1).yx;
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) >> ROTATE_24) | ((v6 ^ v11).yx << ROTATE_8);
+ vC = (vC ^ v1).yx;
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) >> ROTATE_24) | ((v6 ^ vB).yx << ROTATE_8);
v1 = v1 + v6 + vec2(0u, u32(v1.x + v6.x < v1.x));
- v12 = ((v12 ^ v1) >> ROTATE_16) | ((v12 ^ v1).yx << ROTATE_16);
- v11 = v11 + v12 + vec2(0u, u32(v11.x + v12.x < v11.x));
- v6 = ((v6 ^ v11) << ROTATE_1) | ((v6 ^ v11).yx >> ROTATE_31);
+ vC = ((vC ^ v1) >> ROTATE_16) | ((vC ^ v1).yx << ROTATE_16);
+ vB = vB + vC + vec2(0u, u32(vB.x + vC.x < vB.x));
+ v6 = ((v6 ^ vB) << ROTATE_1) | ((v6 ^ vB).yx >> ROTATE_31);
/**
* r=10, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) << ROTATE_1) | ((v7 ^ v8).yx >> ROTATE_31);
/**
* r=10, i=7, a=v[3], b=v[4], c=v[9], d=v[14]
*/
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = (v14 ^ v3).yx;
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = (vE ^ v3).yx;
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) >> ROTATE_24) | ((v4 ^ v9).yx << ROTATE_8);
v3 = v3 + v4 + vec2(0u, u32(v3.x + v4.x < v3.x));
- v14 = ((v14 ^ v3) >> ROTATE_16) | ((v14 ^ v3).yx << ROTATE_16);
- v9 = v9 + v14 + vec2(0u, u32(v9.x + v14.x < v9.x));
+ vE = ((vE ^ v3) >> ROTATE_16) | ((vE ^ v3).yx << ROTATE_16);
+ v9 = v9 + vE + vec2(0u, u32(v9.x + vE.x < v9.x));
v4 = ((v4 ^ v9) << ROTATE_1) | ((v4 ^ v9).yx >> ROTATE_31);
* r=11, i=0, a=v[0], b=v[4], c=v[8], d=v[12]
*/
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = (v12 ^ v0).yx;
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = (vC ^ v0).yx;
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
v4 = ((v4 ^ v8) >> ROTATE_24) | ((v4 ^ v8).yx << ROTATE_8);
v0 = v0 + v4 + vec2(0u, u32(v0.x + v4.x < v0.x));
- v12 = ((v12 ^ v0) >> ROTATE_16) | ((v12 ^ v0).yx << ROTATE_16);
- v8 = v8 + v12 + vec2(0u, u32(v8.x + v12.x < v8.x));
+ vC = ((vC ^ v0) >> ROTATE_16) | ((vC ^ v0).yx << ROTATE_16);
+ v8 = v8 + vC + vec2(0u, u32(v8.x + vC.x < v8.x));
// skip since it does not affect the final values of `v0` and `v8`
/**
*/
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
v1 = v1 + m4 + vec2(0u, u32(v1.x + m4.x < v1.x));
- v13 = (v13 ^ v1).yx;
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = (vD ^ v1).yx;
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) >> ROTATE_24) | ((v5 ^ v9).yx << ROTATE_8);
v1 = v1 + v5 + vec2(0u, u32(v1.x + v5.x < v1.x));
- v13 = ((v13 ^ v1) >> ROTATE_16) | ((v13 ^ v1).yx << ROTATE_16);
- v9 = v9 + v13 + vec2(0u, u32(v9.x + v13.x < v9.x));
+ vD = ((vD ^ v1) >> ROTATE_16) | ((vD ^ v1).yx << ROTATE_16);
+ v9 = v9 + vD + vec2(0u, u32(v9.x + vD.x < v9.x));
v5 = ((v5 ^ v9) << ROTATE_1) | ((v5 ^ v9).yx >> ROTATE_31);
/**
* r=11, i=2, a=v[2], b=v[6], c=v[10], d=v[14]
*/
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = (v14 ^ v2).yx;
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
- v6 = ((v6 ^ v10) >> ROTATE_24) | ((v6 ^ v10).yx << ROTATE_8);
+ vE = (vE ^ v2).yx;
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
+ v6 = ((v6 ^ vA) >> ROTATE_24) | ((v6 ^ vA).yx << ROTATE_8);
v2 = v2 + v6 + vec2(0u, u32(v2.x + v6.x < v2.x));
- v14 = ((v14 ^ v2) >> ROTATE_16) | ((v14 ^ v2).yx << ROTATE_16);
- v10 = v10 + v14 + vec2(0u, u32(v10.x + v14.x < v10.x));
+ vE = ((vE ^ v2) >> ROTATE_16) | ((vE ^ v2).yx << ROTATE_16);
+ vA = vA + vE + vec2(0u, u32(vA.x + vE.x < vA.x));
// skip since it does not affect the final values of `v0` and `v8`
/**
* r=11, i=3, a=v[3], b=v[7], c=v[11], d=v[15]
*/
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = (v15 ^ v3).yx;
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) >> ROTATE_24) | ((v7 ^ v11).yx << ROTATE_8);
+ vF = (vF ^ v3).yx;
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) >> ROTATE_24) | ((v7 ^ vB).yx << ROTATE_8);
v3 = v3 + v7 + vec2(0u, u32(v3.x + v7.x < v3.x));
- v15 = ((v15 ^ v3) >> ROTATE_16) | ((v15 ^ v3).yx << ROTATE_16);
- v11 = v11 + v15 + vec2(0u, u32(v11.x + v15.x < v11.x));
- v7 = ((v7 ^ v11) << ROTATE_1) | ((v7 ^ v11).yx >> ROTATE_31);
+ vF = ((vF ^ v3) >> ROTATE_16) | ((vF ^ v3).yx << ROTATE_16);
+ vB = vB + vF + vec2(0u, u32(vB.x + vF.x < vB.x));
+ v7 = ((v7 ^ vB) << ROTATE_1) | ((v7 ^ vB).yx >> ROTATE_31);
/**
* r=11, i=4, a=v[0], b=v[5], c=v[10], d=v[15]
*/
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
v0 = v0 + m1 + vec2(0u, u32(v0.x + m1.x < v0.x));
- v15 = (v15 ^ v0).yx;
- v10 = v10 + v15 + vec2(0u, u32(v10.x + v15.x < v10.x));
- v5 = ((v5 ^ v10) >> ROTATE_24) | ((v5 ^ v10).yx << ROTATE_8);
+ vF = (vF ^ v0).yx;
+ vA = vA + vF + vec2(0u, u32(vA.x + vF.x < vA.x));
+ v5 = ((v5 ^ vA) >> ROTATE_24) | ((v5 ^ vA).yx << ROTATE_8);
v0 = v0 + v5 + vec2(0u, u32(v0.x + v5.x < v0.x));
// skip since it does not affect the final values of `v0` and `v8`
// skip since it does not affect the final values of `v0` and `v8`
* r=11, i=6, a=v[2], b=v[7], c=v[8], d=v[13]
*/
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = (v13 ^ v2).yx;
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = (vD ^ v2).yx;
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
v7 = ((v7 ^ v8) >> ROTATE_24) | ((v7 ^ v8).yx << ROTATE_8);
v2 = v2 + v7 + vec2(0u, u32(v2.x + v7.x < v2.x));
- v13 = ((v13 ^ v2) >> ROTATE_16) | ((v13 ^ v2).yx << ROTATE_16);
- v8 = v8 + v13 + vec2(0u, u32(v8.x + v13.x < v8.x));
+ vD = ((vD ^ v2) >> ROTATE_16) | ((vD ^ v2).yx << ROTATE_16);
+ v8 = v8 + vD + vec2(0u, u32(v8.x + vD.x < v8.x));
// skip since we already have the final values of `v0` and `v8`
/**