arm: Use aligned loads in x264_coeff_last15_neon
authorMartin Storsjö <martin@martin.st>
Thu, 13 Aug 2015 20:59:25 +0000 (23:59 +0300)
committerHenrik Gramner <henrik@gramner.com>
Sun, 11 Oct 2015 16:44:53 +0000 (18:44 +0200)
After subtracting 2, the pointer will be aligned.

checkasm timing      Cortex-A7    A8    A9
coeff_last15_c              423   375   230
coeff_last15_neon           350   420   404  (before)
coeff_last15_neon           350   400   394  (after)

common/arm/quant-a.S

index 4b2129a..ad8d8f8 100644 (file)
@@ -337,10 +337,8 @@ endfunc
 function x264_coeff_last\size\()_neon
 .if \size == 15
     sub         r0,  r0,  #2
-    vld1.64     {d0-d3}, [r0]
-.else
-    vld1.64     {d0-d3}, [r0,:128]
 .endif
+    vld1.64     {d0-d3}, [r0,:128]
     vtst.16     q0,  q0
     vtst.16     q1,  q1
     vshrn.u16   d0,  q0,  #8