[FFmpeg-cvslog] aarch64: vvc: Fix building the dmvr_hv assembly with older MSVC versions

Martin Storsjö git at videolan.org
Wed Dec 18 16:05:16 EET 2024


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Tue Dec 17 14:45:21 2024 +0200| [2bb00ef59c2b5919ba777233d56612d069b0138b] | committer: Martin Storsjö

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 at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2bb00ef59c2b5919ba777233d56612d069b0138b
---

 libavcodec/aarch64/vvc/inter.S | 4 ++--
 1 file 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



More information about the ffmpeg-cvslog mailing list