commit: e6f5aaf704a5b9f60a06ff8fc0c5a9becc423b69
parent 51abcbfdea4e0667aa2c33fc9cf9e446bb6fab35
Author: Michael Forney <mforney@mforney.org>
Date: Mon, 5 Jul 2021 20:55:53 -0700
dav1d: Update to 0.9.0
Diffstat:
4 files changed, 50 insertions(+), 49 deletions(-)
diff --git a/pkg/dav1d/gen.lua b/pkg/dav1d/gen.lua
@@ -75,26 +75,30 @@ local srcs = paths[[
@x86_64 x86/(
cpu.c msac_init.c
- cpuid.asm msac.asm cdef_avx2.asm cdef_sse.asm
+ cpuid.asm msac.asm cdef_avx2.asm itx_avx2.asm
+ looprestoration_avx2.asm cdef_sse.asm
cdef_avx512.asm
mc_avx512.asm
mc_avx2.asm
- film_grain.asm
- ipred.asm
- itx.asm
- loopfilter.asm
- looprestoration.asm
- film_grain_ssse3.asm
- ipred_ssse3.asm
- itx_ssse3.asm
- loopfilter_ssse3.asm
+ film_grain_avx2.asm
+ ipred_avx2.asm
+ loopfilter_avx2.asm
+ film_grain_sse.asm
+ ipred_sse.asm
+ itx_sse.asm
+ loopfilter_sse.asm
looprestoration_sse.asm
mc_sse.asm
cdef16_avx2.asm
- cdef16_sse.asm
+ film_grain16_avx2.asm
+ ipred16_avx2.asm
+ itx16_avx2.asm
+ loopfilter16_avx2.asm
looprestoration16_avx2.asm
+ mc16_avx2.asm
+ cdef16_sse.asm
)
)
]]
diff --git a/pkg/dav1d/patch/0001-Add-portable-fallback-for-ctz-clz-and-clzll.patch b/pkg/dav1d/patch/0001-Add-portable-fallback-for-ctz-clz-and-clzll.patch
@@ -1,4 +1,4 @@
-From b801f8fcb2d9130603d2ed3c1b0d2a572be4bfb6 Mon Sep 17 00:00:00 2001
+From 438abb276c7568391d757c7b3338e137307cdad5 Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Fri, 30 Apr 2021 18:45:18 -0700
Subject: [PATCH] Add portable fallback for ctz, clz, and clzll
@@ -8,18 +8,18 @@ Subject: [PATCH] Add portable fallback for ctz, clz, and clzll
1 file changed, 25 insertions(+), 2 deletions(-)
diff --git a/include/common/attributes.h b/include/common/attributes.h
-index 5d6a3ff..e5df7f7 100644
+index 15892b9..47fed92 100644
--- a/include/common/attributes.h
+++ b/include/common/attributes.h
-@@ -31,6 +31,7 @@
- #include "config.h"
+@@ -32,6 +32,7 @@
#include <stddef.h>
+ #include <assert.h>
+#include <strings.h>
#ifdef __GNUC__
#define ATTR_ALIAS __attribute__((may_alias))
-@@ -145,7 +146,7 @@ static inline int clzll(const unsigned long long mask) {
+@@ -146,7 +147,7 @@ static inline int clzll(const unsigned long long mask) {
return clz((unsigned)mask) + 32;
}
#endif /* _WIN64 */
@@ -28,7 +28,7 @@ index 5d6a3ff..e5df7f7 100644
static inline int ctz(const unsigned int mask) {
return __builtin_ctz(mask);
}
-@@ -157,7 +158,29 @@ static inline int clz(const unsigned int mask) {
+@@ -158,7 +159,29 @@ static inline int clz(const unsigned int mask) {
static inline int clzll(const unsigned long long mask) {
return __builtin_clzll(mask);
}
@@ -60,5 +60,5 @@ index 5d6a3ff..e5df7f7 100644
#ifndef __has_feature
#define __has_feature(x) 0
--
-2.31.1
+2.32.0
diff --git a/pkg/dav1d/patch/0002-Remove-invalid-at-top-level.patch b/pkg/dav1d/patch/0002-Remove-invalid-at-top-level.patch
@@ -1,4 +1,4 @@
-From a7ce75a62e03efde6c2d603a226b1878bec781b9 Mon Sep 17 00:00:00 2001
+From a7aacef625f376acb904dd6aab24ffbaa1d88999 Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Fri, 30 Apr 2021 18:56:27 -0700
Subject: [PATCH] Remove invalid ';' at top-level
@@ -9,8 +9,8 @@ This is not allowed in the ISO C grammar.
src/film_grain_tmpl.c | 12 ++++++------
src/looprestoration.h | 4 ++--
src/mc_tmpl.c | 6 +++---
- src/x86/looprestoration_init_tmpl.c | 10 +++++-----
- 5 files changed, 19 insertions(+), 19 deletions(-)
+ src/x86/looprestoration_init_tmpl.c | 14 +++++++-------
+ 5 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/src/cdef_tmpl.c b/src/cdef_tmpl.c
index 41e3fe6..53130e2 100644
@@ -30,7 +30,7 @@ index 41e3fe6..53130e2 100644
static int cdef_find_dir_c(const pixel *img, const ptrdiff_t stride,
unsigned *const var HIGHBD_DECL_SUFFIX)
diff --git a/src/film_grain_tmpl.c b/src/film_grain_tmpl.c
-index 90a03a4..1e8661f 100644
+index 0c6a17c..0ee4e53 100644
--- a/src/film_grain_tmpl.c
+++ b/src/film_grain_tmpl.c
@@ -149,9 +149,9 @@ static decl_generate_grain_uv_fn(generate_grain_uv_##nm##_c) { \
@@ -46,7 +46,7 @@ index 90a03a4..1e8661f 100644
// samples from the correct block of a grain LUT, while taking into account the
// offsets provided by the offsets cache
-@@ -416,9 +416,9 @@ static decl_fguv_32x32xn_fn(fguv_32x32xn_##nm##_c) { \
+@@ -408,9 +408,9 @@ static decl_fguv_32x32xn_fn(fguv_32x32xn_##nm##_c) { \
HIGHBD_TAIL_SUFFIX); \
}
@@ -60,7 +60,7 @@ index 90a03a4..1e8661f 100644
COLD void bitfn(dav1d_film_grain_dsp_init)(Dav1dFilmGrainDSPContext *const c) {
c->generate_grain_y = generate_grain_y_c;
diff --git a/src/looprestoration.h b/src/looprestoration.h
-index 0b7defc..9be2dcb 100644
+index a0a917f..3626aa4 100644
--- a/src/looprestoration.h
+++ b/src/looprestoration.h
@@ -66,8 +66,8 @@ void (name)(pixel *dst, ptrdiff_t dst_stride, \
@@ -75,7 +75,7 @@ index 0b7defc..9be2dcb 100644
typedef struct Dav1dLoopRestorationDSPContext {
looprestorationfilter_fn wiener[2]; /* 7-tap, 5-tap */
diff --git a/src/mc_tmpl.c b/src/mc_tmpl.c
-index 84eb988..5cf4f31 100644
+index f8d3e3b..374db4c 100644
--- a/src/mc_tmpl.c
+++ b/src/mc_tmpl.c
@@ -735,9 +735,9 @@ static void w_mask_##ssn##_c(pixel *const dst, const ptrdiff_t dst_stride, \
@@ -92,43 +92,40 @@ index 84eb988..5cf4f31 100644
#undef w_mask_fns
diff --git a/src/x86/looprestoration_init_tmpl.c b/src/x86/looprestoration_init_tmpl.c
-index 52de0fa..7bed814 100644
+index f7819a1..5e5d0c0 100644
--- a/src/x86/looprestoration_init_tmpl.c
+++ b/src/x86/looprestoration_init_tmpl.c
-@@ -57,11 +57,11 @@ static void BF(name, ext)(pixel *const dst, const ptrdiff_t dst_stride, \
- BF(name##_v, ext)(dst, dst_stride, mid, params->filter[1], w, h, edges HIGHBD_TAIL_SUFFIX); \
- }
- #define decl_wiener_filter_fns(ext) \
--decl_wiener_filter_fn(dav1d_wiener_filter7, ext); \
-+decl_wiener_filter_fn(dav1d_wiener_filter7, ext) \
- decl_wiener_filter_fn(dav1d_wiener_filter5, ext)
- #else
+@@ -31,12 +31,12 @@
+ #include "common/intops.h"
+
#define decl_wiener_filter_fns(ext) \
-decl_lr_filter_fn(BF(dav1d_wiener_filter7, ext)); \
+decl_lr_filter_fn(BF(dav1d_wiener_filter7, ext)) \
decl_lr_filter_fn(BF(dav1d_wiener_filter5, ext))
- #endif
-@@ -220,8 +220,8 @@ static void BF(sgr_filter_mix, ext)(pixel *const dst, const ptrdiff_t dst_stride
+ #define decl_sgr_filter_fns(ext) \
+-decl_lr_filter_fn(BF(dav1d_sgr_filter_5x5, ext)); \
+-decl_lr_filter_fn(BF(dav1d_sgr_filter_3x3, ext)); \
++decl_lr_filter_fn(BF(dav1d_sgr_filter_5x5, ext)) \
++decl_lr_filter_fn(BF(dav1d_sgr_filter_3x3, ext)) \
+ decl_lr_filter_fn(BF(dav1d_sgr_filter_mix, ext))
+
+ /* FIXME: Replace with a port of the AVX2 code */
+@@ -176,10 +176,10 @@ static void BF(sgr_filter_mix, ext)(pixel *const dst, const ptrdiff_t dst_stride
+ BF(dav1d_sgr_weighted2, ext)(dst, dst_stride, tmp1, tmp2, w, h, wt); \
}
- #if BITDEPTH == 8
-decl_wiener_filter_fns(sse2);
-decl_wiener_filter_fns(ssse3);
+-decl_wiener_filter_fns(avx2);
+-decl_sgr_filter_fns(avx2);
+decl_wiener_filter_fns(sse2)
+decl_wiener_filter_fns(ssse3)
- SGR_FILTER_OLD(ssse3)
- # if ARCH_X86_64
- decl_sgr_filter_fns(avx2)
-@@ -229,7 +229,7 @@ decl_sgr_filter_fns(avx2)
- #endif
-
- #if ARCH_X86_64
--decl_wiener_filter_fns(avx2);
+decl_wiener_filter_fns(avx2)
- #endif
++decl_sgr_filter_fns(avx2)
- COLD void bitfn(dav1d_loop_restoration_dsp_init_x86)(Dav1dLoopRestorationDSPContext *const c) {
+ #if BITDEPTH == 8
+ SGR_FILTER_OLD(ssse3)
--
-2.31.1
+2.32.0
diff --git a/pkg/dav1d/ver b/pkg/dav1d/ver
@@ -1 +1 @@
-0.8.2 r1
+0.9.0 r0