diff options
| author | Michael Forney <mforney@mforney.org> | 2020-08-18 20:30:32 -0700 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2020-08-19 12:43:47 -0700 |
| commit | 7508d43375d83dd388006cc627705bad2df14ee8 (patch) | |
| tree | c6205f5919495e3bcbe49880feed212d340895e3 /pkg/dav1d/patch | |
| parent | a1cc2076f07c3357a42d2ca70bb27001ee3a841e (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.patch | 141 |
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 + |
