vmulpd %ymm0 ,%ymm2 , %ymm8\r
vmulpd %ymm0 ,%ymm3 , %ymm12\r
prefetcht0 B_PR1+256(BO)\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm5\r
vmulpd %ymm0 ,%ymm2 , %ymm9\r
vmulpd %ymm0 ,%ymm3 , %ymm13\r
\r
addq $ 12*SIZE, BO\r
vmulpd %ymm0 ,%ymm3 , %ymm14\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm7\r
vmovups -12 * SIZE(BO), %ymm1\r
vmulpd %ymm0 ,%ymm2 , %ymm11\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
prefetcht0 B_PR1+128(BO)\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm12\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm13\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm10\r
\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm14\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vmovups -12 * SIZE(BO), %ymm1\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm12\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm13\r
\r
addq $ 8*SIZE, AO\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm14\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vmovups 0 * SIZE(BO), %ymm1\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm12\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm13\r
\r
addq $ 8*SIZE, AO\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm14\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm15\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
vmovups -4 * SIZE(BO), %ymm3\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm12\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
addq $ 12*SIZE, BO\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm10\r
addq $ 4*SIZE, AO\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm14\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
vfmadd231pd %ymm0 ,%ymm3 , %ymm15\r
vmulpd %ymm0 , %ymm14, %ymm14\r
vmulpd %ymm0 , %ymm15, %ymm15\r
\r
- vpermpd $ 0xb1 , %ymm5, %ymm5\r
- vpermpd $ 0xb1 , %ymm7, %ymm7\r
+ vpermilpd $ 0x05 , %ymm5, %ymm5\r
+ vpermilpd $ 0x05 , %ymm7, %ymm7\r
\r
vblendpd $ 0x0a, %ymm5, %ymm4, %ymm0\r
vblendpd $ 0x05, %ymm5, %ymm4, %ymm1\r
vblendpd $ 0x0a, %ymm7, %ymm6, %ymm2\r
vblendpd $ 0x05, %ymm7, %ymm6, %ymm3\r
\r
- vpermpd $ 0x1b , %ymm2, %ymm2\r
- vpermpd $ 0x1b , %ymm3, %ymm3\r
- vpermpd $ 0xb1 , %ymm2, %ymm2\r
- vpermpd $ 0xb1 , %ymm3, %ymm3\r
+ vperm2f128 $ 0x01 , %ymm2, %ymm2\r
+ vperm2f128 $ 0x01 , %ymm3, %ymm3\r
\r
vblendpd $ 0x03, %ymm0, %ymm2 , %ymm4\r
vblendpd $ 0x03, %ymm1, %ymm3 , %ymm5\r
prefetcht0 32(%rax)\r
prefetcht0 32(%rax,LDC)\r
\r
- vpermpd $ 0xb1 , %ymm9 , %ymm9\r
- vpermpd $ 0xb1 , %ymm11, %ymm11\r
+ vpermilpd $ 0x05 , %ymm9 , %ymm9\r
+ vpermilpd $ 0x05 , %ymm11, %ymm11\r
\r
vblendpd $ 0x0a, %ymm9 , %ymm8 , %ymm0\r
vblendpd $ 0x05, %ymm9 , %ymm8 , %ymm1\r
vblendpd $ 0x0a, %ymm11, %ymm10, %ymm2\r
vblendpd $ 0x05, %ymm11, %ymm10, %ymm3\r
\r
- vpermpd $ 0x1b , %ymm2, %ymm2\r
- vpermpd $ 0x1b , %ymm3, %ymm3\r
- vpermpd $ 0xb1 , %ymm2, %ymm2\r
- vpermpd $ 0xb1 , %ymm3, %ymm3\r
+ vperm2f128 $ 0x01 , %ymm2, %ymm2\r
+ vperm2f128 $ 0x01 , %ymm3, %ymm3\r
\r
vblendpd $ 0x03, %ymm0, %ymm2 , %ymm4\r
vblendpd $ 0x03, %ymm1, %ymm3 , %ymm5\r
prefetcht0 32(%rbp)\r
prefetcht0 32(%rbp,LDC)\r
\r
- vpermpd $ 0xb1 , %ymm13, %ymm13\r
- vpermpd $ 0xb1 , %ymm15, %ymm15\r
+ vpermilpd $ 0x05 , %ymm13, %ymm13\r
+ vpermilpd $ 0x05 , %ymm15, %ymm15\r
\r
vblendpd $ 0x0a, %ymm13, %ymm12, %ymm0\r
vblendpd $ 0x05, %ymm13, %ymm12, %ymm1\r
vblendpd $ 0x0a, %ymm15, %ymm14, %ymm2\r
vblendpd $ 0x05, %ymm15, %ymm14, %ymm3\r
\r
- vpermpd $ 0x1b , %ymm2, %ymm2\r
- vpermpd $ 0x1b , %ymm3, %ymm3\r
- vpermpd $ 0xb1 , %ymm2, %ymm2\r
- vpermpd $ 0xb1 , %ymm3, %ymm3\r
+ vperm2f128 $ 0x01 , %ymm2, %ymm2\r
+ vperm2f128 $ 0x01 , %ymm3, %ymm3\r
\r
vblendpd $ 0x03, %ymm0, %ymm2 , %ymm4\r
vblendpd $ 0x03, %ymm1, %ymm3 , %ymm5\r
vmovups -8 * SIZE(BO), %ymm2\r
vmulpd %ymm0 ,%ymm1 , %ymm4\r
vmulpd %ymm0 ,%ymm2 , %ymm8\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm5\r
vmulpd %ymm0 ,%ymm2 , %ymm9\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm2 , %ymm10\r
\r
addq $ 8*SIZE, BO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm7\r
vmovups -12 * SIZE(BO), %ymm1\r
vmulpd %ymm0 ,%ymm2 , %ymm11\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
prefetcht0 B_PR1+64(BO)\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm6\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm10\r
\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vmovups -12 * SIZE(BO), %ymm1\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
vmovups -12 * SIZE(AO), %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm10\r
\r
addq $ 8*SIZE, AO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vmovups -4 * SIZE(BO), %ymm1\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
vmovups -12 * SIZE(AO), %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm10\r
\r
addq $ 8*SIZE, AO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
addq $ 8*SIZE, BO\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
vmovups -8 * SIZE(BO), %ymm2\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm8\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm9\r
addq $ 8*SIZE, BO\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm6\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm10\r
addq $ 4*SIZE, AO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vfmadd231pd %ymm0 ,%ymm2 , %ymm11\r
\r
vmulpd %ymm0 , %ymm10, %ymm10\r
vmulpd %ymm0 , %ymm11, %ymm11\r
\r
- vpermpd $ 0xb1 , %ymm5, %ymm5\r
- vpermpd $ 0xb1 , %ymm7, %ymm7\r
+ vpermilpd $ 0x05 , %ymm5, %ymm5\r
+ vpermilpd $ 0x05 , %ymm7, %ymm7\r
\r
vblendpd $ 0x0a, %ymm5, %ymm4, %ymm0\r
vblendpd $ 0x05, %ymm5, %ymm4, %ymm1\r
vblendpd $ 0x0a, %ymm7, %ymm6, %ymm2\r
vblendpd $ 0x05, %ymm7, %ymm6, %ymm3\r
\r
- vpermpd $ 0x1b , %ymm2, %ymm2\r
- vpermpd $ 0x1b , %ymm3, %ymm3\r
- vpermpd $ 0xb1 , %ymm2, %ymm2\r
- vpermpd $ 0xb1 , %ymm3, %ymm3\r
+ vperm2f128 $ 0x01 , %ymm2, %ymm2\r
+ vperm2f128 $ 0x01 , %ymm3, %ymm3\r
\r
vblendpd $ 0x03, %ymm0, %ymm2 , %ymm4\r
vblendpd $ 0x03, %ymm1, %ymm3 , %ymm5\r
prefetcht0 32(%rax)\r
prefetcht0 32(%rax,LDC)\r
\r
- vpermpd $ 0xb1 , %ymm9 , %ymm9\r
- vpermpd $ 0xb1 , %ymm11, %ymm11\r
+ vpermilpd $ 0x05 , %ymm9 , %ymm9\r
+ vpermilpd $ 0x05 , %ymm11, %ymm11\r
\r
vblendpd $ 0x0a, %ymm9 , %ymm8 , %ymm0\r
vblendpd $ 0x05, %ymm9 , %ymm8 , %ymm1\r
vblendpd $ 0x0a, %ymm11, %ymm10, %ymm2\r
vblendpd $ 0x05, %ymm11, %ymm10, %ymm3\r
\r
- vpermpd $ 0x1b , %ymm2, %ymm2\r
- vpermpd $ 0x1b , %ymm3, %ymm3\r
- vpermpd $ 0xb1 , %ymm2, %ymm2\r
- vpermpd $ 0xb1 , %ymm3, %ymm3\r
+ vperm2f128 $ 0x01 , %ymm2, %ymm2\r
+ vperm2f128 $ 0x01 , %ymm3, %ymm3\r
\r
vblendpd $ 0x03, %ymm0, %ymm2 , %ymm4\r
vblendpd $ 0x03, %ymm1, %ymm3 , %ymm5\r
vmovups -12 * SIZE(BO), %ymm1\r
vmovups -16 * SIZE(AO), %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm4\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm5\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm6\r
\r
addq $ 4*SIZE, BO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vmulpd %ymm0 ,%ymm1 , %ymm7\r
vmovups -12 * SIZE(BO), %ymm1\r
\r
prefetcht0 A_PR1(AO)\r
vmovups -16 * SIZE(AO), %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm6\r
\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vmovups -12 * SIZE(BO), %ymm1\r
\r
.macro KERNEL4x4_M2\r
vmovups -12 * SIZE(AO), %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm6\r
\r
addq $ 8*SIZE, AO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
vmovups -8 * SIZE(BO), %ymm1\r
addq $ 8*SIZE, BO\r
.macro KERNEL4x4_E\r
vmovups -12 * SIZE(AO), %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm6\r
\r
addq $ 8*SIZE, AO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
addq $ 4*SIZE, BO\r
.endm\r
vmovups -12 * SIZE(BO), %ymm1\r
vmovups -16 * SIZE(AO), %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm4\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm5\r
addq $ 4*SIZE, BO\r
vpermpd $ 0x1b, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm6\r
addq $ 4*SIZE, AO\r
- vpermpd $ 0xb1, %ymm0 , %ymm0\r
+ vpermilpd $ 0x05, %ymm0 , %ymm0\r
vfmadd231pd %ymm0 ,%ymm1 , %ymm7\r
\r
.endm\r
vmulpd %ymm0 , %ymm5 , %ymm5\r
vmulpd %ymm0 , %ymm6 , %ymm6\r
\r
- vpermpd $ 0xb1 , %ymm5, %ymm5\r
- vpermpd $ 0xb1 , %ymm7, %ymm7\r
+ vpermilpd $ 0x05 , %ymm5, %ymm5\r
+ vpermilpd $ 0x05 , %ymm7, %ymm7\r
\r
vblendpd $ 0x0a, %ymm5, %ymm4, %ymm0\r
vblendpd $ 0x05, %ymm5, %ymm4, %ymm1\r
vblendpd $ 0x0a, %ymm7, %ymm6, %ymm2\r
vblendpd $ 0x05, %ymm7, %ymm6, %ymm3\r
\r
- vpermpd $ 0x1b , %ymm2, %ymm2\r
- vpermpd $ 0x1b , %ymm3, %ymm3\r
- vpermpd $ 0xb1 , %ymm2, %ymm2\r
- vpermpd $ 0xb1 , %ymm3, %ymm3\r
+ vperm2f128 $ 0x01 , %ymm2, %ymm2\r
+ vperm2f128 $ 0x01 , %ymm3, %ymm3\r
\r
vblendpd $ 0x03, %ymm0, %ymm2 , %ymm4\r
vblendpd $ 0x03, %ymm1, %ymm3 , %ymm5\r