This is straightforward. There doesn't seem to be a possibility of
shortcuts via a macro, so just add endbr64 to the four functions in this
file. I could not find code that actually uses these, but it's probably
better to be safe than sorry.

The code is too old to have arm64 assembly.

Index: Makefile
===================================================================
RCS file: /cvs/ports/multimedia/libdv/Makefile,v
diff -u -p -r1.28 Makefile
--- Makefile    7 Nov 2023 14:19:39 -0000       1.28
+++ Makefile    28 Feb 2024 19:01:33 -0000
@@ -1,7 +1,7 @@
 COMMENT=               Quasar DV codec
 
 DISTNAME=              libdv-1.0.0
-REVISION=              4
+REVISION=              5
 
 CATEGORIES=            multimedia
 
Index: patches/patch-libdv_vlc_x86_64_S
===================================================================
RCS file: patches/patch-libdv_vlc_x86_64_S
diff -N patches/patch-libdv_vlc_x86_64_S
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-libdv_vlc_x86_64_S    28 Feb 2024 19:00:50 -0000
@@ -0,0 +1,35 @@
+Index: libdv/vlc_x86_64.S
+--- libdv/vlc_x86_64.S.orig
++++ libdv/vlc_x86_64.S
+@@ -6,6 +6,7 @@
+ .globl dv_decode_vlc
+       .type    dv_decode_vlc,@function
+ dv_decode_vlc:
++      endbr64
+       push %rbx
+       push %rbp
+ 
+@@ -102,6 +103,7 @@ void __dv_decode_vlc(int bits, dv_vlc_t *result)
+ .globl __dv_decode_vlc
+       .type    __dv_decode_vlc,@function
+ __dv_decode_vlc:
++      endbr64
+       push %rbx
+       push %rbp
+ 
+@@ -174,6 +176,7 @@ void dv_parse_ac_coeffs_pass0(bitstream_t *bs,
+ .type dv_parse_ac_coeffs_pass0,@function
+ 
+ dv_parse_ac_coeffs_pass0:
++      endbr64
+       
+       /* Args are at rdi=bs, rsi=mb, rdx=bl */
+       push    %r12
+@@ -427,6 +430,7 @@ gint dv_parse_video_segment(dv_videosegment_t *seg, gu
+       .globl dv_parse_video_segment
+       .type  dv_parse_video_segment,@function
+ dv_parse_video_segment:
++      endbr64
+       
+       /* Args are at rdi=seg, rsi=quality */
+       push    %r12

Reply via email to