summaryrefslogtreecommitdiff
path: root/pkg/dav1d/patch
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2020-08-18 20:30:32 -0700
committerMichael Forney <mforney@mforney.org>2020-08-19 12:43:47 -0700
commit7508d43375d83dd388006cc627705bad2df14ee8 (patch)
treec6205f5919495e3bcbe49880feed212d340895e3 /pkg/dav1d/patch
parenta1cc2076f07c3357a42d2ca70bb27001ee3a841e (diff)
Add dav1d 0.7.1
Diffstat (limited to 'pkg/dav1d/patch')
-rw-r--r--pkg/dav1d/patch/0001-Fix-compilation-with-nasm-2.15.patch141
1 files changed, 141 insertions, 0 deletions
diff --git a/pkg/dav1d/patch/0001-Fix-compilation-with-nasm-2.15.patch b/pkg/dav1d/patch/0001-Fix-compilation-with-nasm-2.15.patch
new file mode 100644
index 00000000..c743a196
--- /dev/null
+++ b/pkg/dav1d/patch/0001-Fix-compilation-with-nasm-2.15.patch
@@ -0,0 +1,141 @@
+From 22bfed7225c79dfedf08fe6d5ce8a6febe51300c Mon Sep 17 00:00:00 2001
+From: Henrik Gramner <gramner@twoorioles.com>
+Date: Tue, 30 Jun 2020 23:33:27 +0200
+Subject: [PATCH] Fix compilation with nasm 2.15
+
+%{:} macro operand ranges were broken in nasm 2.15 which causes
+errors when compiling, so avoid using those for now.
+
+Some new warnings regarding use of empty macro parameters has also
+been added, adjust some x86inc code to silence those.
+---
+ src/ext/x86/x86inc.asm | 46 +++++++++++++++++++++++++++---------------
+ src/x86/mc_sse.asm | 6 +-----
+ 2 files changed, 31 insertions(+), 21 deletions(-)
+
+diff --git a/src/ext/x86/x86inc.asm b/src/ext/x86/x86inc.asm
+index c252e54..8d3767c 100644
+--- a/src/ext/x86/x86inc.asm
++++ b/src/ext/x86/x86inc.asm
+@@ -425,16 +425,6 @@ DECLARE_REG_TMP_SIZE 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14
+ %endif
+ %endmacro
+
+-%macro DEFINE_ARGS_INTERNAL 3+
+- %ifnum %2
+- DEFINE_ARGS %3
+- %elif %1 == 4
+- DEFINE_ARGS %2
+- %elif %1 > 4
+- DEFINE_ARGS %2, %3
+- %endif
+-%endmacro
+-
+ %if WIN64 ; Windows x64 ;=================================================
+
+ DECLARE_REG 0, rcx
+@@ -453,7 +443,7 @@ DECLARE_REG 12, R15, 104
+ DECLARE_REG 13, R12, 112
+ DECLARE_REG 14, R13, 120
+
+-%macro PROLOGUE 2-5+ 0 ; #args, #regs, #xmm_regs, [stack_size,] arg_names...
++%macro PROLOGUE 2-5+ 0, 0 ; #args, #regs, #xmm_regs, [stack_size,] arg_names...
+ %assign num_args %1
+ %assign regs_used %2
+ ASSERT regs_used >= num_args
+@@ -465,7 +455,15 @@ DECLARE_REG 14, R13, 120
+ WIN64_SPILL_XMM %3
+ %endif
+ LOAD_IF_USED 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
+- DEFINE_ARGS_INTERNAL %0, %4, %5
++ %if %0 > 4
++ %ifnum %4
++ DEFINE_ARGS %5
++ %else
++ DEFINE_ARGS %4, %5
++ %endif
++ %elifnnum %4
++ DEFINE_ARGS %4
++ %endif
+ %endmacro
+
+ %macro WIN64_PUSH_XMM 0
+@@ -561,7 +559,7 @@ DECLARE_REG 12, R15, 56
+ DECLARE_REG 13, R12, 64
+ DECLARE_REG 14, R13, 72
+
+-%macro PROLOGUE 2-5+ 0 ; #args, #regs, #xmm_regs, [stack_size,] arg_names...
++%macro PROLOGUE 2-5+ 0, 0 ; #args, #regs, #xmm_regs, [stack_size,] arg_names...
+ %assign num_args %1
+ %assign regs_used %2
+ %assign xmm_regs_used %3
+@@ -571,7 +569,15 @@ DECLARE_REG 14, R13, 72
+ PUSH_IF_USED 9, 10, 11, 12, 13, 14
+ ALLOC_STACK %4
+ LOAD_IF_USED 6, 7, 8, 9, 10, 11, 12, 13, 14
+- DEFINE_ARGS_INTERNAL %0, %4, %5
++ %if %0 > 4
++ %ifnum %4
++ DEFINE_ARGS %5
++ %else
++ DEFINE_ARGS %4, %5
++ %endif
++ %elifnnum %4
++ DEFINE_ARGS %4
++ %endif
+ %endmacro
+
+ %define has_epilogue regs_used > 9 || stack_size > 0 || vzeroupper_required
+@@ -612,7 +618,7 @@ DECLARE_REG 6, ebp, 28
+
+ DECLARE_ARG 7, 8, 9, 10, 11, 12, 13, 14
+
+-%macro PROLOGUE 2-5+ ; #args, #regs, #xmm_regs, [stack_size,] arg_names...
++%macro PROLOGUE 2-5+ 0, 0 ; #args, #regs, #xmm_regs, [stack_size,] arg_names...
+ %assign num_args %1
+ %assign regs_used %2
+ ASSERT regs_used >= num_args
+@@ -627,7 +633,15 @@ DECLARE_ARG 7, 8, 9, 10, 11, 12, 13, 14
+ PUSH_IF_USED 3, 4, 5, 6
+ ALLOC_STACK %4
+ LOAD_IF_USED 0, 1, 2, 3, 4, 5, 6
+- DEFINE_ARGS_INTERNAL %0, %4, %5
++ %if %0 > 4
++ %ifnum %4
++ DEFINE_ARGS %5
++ %else
++ DEFINE_ARGS %4, %5
++ %endif
++ %elifnnum %4
++ DEFINE_ARGS %4
++ %endif
+ %endmacro
+
+ %define has_epilogue regs_used > 3 || stack_size > 0 || vzeroupper_required
+diff --git a/src/x86/mc_sse.asm b/src/x86/mc_sse.asm
+index d98ac62..1fc7ae2 100644
+--- a/src/x86/mc_sse.asm
++++ b/src/x86/mc_sse.asm
+@@ -2740,7 +2740,7 @@ cglobal put_8tap, 1, 9, 0, dst, ds, src, ss, w, h, mx, my, ss3
+ %endif
+ %endmacro
+
+-%macro PREP_8TAP_HV_LOAD 4 ; dst0, src_memloc, tmp[1-2]
++%macro PREP_8TAP_HV 4 ; dst, src_memloc, tmp[1-2]
+ %if cpuflag(ssse3)
+ movu %1, [%2]
+ pshufb m2, %1, shufB
+@@ -2751,10 +2751,6 @@ cglobal put_8tap, 1, 9, 0, dst, ds, src, ss, w, h, mx, my, ss3
+ PREP_8TAP_H_LOAD4 m2, %2+4, m1, %3, %4
+ PREP_8TAP_H_LOAD4 m3, %2+8, m1, %3, %4
+ %endif
+-%endmacro
+-
+-%macro PREP_8TAP_HV 4 ; dst, src_memloc, tmp[1-2]
+- PREP_8TAP_HV_LOAD %{1:4}
+ mova m1, m2
+ PMADDUBSW m1, subpelh0, %3, %4, 1 ; subpel +0 C0
+ PMADDUBSW m3, subpelh1, %3, %4, 0 ; subpel +4 B4
+--
+2.28.0
+