diff options
author | Martin Storsjö <martin@martin.st> | 2024-12-17 14:45:21 +0200 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2024-12-18 13:45:09 +0200 |
commit | 2bb00ef59c2b5919ba777233d56612d069b0138b (patch) | |
tree | 2da83f006bcefc04284d9583febdbeb4bc4775b7 | |
parent | 8272d34377b24e52de0492fbc2e1d74efcdff248 (diff) | |
download | ffmpeg-2bb00ef59c2b5919ba777233d56612d069b0138b.tar.gz |
aarch64: vvc: Fix building the dmvr_hv assembly with older MSVC versions
Explicitly use ldur for unaligned offsets; newer versions of
armasm64 implicitly convert ldr to ldur as necessary, but older
versions require it explicitly written out.
This fixes these build errors:
ffmpeg\libavcodec\aarch64\vvc\inter.o.asm(2039) :
error A2518: operand 2: Memory offset must be aligned
ldr s5, [x1, #1]
ffmpeg\libavcodec\aarch64\vvc\inter.o.asm(2250) :
error A2518: operand 2: Memory offset must be aligned
ldr d7, [x1, #2]
Signed-off-by: Martin Storsjö <martin@martin.st>
-rw-r--r-- | libavcodec/aarch64/vvc/inter.S | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/aarch64/vvc/inter.S b/libavcodec/aarch64/vvc/inter.S index 7a752019ee..3973d501d3 100644 --- a/libavcodec/aarch64/vvc/inter.S +++ b/libavcodec/aarch64/vvc/inter.S @@ -411,7 +411,7 @@ function ff_vvc_dmvr_hv_8_neon, export=1 ushr v16.8h, v16.8h, #4 str q16, [x14], #16 3: - ldr s5, [src, #1] + ldur s5, [src, #1] ldr s4, [src], #4 uxtl v7.8h, v5.8b uxtl v6.8h, v4.8b @@ -572,7 +572,7 @@ function ff_vvc_dmvr_hv_10_neon, export=1 uqxtn2 v16.8h, v18.4s str q16, [x14], #16 3: - ldr d7, [src, #2] + ldur d7, [src, #2] ldr d6, [src], #8 umull v4.4s, v7.4h, v1.4h umlal v4.4s, v6.4h, v0.4h |