Browse Source

contrib: opus: update to 1.5.2

Opus 1.5.2 fixes several build issues that were discovered since the 1.5 release.
It also fixes a misalignment issue in the AVX2 code that could cause crashes under Windows.
pull/162/head
Tristan Matthews 2 years ago
parent
commit
4e67f8341b
  1. 29
      contrib/src/opus/0001-dnn-vec_neon-avoid-redefinition-of-vcvtnq_s32_f32.patch
  2. 2
      contrib/src/opus/SHA512SUMS
  3. 3
      contrib/src/opus/rules.mak

29
contrib/src/opus/0001-dnn-vec_neon-avoid-redefinition-of-vcvtnq_s32_f32.patch

@ -1,29 +0,0 @@
From 2311fb266a9791901d0829f80060e6ecde35861a Mon Sep 17 00:00:00 2001
From: Martin Storsjo <martin@martin.st>
Date: Tue, 5 Mar 2024 09:11:30 -0500
Subject: [PATCH 1/1] dnn: vec_neon: avoid redefinition of vcvtnq_s32_f32
clang exposes this intrinsic even in 32-bit mode, if targeting >= armv8,
whereas gcc does not, see:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95399
---
dnn/vec_neon.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dnn/vec_neon.h b/dnn/vec_neon.h
index acf49f47..e6432e2f 100644
--- a/dnn/vec_neon.h
+++ b/dnn/vec_neon.h
@@ -34,7 +34,7 @@
#include <arm_neon.h>
#include "os_support.h"
-#if defined(__arm__) && !defined(__aarch64__)
+#if defined(__arm__) && !defined(__aarch64__) && (__ARM_ARCH < 8 || !defined(__clang__))
/* Emulate vcvtnq_s32_f32() for ARMv7 Neon. */
static OPUS_INLINE int32x4_t vcvtnq_s32_f32(float32x4_t x) {
return vrshrq_n_s32(vcvtq_n_s32_f32(x, 8), 8);
--
2.40.1

2
contrib/src/opus/SHA512SUMS

@ -1 +1 @@
fa66c5d753f5deb5d61d068ff8f633d8cb5f454c94aeee9c404023ebc483f9b350586cdd98b7013faf4df3193e170a1708aaa598914275f7bc8be07587cc4dc6 opus-1.5.1.tar.gz
78d963cd56d5504611f111e2b3606e236189a3585d65fae1ecdbec9bf4545632b1956f11824328279a2d1ea2ecf441ebc11e455fb598d20a458df15185e95da4 opus-1.5.2.tar.gz

3
contrib/src/opus/rules.mak

@ -1,6 +1,6 @@
# opus
OPUS_VERSION := 1.5.1
OPUS_VERSION := 1.5.2
OPUS_URL := $(XIPH)/opus/opus-$(OPUS_VERSION).tar.gz
@ -16,7 +16,6 @@ $(TARBALLS)/opus-$(OPUS_VERSION).tar.gz:
opus: opus-$(OPUS_VERSION).tar.gz .sum-opus
$(UNPACK)
$(APPLY) $(SRC)/opus/0001-dnn-vec_neon-avoid-redefinition-of-vcvtnq_s32_f32.patch
$(MOVE)
OPUS_CONF= -D extra-programs=disabled -D tests=disabled -D docs=disabled

Loading…
Cancel
Save