Download raw body.
multimedia/libass: endbr64
On Sun, Feb 25, 2024 at 10:39:39AM +0100, Theo Buehler wrote:
> multimedia/libass.log
> ld: warning: ass_fill_solid_tile16_sse2: missing endbr64
> ld: warning: ass_fill_solid_tile16_avx2: missing endbr64
> ld: warning: ass_fill_halfplane_tile16_sse2: missing endbr64
> ld: warning: ass_fill_halfplane_tile16_avx2: missing endbr64
> ld: warning: ass_fill_generic_tile16_sse2: missing endbr64
> ld: warning: ass_fill_generic_tile16_avx2: missing endbr64
> ld: warning: ass_merge_tile16_sse2: missing endbr64
> ld: warning: ass_merge_tile16_avx2: missing endbr64
> ld: warning: ass_add_bitmaps_sse2: missing endbr64
> etc
This silences them, looks exactly like the cummulative x264 diff.
Index: Makefile
===================================================================
RCS file: /cvs/ports/multimedia/libass/Makefile,v
diff -u -p -r1.32 Makefile
--- Makefile 27 Sep 2023 10:10:20 -0000 1.32
+++ Makefile 25 Feb 2024 15:25:29 -0000
@@ -5,6 +5,7 @@ DISTNAME= libass-${VER}
CATEGORIES= multimedia devel
SITES= https://github.com/libass/libass/releases/download/${VER}/
EXTRACT_SUFX= .tar.xz
+REVISION= 0
SHARED_LIBS= ass 3.1
Index: patches/patch-libass_x86_x86inc_asm
===================================================================
RCS file: patches/patch-libass_x86_x86inc_asm
diff -N patches/patch-libass_x86_x86inc_asm
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-libass_x86_x86inc_asm 25 Feb 2024 15:42:08 -0000
@@ -0,0 +1,25 @@
+add ENDBR64 instructions for BTI
+
+Index: libass/x86/x86inc.asm
+--- libass/x86/x86inc.asm.orig
++++ libass/x86/x86inc.asm
+@@ -756,6 +756,9 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
+ %endif
+ align function_align
+ %2:
++ %if ARCH_X86_64
++ endbr64
++ %endif
+ RESET_MM_PERMUTATION ; needed for x86-64, also makes disassembly somewhat nicer
+ %xdefine rstk rsp ; copy of the original stack pointer, used when greater alignment than the known stack alignment is required
+ %assign stack_offset 0 ; stack pointer offset relative to the return address
+@@ -777,6 +780,9 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
+ global current_function %+ %1
+ %endif
+ %1:
++ %if ARCH_X86_64
++ endbr64
++ %endif
+ %endmacro
+
+ %macro cextern 1
multimedia/libass: endbr64