View | Details | Raw Unified | Return to bug 270056 | Differences between
and this patch

Collapse All | Expand All

(-)b/audio/ardour/Makefile (-3 / +3 lines)
Lines 1-12 Link Here
1
PORTNAME=	ardour
1
PORTNAME=	ardour
2
DISTVERSION=	7.2.0
2
DISTVERSION=	7.3.0
3
PORTREVISION=	1
4
CATEGORIES=	audio
3
CATEGORIES=	audio
5
# Official source download is tailored to browsers, downloads from github are
4
# Official source download is tailored to browsers, downloads from github are
6
# deliberately made empty. Put the badly named distfile into a subdirectory.
5
# deliberately made empty. Put the badly named distfile into a subdirectory.
7
MASTER_SITES=	https://community.ardour.org/download/release/
6
MASTER_SITES=	https://community.ardour.org/download/release/
8
DISTNAME=	Ardour-${DISTVERSION}
7
DISTNAME=	Ardour-${DISTVERSION}
9
DISTFILES=	516
8
DISTFILES=	522
10
DIST_SUBDIR=	${DISTNAME}
9
DIST_SUBDIR=	${DISTNAME}
11
10
12
MAINTAINER=	dev@submerge.ch
11
MAINTAINER=	dev@submerge.ch
Lines 18-23 LICENSE_FILE= ${WRKSRC}/COPYING Link Here
18
17
19
BUILD_DEPENDS=	lv2>=1.18.0:audio/lv2 \
18
BUILD_DEPENDS=	lv2>=1.18.0:audio/lv2 \
20
		itstool>2.0.0:textproc/itstool \
19
		itstool>2.0.0:textproc/itstool \
20
		openssl>0:security/openssl \
21
		${BUILD_DEPENDS_${ARCH}}
21
		${BUILD_DEPENDS_${ARCH}}
22
BUILD_DEPENDS_aarch64=	as:devel/binutils
22
BUILD_DEPENDS_aarch64=	as:devel/binutils
23
LIB_DEPENDS=	libserd-0.so:devel/serd \
23
LIB_DEPENDS=	libserd-0.so:devel/serd \
(-)b/audio/ardour/distinfo (-3 / +3 lines)
Lines 1-3 Link Here
1
TIMESTAMP = 1671141631
1
TIMESTAMP = 1676815269
2
SHA256 (Ardour-7.2.0/516) = c92d5b1dd09e7b8a580121478934b30cd9322fe052f45229dcf49363ca6e377f
2
SHA256 (Ardour-7.3.0/522) = 1f45263b4fbfd69e605125bd9094b43fac85d164f1839d29681b8d4ee5695f29
3
SIZE (Ardour-7.2.0/516) = 12882609
3
SIZE (Ardour-7.3.0/522) = 12897398
(-)a/audio/ardour/files/patch-libs_ardour_ardour_cycles.h (-25 lines)
Removed Link Here
1
--- libs/ardour/ardour/cycles.h.orig	2023-01-03 16:39:59 UTC
2
+++ libs/ardour/ardour/cycles.h
3
@@ -72,12 +72,22 @@ static inline cycles_t get_cycles (void)
4
 
5
 #elif defined(__powerpc64__)
6
 
7
+#ifdef __linux__
8
 #include <sys/platform/ppc.h>
9
 typedef uint64_t cycles_t;
10
 static inline cycles_t get_cycles(void)
11
 {
12
 	return __ppc_get_timebase();
13
 }
14
+#elif defined(__FreeBSD__)
15
+typedef uint64_t cycles_t;
16
+static inline cycles_t get_cycles(void)
17
+{
18
+	cycles_t tbr;
19
+	asm volatile("mfspr %0, 268" : "=r"(tbr));
20
+	return tbr;
21
+}
22
+#endif
23
 
24
 #elif defined(__powerpc__)
25
 
