shithub: mp3dec

Download patch

ref: a8f943890e938e9bb91a854be561f10822b807b3
parent: f3de211d911e8cdd0ed105efb74b70d54628af13
author: lieff <[email protected]>
date: Sat Feb 17 14:55:39 EST 2018

add powerpc testing

--- a/.travis.yml
+++ b/.travis.yml
@@ -7,9 +7,17 @@
       - libnewlib-arm-none-eabi
       - gcc-4.8-multilib
       - gcc-4.8-aarch64-linux-gnu
+      - gcc-4.8-powerpc-linux-gnu
+      - gcc-4.8-powerpc64-linux-gnu
       - gcc-aarch64-linux-gnu
+      - gcc-powerpc-linux-gnu
+      - gcc-powerpc64-linux-gnu
       - libc6-arm64-cross
+      - libc6-powerpc-cross
+      - libc6-ppc64-cross
       - libc6-dev-arm64-cross
+      - libc6-dev-powerpc-cross
+      - libc6-dev-ppc64-cross
       - qemu
 
 os:
--- a/minimp3_test.c
+++ b/minimp3_test.c
@@ -123,7 +123,7 @@
 }
 #else
 
-#if defined(__arm__) || defined(__aarch64__)
+#if defined(__arm__) || defined(__aarch64__) || defined(__PPC__)
 int main2(int argc, char *argv[]);
 int main2(int argc, char *argv[])
 #else
@@ -179,7 +179,7 @@
     return 0;
 }
 
-#if defined(__arm__) || defined(__aarch64__)
+#if defined(__arm__) || defined(__aarch64__) || defined(__PPC__)
 static const char *g_files[] = {
     "vectors/ILL2_center2.bit",
     "vectors/ILL2_dual.bit",
--- a/scripts/build.sh
+++ b/scripts/build.sh
@@ -6,6 +6,7 @@
 
 set -e
 
+echo testing coverage x86 w sse...
 gcc -coverage -O0 -m32 -std=c89 -msse2 -DMINIMP3_TEST -DMINIMP3_NO_WAV -o minimp3 minimp3_test.c -lm
 scripts/test.sh
 set +e
@@ -14,28 +15,45 @@
 set -e
 gcov minimp3_test.c
 
+echo testing x86 w/o sse...
 gcc -O2 -m32 -std=c89 -Wall -Wextra -Wmissing-prototypes -Werror -fno-asynchronous-unwind-tables -fno-stack-protector \
 -ffunction-sections -fdata-sections -Wl,--gc-sections -o minimp3 minimp3_test.c -lm
 scripts/test.sh
 
+echo testing x64...
 gcc -O2 -std=c89 -Wall -Wextra -Wmissing-prototypes -Werror -fno-asynchronous-unwind-tables -fno-stack-protector \
 -ffunction-sections -fdata-sections -Wl,--gc-sections -o minimp3 minimp3_test.c -lm
 scripts/test.sh
 
+echo testing arm w/o neon...
 arm-none-eabi-gcc -O2 -std=c89 -Wall -Wextra -Wmissing-prototypes -Werror -fno-asynchronous-unwind-tables -fno-stack-protector \
 -mthumb -mcpu=cortex-m4 \
 -ffunction-sections -fdata-sections -Wl,--gc-sections -o minimp3_arm minimp3_test.c --specs=rdimon.specs -lm
 qemu-arm ./minimp3_arm
 
+echo testing arm w neon...
 arm-none-eabi-gcc -O2 -std=c89 -Wall -Wextra -Wmissing-prototypes -Werror -fno-asynchronous-unwind-tables -fno-stack-protector \
 -marm -mcpu=cortex-a15 -mfpu=neon -mfloat-abi=softfp \
 -ffunction-sections -fdata-sections -Wl,--gc-sections -o minimp3_arm minimp3_test.c --specs=rdimon.specs -lm
 qemu-arm ./minimp3_arm
 
+echo testing arm64...
 aarch64-linux-gnu-gcc -O2 -std=c89 -Wall -Wextra -Wmissing-prototypes -Werror -fno-asynchronous-unwind-tables -fno-stack-protector \
 -static -march=armv8-a \
 -ffunction-sections -fdata-sections -Wl,--gc-sections -o minimp3_arm minimp3_test.c -lm
 qemu-aarch64 ./minimp3_arm
+
+echo testing powerpc...
+powerpc-linux-gnu-gcc -O2 -std=c89 -Wall -Wextra -Wmissing-prototypes -Werror -fno-asynchronous-unwind-tables -fno-stack-protector \
+-static \
+-ffunction-sections -fdata-sections -Wl,--gc-sections -o minimp3_ppc minimp3_test.c -lm
+qemu-ppc ./minimp3_ppc
+
+echo testing powerpc64...
+powerpc64-linux-gnu-gcc -O2 -std=c89 -Wall -Wextra -Wmissing-prototypes -Werror -fno-asynchronous-unwind-tables -fno-stack-protector \
+-static \
+-ffunction-sections -fdata-sections -Wl,--gc-sections -o minimp3_ppc minimp3_test.c -lm
+qemu-ppc64 ./minimp3_ppc
 
 if [ ! "$TRAVIS" = "true" ]; then
 rm emmintrin.h.gcov minimp3_arm minimp3_test.gcda minimp3_test.gcno minimp3_test.c.gcov xmmintrin.h.gcov