]> granicus.if.org Git - openjpeg/commitdiff
IDWT 5x3: fix bug in AVX2 implementation (#953, #957)
authorEven Rouault <even.rouault@spatialys.com>
Thu, 29 Jun 2017 22:03:05 +0000 (00:03 +0200)
committerEven Rouault <even.rouault@spatialys.com>
Thu, 29 Jun 2017 22:03:05 +0000 (00:03 +0200)
src/lib/openjp2/dwt.c

index 4a5ba609ca95cafbf5fa426eeb9adb809cab2320..6a418aa17bb1888c2640fb02b6e1e94040832493 100644 (file)
@@ -685,9 +685,9 @@ static void opj_idwt53_v_cas0_mcols_SSE2_OR_AVX2(
         s1n_0 = LOADU(in_even + ((len - 1) / 2) * stride);
         /* tmp_len_minus_1 = s1n - ((d1n + 1) >> 1); */
         tmp_len_minus_1 = SUB(s1n_0, SAR(ADD3(d1n_0, d1n_0, two), 2));
-        STORE(tmp + 8 * (len - 1), tmp_len_minus_1);
+        STORE(tmp + PARALLEL_COLS_53 * (len - 1), tmp_len_minus_1);
         /* d1n + ((s0n + tmp_len_minus_1) >> 1) */
-        STORE(tmp + 8 * (len - 2),
+        STORE(tmp + PARALLEL_COLS_53 * (len - 2),
               ADD(d1n_0, SAR(ADD(s0n_0, tmp_len_minus_1), 1)));
 
         s1n_1 = LOADU(in_even + ((len - 1) / 2) * stride + VREG_INT_COUNT);