Here is an update to dav1d 1.5.4.
Changes for 1.5.4 'Sonic':
--------------------------
1.5.4 is a minor release of dav1d, focused on optimizations and maintenance:
- Support for OS/2, including API exports and assembly
- Switch to external checkasm
- Add Armv9.3-A GCS (Guarded Control Stack) support
- AArch64: optimize ipred_v, ipred_h and ipred_smooth_* 8bpc functions, and
reduce .text size
- ARM32: optimize prep_neon
- RISC-V: ipred_(dc, h, v, pal) optimizations for 8 and 16bpc,
generate_grain_y for 8bpc, and optimizations (prep/put_8tap, 6-tap and copy
paths)
- Portability improvements for non-POSIX systems (signal() fallback)
- Schedule tile tasks for all passes at once, improving threading
- Precompute the quantization matrix tables at build time
- Move loop-invariant computations out of hot loops
Tested on aarch64 and amd64.
Index: Makefile
===================================================================
RCS file: /cvs/ports/multimedia/dav1d/Makefile,v
retrieving revision 1.43
diff -u -p -u -p -r1.43 Makefile
--- Makefile 15 Jan 2026 12:00:47 -0000 1.43
+++ Makefile 16 Jul 2026 06:28:55 -0000
@@ -4,7 +4,7 @@ COMMENT= small and fast AV1 decoder
# /!\ DO NOT UPDATE WITHOUT RUNNING TESTS ON ARM64 (XONLY) and AMD64 (IBT)
/!\ #
#################################################################################
-VER= 1.5.3
+VER= 1.5.4
DISTNAME= dav1d-${VER}
CATEGORIES= multimedia
SITES= https://downloads.videolan.org/pub/videolan/dav1d/${VER}/
Index: distinfo
===================================================================
RCS file: /cvs/ports/multimedia/dav1d/distinfo,v
retrieving revision 1.21
diff -u -p -u -p -r1.21 distinfo
--- distinfo 15 Jan 2026 12:00:47 -0000 1.21
+++ distinfo 16 Jul 2026 06:28:55 -0000
@@ -1,2 +1,2 @@
-SHA256 (dav1d-1.5.3.tar.xz) = cyAQql70YfqTNV7SxsX+20jdxLdOaX6qvokH6uuUMBE=
-SIZE (dav1d-1.5.3.tar.xz) = 1022836
+SHA256 (dav1d-1.5.4.tar.xz) = aGYWt8aeuI1ERZORqyXKwTtmR6OyiINcV4TnHBUUpcU=
+SIZE (dav1d-1.5.4.tar.xz) = 1038852
Index: patches/patch-src_ext_x86_x86inc_asm
===================================================================
RCS file: /cvs/ports/multimedia/dav1d/patches/patch-src_ext_x86_x86inc_asm,v
retrieving revision 1.2
diff -u -p -u -p -r1.2 patch-src_ext_x86_x86inc_asm
--- patches/patch-src_ext_x86_x86inc_asm 10 Dec 2024 12:14:18 -0000
1.2
+++ patches/patch-src_ext_x86_x86inc_asm 16 Jul 2026 06:28:55 -0000
@@ -1,7 +1,7 @@
Index: src/ext/x86/x86inc.asm
--- src/ext/x86/x86inc.asm.orig
+++ src/ext/x86/x86inc.asm
-@@ -226,6 +226,12 @@ DECLARE_REG_TMP_SIZE 0,1,2,3,4,5,6,7,8,9,10,11,12,13,1
+@@ -241,6 +241,12 @@ DECLARE_REG_TMP_SIZE 0,1,2,3,4,5,6,7,8,9,10,11,12,13,1
%define gprsize 4
%endif
@@ -14,7 +14,7 @@ Index: src/ext/x86/x86inc.asm
%macro LEA 2
%if ARCH_X86_64
lea %1, [%2]
-@@ -839,6 +845,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
+@@ -861,6 +867,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
%endif
align function_align
%2:
@@ -22,7 +22,7 @@ Index: src/ext/x86/x86inc.asm
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
-@@ -860,6 +867,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
+@@ -882,6 +889,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
global current_function %+ %1
%endif
%1:
Index: pkg/DESCR
===================================================================
RCS file: /cvs/ports/multimedia/dav1d/pkg/DESCR,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 DESCR
--- pkg/DESCR 10 Jan 2019 20:34:32 -0000 1.1.1.1
+++ pkg/DESCR 16 Jul 2026 06:28:55 -0000
@@ -1,2 +1,2 @@
-dav1d is a new AV1 cross-platform decoder, open-source, and focused on
+dav1d is an AV1 cross-platform decoder, open-source, and focused on
speed and correctness.