aboutsummaryrefslogtreecommitdiff
path: root/simd/arm/arm64/jsimd_neon.S
diff options
context:
space:
mode:
authorJonathan Wright <jonathan.wright@arm.com>2020-09-10 16:19:08 +0100
committerJonathan Wright <jonathan.wright@arm.com>2020-09-10 17:03:49 +0100
commit83889e4e3975107f6d5a51d6a2b3371b22ac0559 (patch)
tree0b42c6ce1b5bd99e516828e0da0adeed464dc7cf /simd/arm/arm64/jsimd_neon.S
parentf38898135a3b5097978394dff81c970ad9c4eca2 (diff)
downloadlibjpeg-turbo-83889e4e3975107f6d5a51d6a2b3371b22ac0559.tar.gz
Specify 16-byte alignment for assembly functions
A previous commit that implemented h2v2 downsampling using Arm NEON intrinsics removed ".balign 16" along with the NEON assembly function. This function alignment was the only one of its type in jsimd_neon.S and seems to have accidentally ensured that all of the other functions declared in the same file also had that alignment. Removing the 16-byte alignment specification meant that the Mac arm64 build of Chromium broke - as the remaining assembly functions did not have the right alignment. This commit specifies 16-byte alignment for all of the NEON assembly functions in jsimd_neon.S Bug: 922430 Change-Id: Ie827cf2166a6ac5e2b69db3d2140ed91ab2798e3
Diffstat (limited to 'simd/arm/arm64/jsimd_neon.S')
-rw-r--r--simd/arm/arm64/jsimd_neon.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/simd/arm/arm64/jsimd_neon.S b/simd/arm/arm64/jsimd_neon.S
index d76a570d..db250735 100644
--- a/simd/arm/arm64/jsimd_neon.S
+++ b/simd/arm/arm64/jsimd_neon.S
@@ -226,6 +226,7 @@ _\fname:
#define XFIX_N_2_562 v1.h[2]
#define XFIX_P_3_072 v1.h[3]
+.balign 16
asm_function jsimd_fdct_islow_neon
DATA .req x0
@@ -511,6 +512,7 @@ asm_function jsimd_fdct_islow_neon
#define XFIX_0_707106781 v0.h[2]
#define XFIX_1_306562965 v0.h[3]
+.balign 16
asm_function jsimd_fdct_ifast_neon
DATA .req x0
@@ -647,6 +649,7 @@ asm_function jsimd_fdct_ifast_neon
.macro generate_jsimd_huff_encode_one_block fast_tbl
+.balign 16
.if \fast_tbl == 1
asm_function jsimd_huff_encode_one_block_neon
.else