From ac852739903e90e992e3c7c50cde487fe037e167 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Fri, 11 Jan 2019 14:17:39 +0100 Subject: residual_calc.asm: fix partial stores .store1 and .store3 were switched --- residual_calc.asm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'residual_calc.asm') diff --git a/residual_calc.asm b/residual_calc.asm index b6cc70e..47dda9b 100644 --- a/residual_calc.asm +++ b/residual_calc.asm @@ -217,23 +217,23 @@ SECTION .text .store_partial: sub offsetq, ELEM_SIZE - jz .store1 + jz .store3 sub offsetq, ELEM_SIZE jz .store2 -.store3: +.store1: ; offsetq is now mmsize-2 after the write position - movu [dstq + offsetq - mmsize + 2 * ELEM_SIZE], xm0 - vextractf128 xm0, m0, 1 - movq [dstq + offsetq - mmsize + 4 * ELEM_SIZE], xm0 + movq [dstq + offsetq - mmsize + 2 * ELEM_SIZE], xm0 jmp .finish .store2: ; offsetq is now mmsize-2 after the write position movu [dstq + offsetq - mmsize + 2 * ELEM_SIZE], xm0 jmp .finish -.store1: +.store3: ; offsetq is now mmsize-1 after the write position - movq [dstq + offsetq - mmsize + ELEM_SIZE], xm0 + movu [dstq + offsetq - mmsize + 1 * ELEM_SIZE], xm0 + vextractf128 xm0, m0, 1 + movq [dstq + offsetq - mmsize + 3 * ELEM_SIZE], xm0 .finish: RET -- cgit v1.2.3