git: 3dd02a0fe712 - main - audio/pulseaudio: fix build on armv7

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Mon, 09 Oct 2023 07:41:47 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3dd02a0fe712c2b67ab0e15444d9fbb4f00b3817

commit 3dd02a0fe712c2b67ab0e15444d9fbb4f00b3817
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2023-10-07 05:51:21 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2023-10-09 07:40:29 +0000

    audio/pulseaudio: fix build on armv7
    
    The inline assembly template modifier h is not supported by clang.  With
    gcc, it prints a 128 bit NEON register as a pair of halves.  Emulate its
    effect through the e and f modifiers, which are supported by both.
    
    Approved by:    portmgr (build fix blanket)
    MFH:            2023Q4
---
 audio/pulseaudio/files/patch-src_pulsecore_mix__neon.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/audio/pulseaudio/files/patch-src_pulsecore_mix__neon.c b/audio/pulseaudio/files/patch-src_pulsecore_mix__neon.c
new file mode 100644
index 000000000000..08fc02b299f8
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_pulsecore_mix__neon.c
@@ -0,0 +1,13 @@
+--- src/pulsecore/mix_neon.c.orig	2023-10-07 05:45:10 UTC
++++ src/pulsecore/mix_neon.c
+@@ -176,8 +176,8 @@ static void pa_mix2_ch4_s16ne_neon(pa_mix_info streams
+     int32x4_t sv0, sv1;
+ 
+     __asm__ __volatile__ (
+-        "vld1.s32 %h[sv0], [%[lin0]]         \n\t"
+-        "vld1.s32 %h[sv1], [%[lin1]]         \n\t"
++        "vld1.s32 {%e[sv0],%f[sv0]}, [%[lin0]]         \n\t"
++        "vld1.s32 {%e[sv1],%f[sv1]}, [%[lin1]]         \n\t"
+         : [sv0] "=w" (sv0), [sv1] "=w" (sv1)
+         : [lin0] "r" (streams[0].linear), [lin1] "r" (streams[1].linear)
+         : /* clobber list */