--- /dev/null
+ sub SP, #16*4
+/*=== W[ 0] ===*/
+ ldr r14, [r1, #5*4]
+ ldr r3, [r2, #5*4]
+ eor r14, r3
+ str r14, [SP, #5*4]
+ ldr r12, [r1, #7*4]
+ ldr r3, [r2, #7*4]
+ eor r12, r3
+ str r12, [SP, #7*4]
+ ldr r11, [r1, #10*4]
+ ldr r3, [r2, #10*4]
+ eor r11, r3
+ str r11, [SP, #10*4]
+ ldr r10, [r1, #13*4]
+ ldr r3, [r2, #13*4]
+ eor r10, r3
+ str r10, [SP, #13*4]
+ ldr r9, [r1, #14*4]
+ ldr r3, [r2, #14*4]
+ eor r9, r3
+ str r9, [SP, #14*4]
+ sub r8, r9, r12
+/*(-- should do +10, +13, +1tr, +5 --)*/
+ add r3, r11, r10
+ add r3, r8
+ add r3, r14
+ S32_0 r7 r3
+ ldr r3, [r1, #1*4]
+ add r7, r3
+ str r7, [r0, #0*4]
+/*=== W[ 3] ===*/
+ ldr r7, [r1, #0*4]
+ ldr r3, [r2, #0*4]
+ eor r7, r3
+ str r7, [SP, #0*4]
+ ldr r6, [r1, #1*4]
+ ldr r3, [r2, #1*4]
+ eor r6, r3
+ str r6, [SP, #1*4]
+ ldr r5, [r1, #8*4]
+ ldr r3, [r2, #8*4]
+ eor r5, r3
+ str r5, [SP, #8*4]
+ add r4, r6, r11
+/*(-- should do +0, +13, +8, -2tr --)*/
+ add r3, r7, r10
+ add r3, r5
+ sub r3, r4
+ S32_3 r6 r3
+ ldr r3, [r1, #4*4]
+ add r6, r3
+ str r6, [r0, #3*4]
+/*=== W[ 6] ===*/
+ ldr r9, [r1, #3*4]
+ ldr r3, [r2, #3*4]
+ eor r9, r3
+ str r9, [SP, #3*4]
+ ldr r6, [r1, #4*4]
+ ldr r3, [r2, #4*4]
+ eor r6, r3
+ str r6, [SP, #4*4]
+ ldr r5, [r1, #11*4]
+ ldr r3, [r2, #11*4]
+ eor r5, r3
+ str r5, [SP, #11*4]
+/*(-- should do +13, +4, -0, -11, -3 --)*/
+ add r3, r10, r6
+ sub r3, r7
+ sub r3, r5
+ sub r3, r9
+ S32_1 r5 r3
+ ldr r3, [r1, #7*4]
+ add r5, r3
+ str r5, [r0, #6*4]
+/*=== W[ 9] ===*/
+ ldr r5, [r1, #6*4]
+ ldr r3, [r2, #6*4]
+ eor r5, r3
+ str r5, [SP, #6*4]
+ sub r14, r5, r9
+/*(-- should do +0, +0tr, +1tr --)*/
+ add r3, r7, r14
+ add r3, r8
+ S32_4 r3
+ ldr r8, [r1, #10*4]
+ add r3, r8
+ str r3, [r0, #9*4]
+/*=== W[12] ===*/
+ ldr r8, [r1, #9*4]
+ ldr r3, [r2, #9*4]
+ eor r8, r3
+ str r8, [SP, #9*4]
+/*(-- should do +2tr, -0tr, -9 --)*/
+ sub r3, r4, r14
+ sub r3, r8
+ S32_2 r14 r3
+ ldr r3, [r1, #13*4]
+ add r14, r3
+ str r14, [r0, #12*4]
+/*=== W[15] ===*/
+ ldr r14, [r1, #12*4]
+ ldr r3, [r2, #12*4]
+ eor r14, r3
+ str r14, [SP, #12*4]
+ sub r4, r14, r8
+ sub r11, r10, r5
+/*(-- should do +0tr, +1tr, -4 --)*/
+ add r3, r4, r11
+ sub r3, r6
+ S32_0 r10 r3
+ ldr r3, [r1, #0*4]
+ add r10, r3
+ str r10, [r0, #15*4]
+/*=== W[ 2] ===*/
+ ldr r10, [r1, #15*4]
+ ldr r3, [r2, #15*4]
+ eor r10, r3
+ str r10, [SP, #15*4]
+/*(-- should do +0, +15, +7, -0tr --)*/
+ add r3, r7, r10
+ add r3, r12
+ sub r3, r4
+ S32_2 r4 r3
+ ldr r3, [r1, #3*4]
+ add r4, r3
+ str r4, [r0, #2*4]
+/*=== W[ 5] ===*/
+ ldr r12, [r1, #2*4]
+ ldr r3, [r2, #2*4]
+ eor r12, r3
+ str r12, [SP, #2*4]
+ ldr r4, [SP, #10*4]
+ sub r6, r10, r12
+ sub r5, r9, r14
+/*(-- should do +0tr, +10, +2tr --)*/
+ add r3, r6, r4
+ add r3, r5
+ S32_0 r9 r3
+ ldr r3, [r1, #6*4]
+ add r9, r3
+ str r9, [r0, #5*4]
+/*=== W[ 8] ===*/
+ ldr r9, [SP, #5*4]
+/*(-- should do +1tr, -0tr, -5 --)*/
+ sub r3, r11, r6
+ sub r3, r9
+ S32_3 r11 r3
+ ldr r3, [r1, #9*4]
+ add r11, r3
+ str r11, [r0, #8*4]
+/*=== W[11] ===*/
+ ldr r11, [SP, #8*4]
+ sub r6, r11, r9
+/*(-- should do +0tr, +9, -0, -2 --)*/
+ add r3, r6, r8
+ sub r3, r7
+ sub r3, r12
+ S32_1 r7 r3
+ ldr r3, [r1, #12*4]
+ add r7, r3
+ str r7, [r0, #11*4]
+/*=== W[14] ===*/
+ ldr r7, [SP, #11*4]
+/*(-- should do +0tr, +2tr, -11 --)*/
+ add r3, r6, r5
+ sub r3, r7
+ S32_4 r3
+ ldr r6, [r1, #15*4]
+ add r3, r6
+ str r3, [r0, #14*4]
+/*=== W[ 1] ===*/
+ ldr r6, [SP, #6*4]
+ ldr r5, [SP, #14*4]
+ add r4, r7, r5
+ add r14, r11, r10
+/*(-- should do +0tr, +6, -1tr --)*/
+ add r3, r4, r6
+ sub r3, r14
+ S32_1 r11 r3
+ ldr r3, [r1, #2*4]
+ add r11, r3
+ str r11, [r0, #1*4]
+/*=== W[ 4] ===*/
+ ldr r11, [SP, #1*4]
+/*(-- should do +1, +2, +9, -0tr --)*/
+ add r3, r11, r12
+ add r3, r8
+ sub r3, r4
+ S32_4 r3
+ ldr r4, [r1, #5*4]
+ add r3, r4
+ str r3, [r0, #4*4]
+/*=== W[ 7] ===*/
+ ldr r10, [SP, #4*4]
+ ldr r4, [SP, #12*4]
+/*(-- should do +1, -12, -14, -4, -5 --)*/
+ sub r3, r11, r4
+ sub r3, r5
+ sub r3, r10
+ sub r3, r9
+ S32_2 r11 r3
+ ldr r3, [r1, #8*4]
+ add r11, r3
+ str r11, [r0, #7*4]
+/*=== W[10] ===*/
+ ldr r11, [SP, #1*4]
+ ldr r9, [SP, #7*4]
+ add r8, r10, r9
+/*(-- should do +1tr, -0tr, -1 --)*/
+ sub r3, r14, r8
+ sub r3, r11
+ S32_0 r14 r3
+ ldr r3, [r1, #11*4]
+ add r14, r3
+ str r14, [r0, #10*4]
+/*=== W[13] ===*/
+ ldr r14, [SP, #10*4]
+/*(-- should do +0tr, +10, +11, +2 --)*/
+ add r3, r8, r14
+ add r3, r7
+ add r3, r12
+ S32_3 r8 r3
+ ldr r3, [r1, #14*4]
+ add r8, r3
+ str r8, [r0, #13*4]
+ add SP, #16*4