Skip to content

Commit

Permalink
aarch64: vvc: Fix building the dmvr_hv assembly with older MSVC versions
Browse files Browse the repository at this point in the history
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, ffvvc#2]

Signed-off-by: Martin Storsjö <[email protected]>
  • Loading branch information
mstorsjo committed Dec 18, 2024
1 parent 8272d34 commit 2bb00ef
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions libavcodec/aarch64/vvc/inter.S
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down

0 comments on commit 2bb00ef

Please sign in to comment.