diff --git a/.github/workflows/build_and_release.yml b/.github/workflows/build_and_release.yml index 0c3d148..768379e 100644 --- a/.github/workflows/build_and_release.yml +++ b/.github/workflows/build_and_release.yml @@ -55,7 +55,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-20.04, ubuntu-22.04] + os: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04] architecture: [arm64, amd64] build-type: [Release, Debug] @@ -138,7 +138,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, macos-12, macos-13] + os: [macos-12, macos-13] architecture: [osx64] build-type: [Release, Debug] @@ -192,6 +192,7 @@ jobs: working-directory: build run: | cmake ../ -DCMAKE_BUILD_TYPE=${{ matrix.build-type}} -DCMAKE_BUILD_ARCHITECTURE=${{ matrix.architecture }} + export PATH=$PWD/../3rdParty/depot_tools:$PATH make -j3 make install diff --git a/3rdParty/depot_tools b/3rdParty/depot_tools index 6953ebe..9e9fc99 160000 --- a/3rdParty/depot_tools +++ b/3rdParty/depot_tools @@ -1 +1 @@ -Subproject commit 6953ebe3c1825e0f548e8c124a3b85f6c75dbc73 +Subproject commit 9e9fc992803c0c95402c190fb0bd15b787966855 diff --git a/3rdParty/webrtc_native/CMakeLists.txt b/3rdParty/webrtc_native/CMakeLists.txt index 68860b7..ffea809 100644 --- a/3rdParty/webrtc_native/CMakeLists.txt +++ b/3rdParty/webrtc_native/CMakeLists.txt @@ -1,5 +1,5 @@ -# VERSION MAJOR = 121, MINOR=0, BUILD=6167, PATCH=54 -set(WEBRTC_CHECKOUT 3df661f79828194d0acb51a1480833bafd9e5066) +# VERSION MAJOR = 125, MINOR=0, BUILD=6422, PATCH=224 +set(WEBRTC_CHECKOUT 8505a9838ea91c66c96c173d30cd66f9dbcc7548) if(WIN32) diff --git a/VERSION b/VERSION index 4470851..11f077d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -6167.3df661.54 +6422.8505a9.224 diff --git a/docker/ubuntu-20.04/Dockerfile b/docker/ubuntu-20.04/Dockerfile index 8366ce7..56b2205 100644 --- a/docker/ubuntu-20.04/Dockerfile +++ b/docker/ubuntu-20.04/Dockerfile @@ -34,9 +34,10 @@ WORKDIR /root/webrtc-native-build RUN mkdir build WORKDIR /root/webrtc-native-build/build - RUN cmake ../ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_BUILD_ARCHITECTURE=${BUILD_ARCHITECTURE} -RUN make -j2 +RUN ../patches/apply_patch.sh +RUN cmake ../ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_BUILD_ARCHITECTURE=${BUILD_ARCHITECTURE} +RUN export PATH=/root/webrtc-native-build/3rdParty/depot_tools:$PATH && make -j2 RUN make install VOLUME [ "/data" ] diff --git a/docker/ubuntu-22.04/Dockerfile b/docker/ubuntu-22.04/Dockerfile index 33194cf..5c6b14b 100644 --- a/docker/ubuntu-22.04/Dockerfile +++ b/docker/ubuntu-22.04/Dockerfile @@ -28,7 +28,9 @@ RUN mkdir build WORKDIR /root/webrtc-native-build/build RUN cmake ../ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_BUILD_ARCHITECTURE=${BUILD_ARCHITECTURE} -RUN make -j2 +RUN ../patches/apply_patch.sh +RUN cmake ../ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_BUILD_ARCHITECTURE=${BUILD_ARCHITECTURE} +RUN export PATH=/root/webrtc-native-build/3rdParty/depot_tools:$PATH && make -j2 RUN make install VOLUME [ "/data" ] diff --git a/docker/ubuntu-24.04/Dockerfile b/docker/ubuntu-24.04/Dockerfile new file mode 100644 index 0000000..4dddd41 --- /dev/null +++ b/docker/ubuntu-24.04/Dockerfile @@ -0,0 +1,42 @@ +FROM ubuntu:24.04 +# Change default shell to bash +SHELL ["/bin/bash", "--login", "-c"] + +# Install build dependencies +RUN apt update && DEBIAN_FRONTEND=noninteractive apt install -y \ + build-essential git sudo vim libprotobuf-dev protobuf-compiler locales wget curl cmake pkg-config ca-certificates \ + ninja-build libssl-dev libboost-all-dev libglib2.0-dev libgtk-3-dev libpulse-dev libasound2-dev patch + +# Install cross-compiler +RUN apt install -y g++-aarch64-linux-gnu gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf clang + +# Define a build-time argument +ARG BUILD_TYPE=Release +ARG BUILD_ARCHITECTURE=amd64 +ARG BUILD_BRANCH=main + +# Set Working directory +WORKDIR /root + +# Checkout code +RUN git clone -b ${BUILD_BRANCH} https://github.com/introlab/webrtc-native-build.git --recurse-submodules + +WORKDIR /root/webrtc-native-build +RUN mkdir build + +WORKDIR /root/webrtc-native-build/build +RUN cmake ../ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_BUILD_ARCHITECTURE=${BUILD_ARCHITECTURE} + +WORKDIR /root/webrtc-native-build/3rdParty/webrtc_native/webrtc/src/third_party/boringssl/src +RUN git checkout 7c2b62e93487b772990fddc1905f22d4cfaee4a4 + +WORKDIR /root/webrtc-native-build/build +RUN ../patches/apply_patch.sh +RUN cmake ../ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_BUILD_ARCHITECTURE=${BUILD_ARCHITECTURE} +RUN export PATH=/root/webrtc-native-build/3rdParty/depot_tools:$PATH && make -j2 +RUN make install + +VOLUME [ "/data" ] + +WORKDIR /root/webrtc-native-build/dist/${BUILD_TYPE} +CMD ["/bin/bash", "-c", "tar cvzf /data/release.tar.gz ."] diff --git a/docker/ubuntu-24.04/run.sh b/docker/ubuntu-24.04/run.sh new file mode 100755 index 0000000..48e4f6c --- /dev/null +++ b/docker/ubuntu-24.04/run.sh @@ -0,0 +1,4 @@ +docker buildx build -t webrtc --build-arg BUILD_TYPE=Debug --build-arg BUILD_ARCHITECTURE=arm64 --build-arg BUILD_BRANCH=update-webrtc . +docker run --rm \ + --volume $PWD:/data webrtc \ + tar cvzf /data/release.tar.gz ./ diff --git a/patches/apply_patch.sh b/patches/apply_patch.sh new file mode 100755 index 0000000..785555a --- /dev/null +++ b/patches/apply_patch.sh @@ -0,0 +1,10 @@ +#! /usr/bin/bash + +SCRIPT=`realpath $0` +SCRIPT_PATH=`dirname $SCRIPT` + +patch -u $SCRIPT_PATH/../3rdParty/webrtc_native/webrtc/src/third_party/libvpx/BUILD.gn $SCRIPT_PATH/libvpx_BUILD.gn.patch +patch -u $SCRIPT_PATH/../3rdParty/webrtc_native/webrtc/src/third_party/libvpx/source/config/linux/arm64-highbd/vp9_rtcd.h $SCRIPT_PATH/libvpx_linux_arm64-highbd_vp9_rtcd.h.patch +patch -u $SCRIPT_PATH/../3rdParty/webrtc_native/webrtc/src/third_party/libvpx/source/config/linux/arm64-highbd/vpx_dsp_rtcd.h $SCRIPT_PATH/libvpx_linux_arm64_vpx_dsp_rtcd.h.patch +patch -u $SCRIPT_PATH/../3rdParty/webrtc_native/webrtc/src/third_party/libvpx/source/config/linux/arm64/vp9_rtcd.h $SCRIPT_PATH/libvpx_linux_arm64_vp9_rtcd.h.patch +patch -u $SCRIPT_PATH/../3rdParty/webrtc_native/webrtc/src/third_party/libvpx/source/config/linux/arm64/vpx_dsp_rtcd.h $SCRIPT_PATH/libvpx_linux_arm64_vpx_dsp_rtcd.h.patch diff --git a/patches/libvpx_BUILD.gn.patch b/patches/libvpx_BUILD.gn.patch new file mode 100644 index 0000000..518c344 --- /dev/null +++ b/patches/libvpx_BUILD.gn.patch @@ -0,0 +1,18 @@ +@@ -369,7 +369,7 @@ if (current_cpu == "arm64") { + # SVE is disabled for Windows due to a limitation with clang-cl-18: + # third_party\llvm-build\Release+Asserts\lib\clang\18\include\arm_sve.h(271,1): + # error: cannot mangle this built-in __SVInt8_t type yet +- if (!is_win) { ++ if (!is_win && is_clang) { + source_set("libvpx_intrinsics_sve") { + check_includes = false + configs -= [ "//build/config/compiler:chromium_code" ] +@@ -583,7 +583,7 @@ static_library("libvpx") { + if (current_cpu == "arm64") { + deps += [ ":libvpx_intrinsics_neon_dotprod" ] + deps += [ ":libvpx_intrinsics_neon_i8mm" ] +- if (!is_win) { ++ if (!is_win && is_clang) { + deps += [ + ":libvpx_intrinsics_sve", + ":libvpx_intrinsics_sve2", diff --git a/patches/libvpx_linux_arm64-highbd_vp9_rtcd.h.patch b/patches/libvpx_linux_arm64-highbd_vp9_rtcd.h.patch new file mode 100644 index 0000000..61aa18b --- /dev/null +++ b/patches/libvpx_linux_arm64-highbd_vp9_rtcd.h.patch @@ -0,0 +1,35 @@ +@@ -41,10 +41,6 @@ int64_t vp9_block_error_neon(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + intptr_t block_size, + int64_t* ssz); +-int64_t vp9_block_error_sve(const tran_low_t* coeff, +- const tran_low_t* dqcoeff, +- intptr_t block_size, +- int64_t* ssz); + RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + intptr_t block_size, +@@ -56,9 +52,6 @@ int64_t vp9_block_error_fp_c(const tran_low_t* coeff, + int64_t vp9_block_error_fp_neon(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + int block_size); +-int64_t vp9_block_error_fp_sve(const tran_low_t* coeff, +- const tran_low_t* dqcoeff, +- int block_size); + RTCD_EXTERN int64_t (*vp9_block_error_fp)(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + int block_size); +@@ -395,13 +388,7 @@ static void setup_rtcd_internal(void) { + (void)flags; + + vp9_block_error = vp9_block_error_neon; +- if (flags & HAS_SVE) { +- vp9_block_error = vp9_block_error_sve; +- } + vp9_block_error_fp = vp9_block_error_fp_neon; +- if (flags & HAS_SVE) { +- vp9_block_error_fp = vp9_block_error_fp_sve; +- } + } + #endif + diff --git a/patches/libvpx_linux_arm64-highbd_vpx_dsp_rtcd.h.patch b/patches/libvpx_linux_arm64-highbd_vpx_dsp_rtcd.h.patch new file mode 100644 index 0000000..4ea7dcd --- /dev/null +++ b/patches/libvpx_linux_arm64-highbd_vpx_dsp_rtcd.h.patch @@ -0,0 +1,1021 @@ +@@ -1032,12 +1032,6 @@ void vpx_highbd_10_get16x16var_neon(const uint8_t* src_ptr, + int ref_stride, + unsigned int* sse, + int* sum); +-void vpx_highbd_10_get16x16var_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse, +- int* sum); + RTCD_EXTERN void (*vpx_highbd_10_get16x16var)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1057,12 +1051,6 @@ void vpx_highbd_10_get8x8var_neon(const uint8_t* src_ptr, + int ref_stride, + unsigned int* sse, + int* sum); +-void vpx_highbd_10_get8x8var_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse, +- int* sum); + RTCD_EXTERN void (*vpx_highbd_10_get8x8var)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1080,11 +1068,6 @@ unsigned int vpx_highbd_10_mse16x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_mse16x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_mse16x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1101,11 +1084,6 @@ unsigned int vpx_highbd_10_mse16x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_mse16x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_mse16x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1122,11 +1100,6 @@ unsigned int vpx_highbd_10_mse8x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_mse8x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_mse8x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1143,11 +1116,6 @@ unsigned int vpx_highbd_10_mse8x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_mse8x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_mse8x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1652,11 +1620,6 @@ unsigned int vpx_highbd_10_variance16x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance16x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance16x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1673,11 +1636,6 @@ unsigned int vpx_highbd_10_variance16x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance16x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance16x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1694,11 +1652,6 @@ unsigned int vpx_highbd_10_variance16x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance16x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance16x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1715,11 +1668,6 @@ unsigned int vpx_highbd_10_variance32x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance32x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance32x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1736,11 +1684,6 @@ unsigned int vpx_highbd_10_variance32x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance32x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance32x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1757,11 +1700,6 @@ unsigned int vpx_highbd_10_variance32x64_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance32x64_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance32x64)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1778,11 +1716,6 @@ unsigned int vpx_highbd_10_variance4x4_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance4x4_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance4x4)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1799,11 +1732,6 @@ unsigned int vpx_highbd_10_variance4x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance4x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance4x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1820,11 +1748,6 @@ unsigned int vpx_highbd_10_variance64x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance64x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance64x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1841,11 +1764,6 @@ unsigned int vpx_highbd_10_variance64x64_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance64x64_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance64x64)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1862,11 +1780,6 @@ unsigned int vpx_highbd_10_variance8x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance8x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance8x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1883,11 +1796,6 @@ unsigned int vpx_highbd_10_variance8x4_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance8x4_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance8x4)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1904,11 +1812,6 @@ unsigned int vpx_highbd_10_variance8x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_10_variance8x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_10_variance8x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1927,12 +1830,6 @@ void vpx_highbd_12_get16x16var_neon(const uint8_t* src_ptr, + int ref_stride, + unsigned int* sse, + int* sum); +-void vpx_highbd_12_get16x16var_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse, +- int* sum); + RTCD_EXTERN void (*vpx_highbd_12_get16x16var)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1952,12 +1849,6 @@ void vpx_highbd_12_get8x8var_neon(const uint8_t* src_ptr, + int ref_stride, + unsigned int* sse, + int* sum); +-void vpx_highbd_12_get8x8var_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse, +- int* sum); + RTCD_EXTERN void (*vpx_highbd_12_get8x8var)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1975,11 +1866,6 @@ unsigned int vpx_highbd_12_mse16x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_mse16x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_mse16x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -1996,11 +1882,6 @@ unsigned int vpx_highbd_12_mse16x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_mse16x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_mse16x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2017,11 +1898,6 @@ unsigned int vpx_highbd_12_mse8x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_mse8x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_mse8x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2038,11 +1914,6 @@ unsigned int vpx_highbd_12_mse8x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_mse8x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_mse8x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2547,11 +2418,6 @@ unsigned int vpx_highbd_12_variance16x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance16x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance16x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2568,11 +2434,6 @@ unsigned int vpx_highbd_12_variance16x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance16x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance16x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2589,11 +2450,6 @@ unsigned int vpx_highbd_12_variance16x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance16x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance16x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2610,11 +2466,6 @@ unsigned int vpx_highbd_12_variance32x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance32x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance32x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2631,10 +2482,6 @@ unsigned int vpx_highbd_12_variance32x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance32x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, + unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance32x32)(const uint8_t* src_ptr, + int src_stride, +@@ -2652,11 +2499,6 @@ unsigned int vpx_highbd_12_variance32x64_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance32x64_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance32x64)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2673,11 +2515,6 @@ unsigned int vpx_highbd_12_variance4x4_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance4x4_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance4x4)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2694,11 +2531,6 @@ unsigned int vpx_highbd_12_variance4x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance4x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance4x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2715,11 +2547,6 @@ unsigned int vpx_highbd_12_variance64x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance64x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance64x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2736,11 +2563,6 @@ unsigned int vpx_highbd_12_variance64x64_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance64x64_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance64x64)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2757,11 +2579,6 @@ unsigned int vpx_highbd_12_variance8x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance8x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance8x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2778,11 +2595,6 @@ unsigned int vpx_highbd_12_variance8x4_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance8x4_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance8x4)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2799,11 +2611,6 @@ unsigned int vpx_highbd_12_variance8x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_12_variance8x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_12_variance8x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2822,12 +2629,6 @@ void vpx_highbd_8_get16x16var_neon(const uint8_t* src_ptr, + int ref_stride, + unsigned int* sse, + int* sum); +-void vpx_highbd_8_get16x16var_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse, +- int* sum); + RTCD_EXTERN void (*vpx_highbd_8_get16x16var)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -2847,12 +2648,6 @@ void vpx_highbd_8_get8x8var_neon(const uint8_t* src_ptr, + int ref_stride, + unsigned int* sse, + int* sum); +-void vpx_highbd_8_get8x8var_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse, +- int* sum); + RTCD_EXTERN void (*vpx_highbd_8_get8x8var)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3435,11 +3230,6 @@ unsigned int vpx_highbd_8_variance16x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance16x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance16x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3456,11 +3246,6 @@ unsigned int vpx_highbd_8_variance16x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance16x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance16x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3477,11 +3262,6 @@ unsigned int vpx_highbd_8_variance16x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance16x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance16x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3498,11 +3278,6 @@ unsigned int vpx_highbd_8_variance32x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance32x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance32x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3519,11 +3294,6 @@ unsigned int vpx_highbd_8_variance32x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance32x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance32x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3540,11 +3310,6 @@ unsigned int vpx_highbd_8_variance32x64_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance32x64_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance32x64)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3561,11 +3326,6 @@ unsigned int vpx_highbd_8_variance4x4_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance4x4_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance4x4)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3582,11 +3342,6 @@ unsigned int vpx_highbd_8_variance4x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance4x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance4x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3603,11 +3358,6 @@ unsigned int vpx_highbd_8_variance64x32_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance64x32_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance64x32)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3624,11 +3374,6 @@ unsigned int vpx_highbd_8_variance64x64_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance64x64_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance64x64)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3645,11 +3390,6 @@ unsigned int vpx_highbd_8_variance8x16_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance8x16_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance8x16)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3666,11 +3406,6 @@ unsigned int vpx_highbd_8_variance8x4_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance8x4_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance8x4)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3687,11 +3422,6 @@ unsigned int vpx_highbd_8_variance8x8_neon(const uint8_t* src_ptr, + const uint8_t* ref_ptr, + int ref_stride, + unsigned int* sse); +-unsigned int vpx_highbd_8_variance8x8_sve(const uint8_t* src_ptr, +- int src_stride, +- const uint8_t* ref_ptr, +- int ref_stride, +- unsigned int* sse); + RTCD_EXTERN unsigned int (*vpx_highbd_8_variance8x8)(const uint8_t* src_ptr, + int src_stride, + const uint8_t* ref_ptr, +@@ -3744,18 +3474,6 @@ void vpx_highbd_convolve8_neon(const uint16_t* src, + int w, + int h, + int bd); +-void vpx_highbd_convolve8_sve2(const uint16_t* src, +- ptrdiff_t src_stride, +- uint16_t* dst, +- ptrdiff_t dst_stride, +- const InterpKernel* filter, +- int x0_q4, +- int x_step_q4, +- int y0_q4, +- int y_step_q4, +- int w, +- int h, +- int bd); + RTCD_EXTERN void (*vpx_highbd_convolve8)(const uint16_t* src, + ptrdiff_t src_stride, + uint16_t* dst, +@@ -3793,18 +3511,6 @@ void vpx_highbd_convolve8_avg_neon(const uint16_t* src, + int w, + int h, + int bd); +-void vpx_highbd_convolve8_avg_sve2(const uint16_t* src, +- ptrdiff_t src_stride, +- uint16_t* dst, +- ptrdiff_t dst_stride, +- const InterpKernel* filter, +- int x0_q4, +- int x_step_q4, +- int y0_q4, +- int y_step_q4, +- int w, +- int h, +- int bd); + RTCD_EXTERN void (*vpx_highbd_convolve8_avg)(const uint16_t* src, + ptrdiff_t src_stride, + uint16_t* dst, +@@ -3842,18 +3548,6 @@ void vpx_highbd_convolve8_avg_horiz_neon(const uint16_t* src, + int w, + int h, + int bd); +-void vpx_highbd_convolve8_avg_horiz_sve(const uint16_t* src, +- ptrdiff_t src_stride, +- uint16_t* dst, +- ptrdiff_t dst_stride, +- const InterpKernel* filter, +- int x0_q4, +- int x_step_q4, +- int y0_q4, +- int y_step_q4, +- int w, +- int h, +- int bd); + RTCD_EXTERN void (*vpx_highbd_convolve8_avg_horiz)(const uint16_t* src, + ptrdiff_t src_stride, + uint16_t* dst, +@@ -3891,18 +3585,6 @@ void vpx_highbd_convolve8_avg_vert_neon(const uint16_t* src, + int w, + int h, + int bd); +-void vpx_highbd_convolve8_avg_vert_sve2(const uint16_t* src, +- ptrdiff_t src_stride, +- uint16_t* dst, +- ptrdiff_t dst_stride, +- const InterpKernel* filter, +- int x0_q4, +- int x_step_q4, +- int y0_q4, +- int y_step_q4, +- int w, +- int h, +- int bd); + RTCD_EXTERN void (*vpx_highbd_convolve8_avg_vert)(const uint16_t* src, + ptrdiff_t src_stride, + uint16_t* dst, +@@ -3940,18 +3622,6 @@ void vpx_highbd_convolve8_horiz_neon(const uint16_t* src, + int w, + int h, + int bd); +-void vpx_highbd_convolve8_horiz_sve(const uint16_t* src, +- ptrdiff_t src_stride, +- uint16_t* dst, +- ptrdiff_t dst_stride, +- const InterpKernel* filter, +- int x0_q4, +- int x_step_q4, +- int y0_q4, +- int y_step_q4, +- int w, +- int h, +- int bd); + RTCD_EXTERN void (*vpx_highbd_convolve8_horiz)(const uint16_t* src, + ptrdiff_t src_stride, + uint16_t* dst, +@@ -3989,18 +3659,6 @@ void vpx_highbd_convolve8_vert_neon(const uint16_t* src, + int w, + int h, + int bd); +-void vpx_highbd_convolve8_vert_sve2(const uint16_t* src, +- ptrdiff_t src_stride, +- uint16_t* dst, +- ptrdiff_t dst_stride, +- const InterpKernel* filter, +- int x0_q4, +- int x_step_q4, +- int y0_q4, +- int y_step_q4, +- int w, +- int h, +- int bd); + RTCD_EXTERN void (*vpx_highbd_convolve8_vert)(const uint16_t* src, + ptrdiff_t src_stride, + uint16_t* dst, +@@ -8010,7 +7668,6 @@ void vpx_subtract_block_neon(int rows, + + uint64_t vpx_sum_squares_2d_i16_c(const int16_t* src, int stride, int size); + uint64_t vpx_sum_squares_2d_i16_neon(const int16_t* src, int stride, int size); +-uint64_t vpx_sum_squares_2d_i16_sve(const int16_t* src, int stride, int size); + RTCD_EXTERN uint64_t (*vpx_sum_squares_2d_i16)(const int16_t* src, + int stride, + int size); +@@ -8444,165 +8101,45 @@ static void setup_rtcd_internal(void) { + vpx_get8x8var = vpx_get8x8var_neon_dotprod; + } + vpx_highbd_10_get16x16var = vpx_highbd_10_get16x16var_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_get16x16var = vpx_highbd_10_get16x16var_sve; +- } + vpx_highbd_10_get8x8var = vpx_highbd_10_get8x8var_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_get8x8var = vpx_highbd_10_get8x8var_sve; +- } + vpx_highbd_10_mse16x16 = vpx_highbd_10_mse16x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_mse16x16 = vpx_highbd_10_mse16x16_sve; +- } + vpx_highbd_10_mse16x8 = vpx_highbd_10_mse16x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_mse16x8 = vpx_highbd_10_mse16x8_sve; +- } + vpx_highbd_10_mse8x16 = vpx_highbd_10_mse8x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_mse8x16 = vpx_highbd_10_mse8x16_sve; +- } + vpx_highbd_10_mse8x8 = vpx_highbd_10_mse8x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_mse8x8 = vpx_highbd_10_mse8x8_sve; +- } + vpx_highbd_10_variance16x16 = vpx_highbd_10_variance16x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance16x16 = vpx_highbd_10_variance16x16_sve; +- } + vpx_highbd_10_variance16x32 = vpx_highbd_10_variance16x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance16x32 = vpx_highbd_10_variance16x32_sve; +- } + vpx_highbd_10_variance16x8 = vpx_highbd_10_variance16x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance16x8 = vpx_highbd_10_variance16x8_sve; +- } + vpx_highbd_10_variance32x16 = vpx_highbd_10_variance32x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance32x16 = vpx_highbd_10_variance32x16_sve; +- } + vpx_highbd_10_variance32x32 = vpx_highbd_10_variance32x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance32x32 = vpx_highbd_10_variance32x32_sve; +- } + vpx_highbd_10_variance32x64 = vpx_highbd_10_variance32x64_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance32x64 = vpx_highbd_10_variance32x64_sve; +- } + vpx_highbd_10_variance4x4 = vpx_highbd_10_variance4x4_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance4x4 = vpx_highbd_10_variance4x4_sve; +- } + vpx_highbd_10_variance4x8 = vpx_highbd_10_variance4x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance4x8 = vpx_highbd_10_variance4x8_sve; +- } + vpx_highbd_10_variance64x32 = vpx_highbd_10_variance64x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance64x32 = vpx_highbd_10_variance64x32_sve; +- } + vpx_highbd_10_variance64x64 = vpx_highbd_10_variance64x64_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance64x64 = vpx_highbd_10_variance64x64_sve; +- } + vpx_highbd_10_variance8x16 = vpx_highbd_10_variance8x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance8x16 = vpx_highbd_10_variance8x16_sve; +- } + vpx_highbd_10_variance8x4 = vpx_highbd_10_variance8x4_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance8x4 = vpx_highbd_10_variance8x4_sve; +- } + vpx_highbd_10_variance8x8 = vpx_highbd_10_variance8x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_10_variance8x8 = vpx_highbd_10_variance8x8_sve; +- } + vpx_highbd_12_get16x16var = vpx_highbd_12_get16x16var_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_get16x16var = vpx_highbd_12_get16x16var_sve; +- } + vpx_highbd_12_get8x8var = vpx_highbd_12_get8x8var_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_get8x8var = vpx_highbd_12_get8x8var_sve; +- } + vpx_highbd_12_mse16x16 = vpx_highbd_12_mse16x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_mse16x16 = vpx_highbd_12_mse16x16_sve; +- } + vpx_highbd_12_mse16x8 = vpx_highbd_12_mse16x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_mse16x8 = vpx_highbd_12_mse16x8_sve; +- } + vpx_highbd_12_mse8x16 = vpx_highbd_12_mse8x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_mse8x16 = vpx_highbd_12_mse8x16_sve; +- } + vpx_highbd_12_mse8x8 = vpx_highbd_12_mse8x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_mse8x8 = vpx_highbd_12_mse8x8_sve; +- } + vpx_highbd_12_variance16x16 = vpx_highbd_12_variance16x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance16x16 = vpx_highbd_12_variance16x16_sve; +- } + vpx_highbd_12_variance16x32 = vpx_highbd_12_variance16x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance16x32 = vpx_highbd_12_variance16x32_sve; +- } + vpx_highbd_12_variance16x8 = vpx_highbd_12_variance16x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance16x8 = vpx_highbd_12_variance16x8_sve; +- } + vpx_highbd_12_variance32x16 = vpx_highbd_12_variance32x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance32x16 = vpx_highbd_12_variance32x16_sve; +- } + vpx_highbd_12_variance32x32 = vpx_highbd_12_variance32x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance32x32 = vpx_highbd_12_variance32x32_sve; +- } + vpx_highbd_12_variance32x64 = vpx_highbd_12_variance32x64_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance32x64 = vpx_highbd_12_variance32x64_sve; +- } + vpx_highbd_12_variance4x4 = vpx_highbd_12_variance4x4_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance4x4 = vpx_highbd_12_variance4x4_sve; +- } + vpx_highbd_12_variance4x8 = vpx_highbd_12_variance4x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance4x8 = vpx_highbd_12_variance4x8_sve; +- } + vpx_highbd_12_variance64x32 = vpx_highbd_12_variance64x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance64x32 = vpx_highbd_12_variance64x32_sve; +- } + vpx_highbd_12_variance64x64 = vpx_highbd_12_variance64x64_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance64x64 = vpx_highbd_12_variance64x64_sve; +- } + vpx_highbd_12_variance8x16 = vpx_highbd_12_variance8x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance8x16 = vpx_highbd_12_variance8x16_sve; +- } + vpx_highbd_12_variance8x4 = vpx_highbd_12_variance8x4_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance8x4 = vpx_highbd_12_variance8x4_sve; +- } + vpx_highbd_12_variance8x8 = vpx_highbd_12_variance8x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_12_variance8x8 = vpx_highbd_12_variance8x8_sve; +- } + vpx_highbd_8_get16x16var = vpx_highbd_8_get16x16var_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_get16x16var = vpx_highbd_8_get16x16var_sve; +- } + vpx_highbd_8_get8x8var = vpx_highbd_8_get8x8var_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_get8x8var = vpx_highbd_8_get8x8var_sve; +- } + vpx_highbd_8_mse16x16 = vpx_highbd_8_mse16x16_neon; + if (flags & HAS_NEON_DOTPROD) { + vpx_highbd_8_mse16x16 = vpx_highbd_8_mse16x16_neon_dotprod; +@@ -8620,81 +8157,24 @@ static void setup_rtcd_internal(void) { + vpx_highbd_8_mse8x8 = vpx_highbd_8_mse8x8_neon_dotprod; + } + vpx_highbd_8_variance16x16 = vpx_highbd_8_variance16x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance16x16 = vpx_highbd_8_variance16x16_sve; +- } + vpx_highbd_8_variance16x32 = vpx_highbd_8_variance16x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance16x32 = vpx_highbd_8_variance16x32_sve; +- } + vpx_highbd_8_variance16x8 = vpx_highbd_8_variance16x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance16x8 = vpx_highbd_8_variance16x8_sve; +- } + vpx_highbd_8_variance32x16 = vpx_highbd_8_variance32x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance32x16 = vpx_highbd_8_variance32x16_sve; +- } + vpx_highbd_8_variance32x32 = vpx_highbd_8_variance32x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance32x32 = vpx_highbd_8_variance32x32_sve; +- } + vpx_highbd_8_variance32x64 = vpx_highbd_8_variance32x64_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance32x64 = vpx_highbd_8_variance32x64_sve; +- } + vpx_highbd_8_variance4x4 = vpx_highbd_8_variance4x4_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance4x4 = vpx_highbd_8_variance4x4_sve; +- } + vpx_highbd_8_variance4x8 = vpx_highbd_8_variance4x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance4x8 = vpx_highbd_8_variance4x8_sve; +- } + vpx_highbd_8_variance64x32 = vpx_highbd_8_variance64x32_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance64x32 = vpx_highbd_8_variance64x32_sve; +- } + vpx_highbd_8_variance64x64 = vpx_highbd_8_variance64x64_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance64x64 = vpx_highbd_8_variance64x64_sve; +- } + vpx_highbd_8_variance8x16 = vpx_highbd_8_variance8x16_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance8x16 = vpx_highbd_8_variance8x16_sve; +- } + vpx_highbd_8_variance8x4 = vpx_highbd_8_variance8x4_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance8x4 = vpx_highbd_8_variance8x4_sve; +- } + vpx_highbd_8_variance8x8 = vpx_highbd_8_variance8x8_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_8_variance8x8 = vpx_highbd_8_variance8x8_sve; +- } + vpx_highbd_convolve8 = vpx_highbd_convolve8_neon; +- if (flags & HAS_SVE2) { +- vpx_highbd_convolve8 = vpx_highbd_convolve8_sve2; +- } + vpx_highbd_convolve8_avg = vpx_highbd_convolve8_avg_neon; +- if (flags & HAS_SVE2) { +- vpx_highbd_convolve8_avg = vpx_highbd_convolve8_avg_sve2; +- } + vpx_highbd_convolve8_avg_horiz = vpx_highbd_convolve8_avg_horiz_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_convolve8_avg_horiz = vpx_highbd_convolve8_avg_horiz_sve; +- } + vpx_highbd_convolve8_avg_vert = vpx_highbd_convolve8_avg_vert_neon; +- if (flags & HAS_SVE2) { +- vpx_highbd_convolve8_avg_vert = vpx_highbd_convolve8_avg_vert_sve2; +- } + vpx_highbd_convolve8_horiz = vpx_highbd_convolve8_horiz_neon; +- if (flags & HAS_SVE) { +- vpx_highbd_convolve8_horiz = vpx_highbd_convolve8_horiz_sve; +- } + vpx_highbd_convolve8_vert = vpx_highbd_convolve8_vert_neon; +- if (flags & HAS_SVE2) { +- vpx_highbd_convolve8_vert = vpx_highbd_convolve8_vert_sve2; +- } + vpx_mse16x16 = vpx_mse16x16_neon; + if (flags & HAS_NEON_DOTPROD) { + vpx_mse16x16 = vpx_mse16x16_neon_dotprod; +@@ -8876,9 +8356,6 @@ static void setup_rtcd_internal(void) { + vpx_sse = vpx_sse_neon_dotprod; + } + vpx_sum_squares_2d_i16 = vpx_sum_squares_2d_i16_neon; +- if (flags & HAS_SVE) { +- vpx_sum_squares_2d_i16 = vpx_sum_squares_2d_i16_sve; +- } + vpx_variance16x16 = vpx_variance16x16_neon; + if (flags & HAS_NEON_DOTPROD) { + vpx_variance16x16 = vpx_variance16x16_neon_dotprod; diff --git a/patches/libvpx_linux_arm64_vp9_rtcd.h.patch b/patches/libvpx_linux_arm64_vp9_rtcd.h.patch new file mode 100644 index 0000000..4ac1698 --- /dev/null +++ b/patches/libvpx_linux_arm64_vp9_rtcd.h.patch @@ -0,0 +1,35 @@ +@@ -41,10 +41,6 @@ int64_t vp9_block_error_neon(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + intptr_t block_size, + int64_t* ssz); +-int64_t vp9_block_error_sve(const tran_low_t* coeff, +- const tran_low_t* dqcoeff, +- intptr_t block_size, +- int64_t* ssz); + RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + intptr_t block_size, +@@ -56,9 +52,6 @@ int64_t vp9_block_error_fp_c(const tran_low_t* coeff, + int64_t vp9_block_error_fp_neon(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + int block_size); +-int64_t vp9_block_error_fp_sve(const tran_low_t* coeff, +- const tran_low_t* dqcoeff, +- int block_size); + RTCD_EXTERN int64_t (*vp9_block_error_fp)(const tran_low_t* coeff, + const tran_low_t* dqcoeff, + int block_size); +@@ -240,13 +233,7 @@ static void setup_rtcd_internal(void) { + (void)flags; + + vp9_block_error = vp9_block_error_neon; +- if (flags & HAS_SVE) { +- vp9_block_error = vp9_block_error_sve; +- } + vp9_block_error_fp = vp9_block_error_fp_neon; +- if (flags & HAS_SVE) { +- vp9_block_error_fp = vp9_block_error_fp_sve; +- } + } + #endif + diff --git a/patches/libvpx_linux_arm64_vpx_dsp_rtcd.h.patch b/patches/libvpx_linux_arm64_vpx_dsp_rtcd.h.patch new file mode 100644 index 0000000..b445a4c --- /dev/null +++ b/patches/libvpx_linux_arm64_vpx_dsp_rtcd.h.patch @@ -0,0 +1,18 @@ +@@ -3106,7 +3106,6 @@ void vpx_subtract_block_neon(int rows, + + uint64_t vpx_sum_squares_2d_i16_c(const int16_t* src, int stride, int size); + uint64_t vpx_sum_squares_2d_i16_neon(const int16_t* src, int stride, int size); +-uint64_t vpx_sum_squares_2d_i16_sve(const int16_t* src, int stride, int size); + RTCD_EXTERN uint64_t (*vpx_sum_squares_2d_i16)(const int16_t* src, + int stride, + int size); +@@ -3720,9 +3719,6 @@ static void setup_rtcd_internal(void) { + vpx_sse = vpx_sse_neon_dotprod; + } + vpx_sum_squares_2d_i16 = vpx_sum_squares_2d_i16_neon; +- if (flags & HAS_SVE) { +- vpx_sum_squares_2d_i16 = vpx_sum_squares_2d_i16_sve; +- } + vpx_variance16x16 = vpx_variance16x16_neon; + if (flags & HAS_NEON_DOTPROD) { + vpx_variance16x16 = vpx_variance16x16_neon_dotprod;