Misc fixes:
1. Clang3.1/3.2 can now compile tests/build/flto in ARM/X86.
Clang still can't compile it in MIPS because ld.gold isn't available
2. Fixed tests/build/warn-noabi/build.sh when 32-bit host tools
aren't present
3. Fixed a typo in tests/run-tests-all.sh
4. Print total fail in tests/device/fenv/jni/test_fenv.c
Change-Id: Iecf919df83a2cf6a23843dd2031aa18c169448ff
diff --git a/tests/build/flto/BROKEN_BUILD b/tests/build/flto/BROKEN_BUILD
index 6578b73..9e3a933 100644
--- a/tests/build/flto/BROKEN_BUILD
+++ b/tests/build/flto/BROKEN_BUILD
@@ -1 +1 @@
-clang3.1 clang3.2 4.4.3
+4.4.3
diff --git a/tests/build/flto/jni/Android.mk b/tests/build/flto/jni/Android.mk
index 4df821b..104076b 100644
--- a/tests/build/flto/jni/Android.mk
+++ b/tests/build/flto/jni/Android.mk
@@ -3,7 +3,16 @@
include $(CLEAR_VARS)
LOCAL_MODULE := flto
LOCAL_SRC_FILES := flto.c
-LOCAL_CFLAGS := -flto
-LOCAL_LDFLAGS := -flto
+
+FLTO_FLAG := -flto
+ifneq ($(filter clang%,$(NDK_TOOLCHAIN_VERSION)),)
+ifeq ($(TARGET_ARCH),mips)
+# clang does LTO via gold plugin, but gold doesn't support MIPS yet
+FLTO_FLAG :=
+endif
+endif
+
+LOCAL_CFLAGS += $(FLTO_FLAG)
+LOCAL_LDFLAGS += $(FLTO_FLAG)
include $(BUILD_EXECUTABLE)
diff --git a/tests/build/warn-noabi/build.sh b/tests/build/warn-noabi/build.sh
index ca47095..d9ba326 100755
--- a/tests/build/warn-noabi/build.sh
+++ b/tests/build/warn-noabi/build.sh
@@ -25,14 +25,23 @@
fi
SYSTEM=$(get_prebuilt_host_tag)
-ARM_GPP=$NDK/toolchains/arm-linux-androideabi-$VERSION/prebuilt/$SYSTEM/bin/arm-linux-androideabi-g++
-
if [ "$SYSTEM" = "windows" ] ; then
+ SYSTEM64=windows-x86_64
NULL="NUL"
else
+ SYSTEM64=${SYSTEM}_64
NULL="/dev/null"
fi
+ARM_GPP=$NDK/toolchains/arm-linux-androideabi-$VERSION/prebuilt/$SYSTEM/bin/arm-linux-androideabi-g++${HOST_EXE}
+if [ ! -f "$ARM_GPP" ]; then
+ ARM_GPP=$NDK/toolchains/arm-linux-androideabi-$VERSION/prebuilt/$SYSTEM64/bin/arm-linux-androideabi-g++${HOST_EXE}
+fi
+if [ ! -f "$ARM_GPP" ]; then
+ echo "ERROR: Can't locate compiler $ARM_GPP"
+ exit 1
+fi
+
OUT=$(echo "#include <stdarg.h>
void foo(va_list v) { }" | $ARM_GPP -x c++ -c -o $NULL - 2>&1)
diff --git a/tests/device/fenv/jni/test_fenv.c b/tests/device/fenv/jni/test_fenv.c
index 4a27af3..cb545e0 100644
--- a/tests/device/fenv/jni/test_fenv.c
+++ b/tests/device/fenv/jni/test_fenv.c
@@ -132,6 +132,6 @@
fesetround_fegetround_FE_UPWARD();
fesetround_fegetround_FE_DOWNWARD();
feclearexcept_fetestexcept();
-
+ printf("total_fail = %d\n", total_fail);
return total_fail == 0 ? 0 : 1;
}
diff --git a/tests/run-tests-all.sh b/tests/run-tests-all.sh
index 73d90ef..282629f 100755
--- a/tests/run-tests-all.sh
+++ b/tests/run-tests-all.sh
@@ -60,7 +60,7 @@
fi
;;
windows*)
- if [ "$ProgramW6432"!="" -a ] ; then
+ if [ "$ProgramW6432" != "" ] ; then
if [ -d "$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/windows-x86_64" ] ; then
if [ -d "$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/windows" ] ; then
TEST_HOST_32BIT=yes