(-)b/audio/ardour/files/patch-libs_ardour_sse__functions__avx.cc (+11 lines)
Added Link Here
1
--- libs/ardour/sse_functions_avx.cc.orig	2023-02-21 01:18:30 UTC
2
+++ libs/ardour/sse_functions_avx.cc
3
@@ -47,7 +47,7 @@ x86_sse_avx_find_peaks(const float* buf, uint32_t nfra
4
 		// load each 64 bytes into cash before processing
5
         while (nframes >= 16) {
6
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
7
-				_mm_prefetch(((char*)buf+64), _mm_hint(0) );
8
+				_mm_prefetch(((char*)buf+64), _MM_HINT_NTA );
9
 #else
10
                 __builtin_prefetch(buf+64,0,0);
11
 #endif
(-)b/audio/ardour/files/patch-libs_ardour_sse__functions__avx__linux.cc (+84 lines)
Added Link Here
1
--- libs/ardour/sse_functions_avx_linux.cc.orig	2023-02-21 01:17:58 UTC
2
+++ libs/ardour/sse_functions_avx_linux.cc
3
@@ -106,7 +106,7 @@ x86_sse_avx_compute_peak(const float *src, uint32_t nf
4
 	while (nframes >= 32)
5
 	{
6
 #ifdef _WIN32
7
-		_mm_prefetch(reinterpret_cast<char const *>(src + 32), _mm_hint(0));
8
+		_mm_prefetch(reinterpret_cast<char const *>(src + 32), _MM_HINT_NTA);
9
 #else
10
 		__builtin_prefetch(reinterpret_cast<void const *>(src + 32), 0, 0);
11
 #endif
12
@@ -196,7 +196,7 @@ x86_sse_avx_find_peaks(const float *src, uint32_t nfra
13
 	while (nframes >= 32)
14
 	{
15
 #ifdef _WIN32
16
-		_mm_prefetch(reinterpret_cast<char const *>(src + 32), _mm_hint(0));
17
+		_mm_prefetch(reinterpret_cast<char const *>(src + 32), _MM_HINT_NTA);
18
 #else
19
 		__builtin_prefetch(reinterpret_cast<void const *>(src + 32), 0, 0);
20
 #endif
21
@@ -278,7 +278,7 @@ x86_sse_avx_apply_gain_to_buffer(float *dst, uint32_t 
22
 	while (frames >= 16)
23
 	{
24
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
25
-		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _mm_hint(0));
26
+		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _MM_HINT_NTA);
27
 #else
28
 		__builtin_prefetch(reinterpret_cast<void const *>(dst + 16), 0, 0);
29
 #endif
30
@@ -410,8 +410,8 @@ x86_sse_avx_mix_buffers_with_gain_unaligned(float *dst
31
 	while (nframes >= 16)
32
 	{
33
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
34
-		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _mm_hint(0));
35
-		_mm_prefetch(((char *)src + (16 * sizeof(float))), _mm_hint(0));
36
+		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _MM_HINT_NTA);
37
+		_mm_prefetch(((char *)src + (16 * sizeof(float))), _MM_HINT_NTA);
38
 #else
39
 		__builtin_prefetch(reinterpret_cast<void const *>(src + 16), 0, 0);
40
 		__builtin_prefetch(reinterpret_cast<void const *>(dst + 16), 0, 0);
41
@@ -503,8 +503,8 @@ x86_sse_avx_mix_buffers_with_gain_aligned(float *dst, 
42
 	while (nframes >= 16)
43
 	{
44
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
45
-		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _mm_hint(0));
46
-		_mm_prefetch(((char *)src + (16 * sizeof(float))), _mm_hint(0));
47
+		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _MM_HINT_NTA);
48
+		_mm_prefetch(((char *)src + (16 * sizeof(float))), _MM_HINT_NTA);
49
 #else
50
 		__builtin_prefetch(reinterpret_cast<void const *>(src + 16), 0, 0);
51
 		__builtin_prefetch(reinterpret_cast<void const *>(dst + 16), 0, 0);
52
@@ -592,8 +592,8 @@ x86_sse_avx_mix_buffers_no_gain_unaligned(float *dst, 
53
 	while (nframes >= 16)
54
 	{
55
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
56
-		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _mm_hint(0));
57
-		_mm_prefetch(((char *)src + (16 * sizeof(float))), _mm_hint(0));
58
+		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _MM_HINT_NTA);
59
+		_mm_prefetch(((char *)src + (16 * sizeof(float))), _MM_HINT_NTA);
60
 #else
61
 		__builtin_prefetch(reinterpret_cast<void const *>(src + 16), 0, 0);
62
 		__builtin_prefetch(reinterpret_cast<void const *>(dst + 16), 0, 0);
63
@@ -674,8 +674,8 @@ x86_sse_avx_mix_buffers_no_gain_aligned(float *dst, co
64
 	while (nframes >= 32)
65
 	{
66
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
67
-		_mm_prefetch(((char *)dst + (32 * sizeof(float))), _mm_hint(0));
68
-		_mm_prefetch(((char *)src + (32 * sizeof(float))), _mm_hint(0));
69
+		_mm_prefetch(((char *)dst + (32 * sizeof(float))), _MM_HINT_NTA);
70
+		_mm_prefetch(((char *)src + (32 * sizeof(float))), _MM_HINT_NTA);
71
 #else
72
 		__builtin_prefetch(reinterpret_cast<void const *>(src + 32), 0, 0);
73
 		__builtin_prefetch(reinterpret_cast<void const *>(dst + 32), 0, 0);
74
@@ -717,8 +717,8 @@ x86_sse_avx_mix_buffers_no_gain_aligned(float *dst, co
75
 	while (nframes >= 16)
76
 	{
77
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
78
-		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _mm_hint(0));
79
-		_mm_prefetch(((char *)src + (16 * sizeof(float))), _mm_hint(0));
80
+		_mm_prefetch(((char *)dst + (16 * sizeof(float))), _MM_HINT_NTA);
81
+		_mm_prefetch(((char *)src + (16 * sizeof(float))), _MM_HINT_NTA);
82
 #else
83
 		__builtin_prefetch(reinterpret_cast<void const *>(src + 16), 0, 0);
84
 		__builtin_prefetch(reinterpret_cast<void const *>(dst + 16), 0, 0);
(-)b/audio/ardour/files/patch-libs_ardour_x86__functions__avx512f.cc (+109 lines)
Added Link Here
1
--- libs/ardour/x86_functions_avx512f.cc.orig	2023-02-21 01:05:04 UTC
2
+++ libs/ardour/x86_functions_avx512f.cc
3
@@ -83,7 +83,7 @@ x86_avx512f_compute_peak(const float *src, uint32_t nf
4
 	}
5
 
6
 	while (frames >= 256) {
7
-		_mm_prefetch(reinterpret_cast<void const *>(src + 256), _mm_hint(0));
8
+		_mm_prefetch(reinterpret_cast<void const *>(src + 256), _MM_HINT_NTA);
9
 
10
 		__m512 x0 = _mm512_load_ps(src + 0);
11
 		__m512 x1 = _mm512_load_ps(src + 16);
12
@@ -142,7 +142,7 @@ x86_avx512f_compute_peak(const float *src, uint32_t nf
13
 	}
14
 
15
 	while (frames >= 128) {
16
-		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _mm_hint(0));
17
+		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _MM_HINT_NTA);
18
 
19
 		__m512 x0 = _mm512_load_ps(src + 0);
20
 		__m512 x1 = _mm512_load_ps(src + 16);
21
@@ -176,7 +176,7 @@ x86_avx512f_compute_peak(const float *src, uint32_t nf
22
 	}
23
 
24
 	while (frames >= 64) {
25
-		_mm_prefetch(reinterpret_cast<void const *>(src + 64), _mm_hint(0));
26
+		_mm_prefetch(reinterpret_cast<void const *>(src + 64), _MM_HINT_NTA);
27
 
28
 		__m512 x0 = _mm512_load_ps(src + 0);
29
 		__m512 x1 = _mm512_load_ps(src + 16);
30
@@ -310,7 +310,7 @@ x86_avx512f_find_peaks(const float *src, uint32_t nfra
31
 	}
32
 
33
 	while (frames >= 256) {
34
-		_mm_prefetch(reinterpret_cast<void const *>(src + 256), _mm_hint(0));
35
+		_mm_prefetch(reinterpret_cast<void const *>(src + 256), _MM_HINT_NTA);
36
 
37
 		__m512 x0 = _mm512_load_ps(src + 0);
38
 		__m512 x1 = _mm512_load_ps(src + 16);
39
@@ -371,7 +371,7 @@ x86_avx512f_find_peaks(const float *src, uint32_t nfra
40
 	}
41
 
42
 	while (frames >= 128) {
43
-		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _mm_hint(0));
44
+		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _MM_HINT_NTA);
45
 
46
 		__m512 x0 = _mm512_load_ps(src + 0);
47
 		__m512 x1 = _mm512_load_ps(src + 16);
48
@@ -405,7 +405,7 @@ x86_avx512f_find_peaks(const float *src, uint32_t nfra
49
 	}
50
 
51
 	while (frames >= 64) {
52
-		_mm_prefetch(reinterpret_cast<void const *>(src + 64), _mm_hint(0));
53
+		_mm_prefetch(reinterpret_cast<void const *>(src + 64), _MM_HINT_NTA);
54
 
55
 		__m512 x0 = _mm512_load_ps(src + 0);
56
 		__m512 x1 = _mm512_load_ps(src + 16);
57
@@ -532,7 +532,7 @@ x86_avx512f_apply_gain_to_buffer(float *dst, uint32_t 
58
 
59
 	// Process the remaining samples 128 at a time
60
 	while (frames >= 128) {
61
-		_mm_prefetch(reinterpret_cast<void const *>(dst + 128), _mm_hint(0));
62
+		_mm_prefetch(reinterpret_cast<void const *>(dst + 128), _MM_HINT_NTA);
63
 
64
 		__m512 x0 = _mm512_load_ps(dst + 0);
65
 		__m512 x1 = _mm512_load_ps(dst + 16);
66
@@ -679,8 +679,8 @@ x86_avx512f_mix_buffers_with_gain(float *dst, const fl
67
 
68
 	// Process the remaining samples 128 at a time
69
 	while (frames >= 128) {
70
-		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _mm_hint(0));
71
-		_mm_prefetch(reinterpret_cast<void const *>(dst + 128), _mm_hint(0));
72
+		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _MM_HINT_NTA);
73
+		_mm_prefetch(reinterpret_cast<void const *>(dst + 128), _MM_HINT_NTA);
74
 
75
 		__m512 x0 = _mm512_load_ps(src + 0);
76
 		__m512 x1 = _mm512_load_ps(src + 16);
77
@@ -836,8 +836,8 @@ x86_avx512f_mix_buffers_no_gain(float *dst, const floa
78
 
79
 	// Process the remaining samples 128 at a time
80
 	while (frames >= 128) {
81
-		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _mm_hint(0));
82
-		_mm_prefetch(reinterpret_cast<void const *>(dst + 128), _mm_hint(0));
83
+		_mm_prefetch(reinterpret_cast<void const *>(src + 128), _MM_HINT_NTA);
84
+		_mm_prefetch(reinterpret_cast<void const *>(dst + 128), _MM_HINT_NTA);
85
 
86
 		__m512 x0 = _mm512_load_ps(src + 0);
87
 		__m512 x1 = _mm512_load_ps(src + 16);
88
@@ -987,8 +987,8 @@ x86_avx512f_copy_vector(float *dst, const float *src, 
89
 
90
 	// Process 256 samples at a time
91
 	while (frames >= 256) {
92
-		_mm_prefetch(reinterpret_cast<void const *>(src + 256), _mm_hint(0));
93
-		_mm_prefetch(reinterpret_cast<void const *>(dst + 256), _mm_hint(0));
94
+		_mm_prefetch(reinterpret_cast<void const *>(src + 256), _MM_HINT_NTA);
95
+		_mm_prefetch(reinterpret_cast<void const *>(dst + 256), _MM_HINT_NTA);
96
 
97
 		__m512 x0 = _mm512_load_ps(src + 0);
98
 		__m512 x1 = _mm512_load_ps(src + 16);
99
@@ -1033,8 +1033,8 @@ x86_avx512f_copy_vector(float *dst, const float *src, 
100
 
101
 	// Process remaining samples 64 at a time
102
 	while (frames >= 64) {
103
-		_mm_prefetch(reinterpret_cast<void const *>(src + 64), _mm_hint(0));
104
-		_mm_prefetch(reinterpret_cast<void const *>(dst + 64), _mm_hint(0));
105
+		_mm_prefetch(reinterpret_cast<void const *>(src + 64), _MM_HINT_NTA);
106
+		_mm_prefetch(reinterpret_cast<void const *>(dst + 64), _MM_HINT_NTA);
107
 
108
 		__m512 x0 = _mm512_load_ps(src + 0);
109
 		__m512 x1 = _mm512_load_ps(src + 16);
(-)b/audio/ardour/files/patch-libs_ardour_x86__functions__fma.cc (+13 lines)
Added Link Here
1
--- libs/ardour/x86_functions_fma.cc.orig	2023-02-21 01:16:53 UTC
2
+++ libs/ardour/x86_functions_fma.cc
3
@@ -67,8 +67,8 @@ x86_fma_mix_buffers_with_gain(
4
 
5
 		while (nframes >= 16) {
6
 #if defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
7
-			_mm_prefetch(((char *)dst + (16 * sizeof(float))), _mm_hint(0));
8
-			_mm_prefetch(((char *)src + (16 * sizeof(float))), _mm_hint(0));
9
+			_mm_prefetch(((char *)dst + (16 * sizeof(float))), _MM_HINT_NTA);
10
+			_mm_prefetch(((char *)src + (16 * sizeof(float))), _MM_HINT_NTA);
11
 #else
12
 			__builtin_prefetch(src + (16 * sizeof(float)), 0, 0);
13
 			__builtin_prefetch(dst + (16 * sizeof(float)), 0, 0);
(-)b/audio/ardour/pkg-plist (+1 lines)
Lines 836-841 share/applications/%%ARDOUR_MAJOR%%.desktop Link Here
836
%%DATADIR%%/scripts/reset_mixer.lua
836
%%DATADIR%%/scripts/reset_mixer.lua
837
%%DATADIR%%/scripts/rubberband_swing.lua
837
%%DATADIR%%/scripts/rubberband_swing.lua
838
%%DATADIR%%/scripts/s_chanmap.lua
838
%%DATADIR%%/scripts/s_chanmap.lua
839
%%DATADIR%%/scripts/s_cut_copy_section.lua
839
%%DATADIR%%/scripts/s_ducks.lua
840
%%DATADIR%%/scripts/s_ducks.lua
840
%%DATADIR%%/scripts/s_fader_automation.lua
841
%%DATADIR%%/scripts/s_fader_automation.lua
841
%%DATADIR%%/scripts/s_foreach_track.lua
842
%%DATADIR%%/scripts/s_foreach_track.lua

Return to bug 270056