From 2bb3ae82dade33739cc1e71c403bd3bb2dd41243 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net> Date: Sun, 30 Jan 2022 18:40:55 +0200 Subject: [PATCH] arm: move ARMv7 NEON stuff into isa/arm/neon Down the line, we probably should not have one directory per ISA extension. This replicates the model from the hw/*/ directory. isa/ seems better than arch/ because: - "Instruction Set Architecture" is more specific than "Architecture", - it saves one character, - no modules/ subdirectory starts with I yet (so this will not break auto-completion habits). This also moves non-NEON-specific files to isa/arm/. --- modules/Makefile.am | 2 +- modules/audio_filter/Makefile.am | 2 +- modules/{arm_neon => isa/arm}/Makefile.am | 24 +++++++++---------- modules/{arm_neon => isa/arm}/asm.S | 0 modules/{arm_neon => isa/arm/neon}/amplify.S | 2 +- .../{arm_neon => isa/arm/neon}/chroma_neon.h | 0 .../{arm_neon => isa/arm/neon}/chroma_yuv.c | 2 +- .../arm/neon}/deinterleave_chroma.S | 2 +- modules/{arm_neon => isa/arm/neon}/i420_rgb.S | 2 +- .../{arm_neon => isa/arm/neon}/i420_rv16.S | 2 +- .../{arm_neon => isa/arm/neon}/i420_yuyv.S | 2 +- .../{arm_neon => isa/arm/neon}/i422_yuyv.S | 2 +- modules/{arm_neon => isa/arm/neon}/nv12_rgb.S | 2 +- modules/{arm_neon => isa/arm/neon}/nv21_rgb.S | 2 +- .../arm/neon}/simple_channel_mixer.S | 2 +- modules/{arm_neon => isa/arm/neon}/volume.c | 0 modules/{arm_neon => isa/arm/neon}/yuv_rgb.c | 2 +- .../{arm_neon => isa/arm/neon}/yuyv_i422.S | 2 +- modules/video_filter/deinterlace/merge_arm.S | 2 +- .../video_filter/deinterlace/merge_arm64.S | 2 +- modules/video_filter/deinterlace/merge_sve.S | 2 +- po/POTFILES.in | 6 ++--- 22 files changed, 32 insertions(+), 32 deletions(-) rename modules/{arm_neon => isa/arm}/Makefile.am (59%) rename modules/{arm_neon => isa/arm}/asm.S (100%) rename modules/{arm_neon => isa/arm/neon}/amplify.S (99%) rename modules/{arm_neon => isa/arm/neon}/chroma_neon.h (100%) rename modules/{arm_neon => isa/arm/neon}/chroma_yuv.c (99%) rename modules/{arm_neon => isa/arm/neon}/deinterleave_chroma.S (98%) rename modules/{arm_neon => isa/arm/neon}/i420_rgb.S (99%) rename modules/{arm_neon => isa/arm/neon}/i420_rv16.S (99%) rename modules/{arm_neon => isa/arm/neon}/i420_yuyv.S (99%) rename modules/{arm_neon => isa/arm/neon}/i422_yuyv.S (99%) rename modules/{arm_neon => isa/arm/neon}/nv12_rgb.S (99%) rename modules/{arm_neon => isa/arm/neon}/nv21_rgb.S (99%) rename modules/{arm_neon => isa/arm/neon}/simple_channel_mixer.S (99%) rename modules/{arm_neon => isa/arm/neon}/volume.c (100%) rename modules/{arm_neon => isa/arm/neon}/yuv_rgb.c (99%) rename modules/{arm_neon => isa/arm/neon}/yuyv_i422.S (99%) diff --git a/modules/Makefile.am b/modules/Makefile.am index af423c8f155e..8d76d7ff5f84 100644 --- a/modules/Makefile.am +++ b/modules/Makefile.am @@ -18,7 +18,6 @@ include access/Makefile.am include access/http/Makefile.am include access/rtp/Makefile.am include access/rtp/test/Makefile.am -include arm_neon/Makefile.am include audio_filter/Makefile.am include audio_mixer/Makefile.am include audio_output/Makefile.am @@ -32,6 +31,7 @@ include hw/d3d11/Makefile.am include hw/vaapi/Makefile.am include hw/vdpau/Makefile.am include hw/mmal/Makefile.am +include isa/arm/Makefile.am include keystore/Makefile.am include logger/Makefile.am include lua/Makefile.am diff --git a/modules/audio_filter/Makefile.am b/modules/audio_filter/Makefile.am index caae1e51b14f..f9ed38fefdf8 100644 --- a/modules/audio_filter/Makefile.am +++ b/modules/audio_filter/Makefile.am @@ -72,7 +72,7 @@ libsimple_channel_mixer_plugin_la_LIBADD = if HAVE_NEON EXTRA_LTLIBRARIES += libsimple_channel_mixer_plugin_arm_neon.la -libsimple_channel_mixer_plugin_arm_neon_la_SOURCES = arm_neon/simple_channel_mixer.S +libsimple_channel_mixer_plugin_arm_neon_la_SOURCES = isa/arm/neon/simple_channel_mixer.S # Intentionally leaving out AM_LDFLAGS from this one; it's not meant to be # built like a plugin. libsimple_channel_mixer_plugin_arm_neon_la_LDFLAGS = -static diff --git a/modules/arm_neon/Makefile.am b/modules/isa/arm/Makefile.am similarity index 59% rename from modules/arm_neon/Makefile.am rename to modules/isa/arm/Makefile.am index 10f5c15d7c16..9940d7fb6877 100644 --- a/modules/arm_neon/Makefile.am +++ b/modules/isa/arm/Makefile.am @@ -1,24 +1,24 @@ neondir = $(pluginsdir)/arm_neon libchroma_yuv_neon_plugin_la_SOURCES = \ - arm_neon/deinterleave_chroma.S \ - arm_neon/i420_yuyv.S \ - arm_neon/i422_yuyv.S \ - arm_neon/yuyv_i422.S \ - arm_neon/chroma_yuv.c arm_neon/chroma_neon.h + isa/arm/neon/deinterleave_chroma.S \ + isa/arm/neon/i420_yuyv.S \ + isa/arm/neon/i422_yuyv.S \ + isa/arm/neon/yuyv_i422.S \ + isa/arm/neon/chroma_yuv.c isa/arm/neon/chroma_neon.h libchroma_yuv_neon_plugin_la_CFLAGS = $(AM_CFLAGS) libchroma_yuv_neon_plugin_LIBTOOLFLAGS = --tag=CC -libvolume_neon_plugin_la_SOURCES = arm_neon/volume.c arm_neon/amplify.S +libvolume_neon_plugin_la_SOURCES = isa/arm/neon/volume.c isa/arm/neon/amplify.S libvolume_neon_plugin_la_CFLAGS = $(AM_CFLAGS) libvolume_neon_plugin_LIBTOOLFLAGS = --tag=CC libyuv_rgb_neon_plugin_la_SOURCES = \ - arm_neon/i420_rgb.S \ - arm_neon/i420_rv16.S \ - arm_neon/nv21_rgb.S \ - arm_neon/nv12_rgb.S \ - arm_neon/yuv_rgb.c + isa/arm/neon/i420_rgb.S \ + isa/arm/neon/i420_rv16.S \ + isa/arm/neon/nv21_rgb.S \ + isa/arm/neon/nv12_rgb.S \ + isa/arm/neon/yuv_rgb.c libyuv_rgb_neon_plugin_la_CFLAGS = $(AM_CFLAGS) libyuv_rgb_neon_plugin_LIBTOOLFLAGS = --tag=CC @@ -29,4 +29,4 @@ neon_LTLIBRARIES = \ libyuv_rgb_neon_plugin.la endif -EXTRA_DIST += arm_neon/asm.S +noinst_HEADERS += isa/arm/asm.S diff --git a/modules/arm_neon/asm.S b/modules/isa/arm/asm.S similarity index 100% rename from modules/arm_neon/asm.S rename to modules/isa/arm/asm.S diff --git a/modules/arm_neon/amplify.S b/modules/isa/arm/neon/amplify.S similarity index 99% rename from modules/arm_neon/amplify.S rename to modules/isa/arm/neon/amplify.S index 59c945445b76..bb2671ea60a0 100644 --- a/modules/arm_neon/amplify.S +++ b/modules/isa/arm/neon/amplify.S @@ -18,7 +18,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/chroma_neon.h b/modules/isa/arm/neon/chroma_neon.h similarity index 100% rename from modules/arm_neon/chroma_neon.h rename to modules/isa/arm/neon/chroma_neon.h diff --git a/modules/arm_neon/chroma_yuv.c b/modules/isa/arm/neon/chroma_yuv.c similarity index 99% rename from modules/arm_neon/chroma_yuv.c rename to modules/isa/arm/neon/chroma_yuv.c index bf72154a76b3..d693a7fabe1e 100644 --- a/modules/arm_neon/chroma_yuv.c +++ b/modules/isa/arm/neon/chroma_yuv.c @@ -27,7 +27,7 @@ #include <vlc_filter.h> #include <vlc_picture.h> #include <vlc_cpu.h> -#include "arm_neon/chroma_neon.h" +#include "chroma_neon.h" static int Open (filter_t *); diff --git a/modules/arm_neon/deinterleave_chroma.S b/modules/isa/arm/neon/deinterleave_chroma.S similarity index 98% rename from modules/arm_neon/deinterleave_chroma.S rename to modules/isa/arm/neon/deinterleave_chroma.S index 7c0723e2f6c1..ba45e4cf9503 100644 --- a/modules/arm_neon/deinterleave_chroma.S +++ b/modules/isa/arm/neon/deinterleave_chroma.S @@ -19,7 +19,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/i420_rgb.S b/modules/isa/arm/neon/i420_rgb.S similarity index 99% rename from modules/arm_neon/i420_rgb.S rename to modules/isa/arm/neon/i420_rgb.S index 6624c4e6046c..8db0e2c6b383 100644 --- a/modules/arm_neon/i420_rgb.S +++ b/modules/isa/arm/neon/i420_rgb.S @@ -19,7 +19,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/i420_rv16.S b/modules/isa/arm/neon/i420_rv16.S similarity index 99% rename from modules/arm_neon/i420_rv16.S rename to modules/isa/arm/neon/i420_rv16.S index a3bbae2ed1fa..eb8550354f43 100644 --- a/modules/arm_neon/i420_rv16.S +++ b/modules/isa/arm/neon/i420_rv16.S @@ -19,7 +19,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/i420_yuyv.S b/modules/isa/arm/neon/i420_yuyv.S similarity index 99% rename from modules/arm_neon/i420_yuyv.S rename to modules/isa/arm/neon/i420_yuyv.S index 22355e0b6140..0957bbf12607 100644 --- a/modules/arm_neon/i420_yuyv.S +++ b/modules/isa/arm/neon/i420_yuyv.S @@ -18,7 +18,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/i422_yuyv.S b/modules/isa/arm/neon/i422_yuyv.S similarity index 99% rename from modules/arm_neon/i422_yuyv.S rename to modules/isa/arm/neon/i422_yuyv.S index 9a5b8fc4b8c4..a8f31fb507f8 100644 --- a/modules/arm_neon/i422_yuyv.S +++ b/modules/isa/arm/neon/i422_yuyv.S @@ -18,7 +18,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/nv12_rgb.S b/modules/isa/arm/neon/nv12_rgb.S similarity index 99% rename from modules/arm_neon/nv12_rgb.S rename to modules/isa/arm/neon/nv12_rgb.S index ceef76cbefb8..fa87250d57b9 100644 --- a/modules/arm_neon/nv12_rgb.S +++ b/modules/isa/arm/neon/nv12_rgb.S @@ -19,7 +19,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/nv21_rgb.S b/modules/isa/arm/neon/nv21_rgb.S similarity index 99% rename from modules/arm_neon/nv21_rgb.S rename to modules/isa/arm/neon/nv21_rgb.S index 0d75b9f7f91d..38396fa87e8f 100644 --- a/modules/arm_neon/nv21_rgb.S +++ b/modules/isa/arm/neon/nv21_rgb.S @@ -19,7 +19,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/arm_neon/simple_channel_mixer.S b/modules/isa/arm/neon/simple_channel_mixer.S similarity index 99% rename from modules/arm_neon/simple_channel_mixer.S rename to modules/isa/arm/neon/simple_channel_mixer.S index cf9b1b531ef3..f578d7aa7767 100644 --- a/modules/arm_neon/simple_channel_mixer.S +++ b/modules/isa/arm/neon/simple_channel_mixer.S @@ -19,7 +19,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" #if HAVE_AS_FPU_DIRECTIVE .fpu neon diff --git a/modules/arm_neon/volume.c b/modules/isa/arm/neon/volume.c similarity index 100% rename from modules/arm_neon/volume.c rename to modules/isa/arm/neon/volume.c diff --git a/modules/arm_neon/yuv_rgb.c b/modules/isa/arm/neon/yuv_rgb.c similarity index 99% rename from modules/arm_neon/yuv_rgb.c rename to modules/isa/arm/neon/yuv_rgb.c index 5dca930f218a..41c2ea0206cd 100644 --- a/modules/arm_neon/yuv_rgb.c +++ b/modules/isa/arm/neon/yuv_rgb.c @@ -28,7 +28,7 @@ #include <vlc_filter.h> #include <vlc_picture.h> #include <vlc_cpu.h> -#include "arm_neon/chroma_neon.h" +#include "chroma_neon.h" static int Open (filter_t *); diff --git a/modules/arm_neon/yuyv_i422.S b/modules/isa/arm/neon/yuyv_i422.S similarity index 99% rename from modules/arm_neon/yuyv_i422.S rename to modules/isa/arm/neon/yuyv_i422.S index 62d826c83879..98ddfd0ce7d3 100644 --- a/modules/arm_neon/yuyv_i422.S +++ b/modules/isa/arm/neon/yuyv_i422.S @@ -18,7 +18,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "asm.S" +#include "../asm.S" .syntax unified #if HAVE_AS_FPU_DIRECTIVE diff --git a/modules/video_filter/deinterlace/merge_arm.S b/modules/video_filter/deinterlace/merge_arm.S index fb085114efc2..99e296c5463b 100644 --- a/modules/video_filter/deinterlace/merge_arm.S +++ b/modules/video_filter/deinterlace/merge_arm.S @@ -18,7 +18,7 @@ @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. @****************************************************************************/ -#include "../../arm_neon/asm.S" +#include "../../isa/arm/asm.S" .syntax unified #if HAVE_AS_ARCH_DIRECTIVE diff --git a/modules/video_filter/deinterlace/merge_arm64.S b/modules/video_filter/deinterlace/merge_arm64.S index 77c3dcc0fcae..91001d30d103 100644 --- a/modules/video_filter/deinterlace/merge_arm64.S +++ b/modules/video_filter/deinterlace/merge_arm64.S @@ -19,7 +19,7 @@ // Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. //****************************************************************************/ -#include "../../arm_neon/asm.S" +#include "../../isa/arm/asm.S" .arch armv8-a+simd .text diff --git a/modules/video_filter/deinterlace/merge_sve.S b/modules/video_filter/deinterlace/merge_sve.S index 52888853d1ae..28b4a5106170 100644 --- a/modules/video_filter/deinterlace/merge_sve.S +++ b/modules/video_filter/deinterlace/merge_sve.S @@ -18,7 +18,7 @@ * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ -#include "../../arm_neon/asm.S" +#include "../../isa/arm/asm.S" .arch armv8-a+sve diff --git a/po/POTFILES.in b/po/POTFILES.in index 83ce81d46a85..2387839be271 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -222,9 +222,6 @@ modules/access_output/livehttp.c modules/access_output/rist.c modules/access_output/shout.c modules/access_output/srt.c -modules/arm_neon/chroma_yuv.c -modules/arm_neon/volume.c -modules/arm_neon/yuv_rgb.c modules/audio_filter/audiobargraph_a.c modules/audio_filter/channel_mixer/dolby.c modules/audio_filter/channel_mixer/headphone.c @@ -1134,6 +1131,9 @@ modules/hw/vdpau/chroma.c modules/hw/vdpau/deinterlace.c modules/hw/vdpau/display.c modules/hw/vdpau/sharpen.c +modules/isa/arm/neon/chroma_yuv.c +modules/isa/arm/neon/volume.c +modules/isa/arm/neon/yuv_rgb.c modules/keystore/file.c modules/keystore/keychain.m modules/keystore/kwallet.c -- GitLab