diff options
| author | Michal Gorny <mgorny@gentoo.org> | 2017-02-08 12:02:48 +0000 |
|---|---|---|
| committer | Michal Gorny <mgorny@gentoo.org> | 2017-02-08 12:02:48 +0000 |
| commit | 221532c00a64c8a38adb74bca1df823ce374e2be (patch) | |
| tree | 65f24077e2d6a2458371cb58840f4d80b653937a | |
| parent | fecdb36f9274b27ad534c9ff48159c9144de7c58 (diff) | |
| download | bcm5719-llvm-221532c00a64c8a38adb74bca1df823ce374e2be.tar.gz bcm5719-llvm-221532c00a64c8a38adb74bca1df823ce374e2be.zip | |
[test] #ifdef new builtin tests for __arm__ platform
Add an #if that excludes the newly added aeabi* tests on non-ARM
platforms. This is consistent with other ARM tests, and aims to make
running builtin tests easier. Lacking a proper infrastructure to run
tests selectively, it is more convenient if we do not have to implement
directory-platform exclusions and can just rely on tests compiling to
no-op on other platforms.
Differential Revision: https://reviews.llvm.org/D29708
llvm-svn: 294438
3 files changed, 18 insertions, 0 deletions
diff --git a/compiler-rt/test/builtins/Unit/arm/aeabi_idivmod_test.c b/compiler-rt/test/builtins/Unit/arm/aeabi_idivmod_test.c index ae5c510c8c1..c732e4ba439 100644 --- a/compiler-rt/test/builtins/Unit/arm/aeabi_idivmod_test.c +++ b/compiler-rt/test/builtins/Unit/arm/aeabi_idivmod_test.c @@ -14,6 +14,7 @@ #include "int_lib.h" #include <stdio.h> +#if __arm__ // Based on divmodsi4_test.c extern du_int __aeabi_idivmod(si_int a, si_int b); @@ -38,10 +39,12 @@ int test__aeabi_idivmod(si_int a, si_int b, return 0; } +#endif int main() { +#if __arm__ if (test__aeabi_idivmod(0, 1, 0, 0)) return 1; if (test__aeabi_idivmod(0, -1, 0, 0)) @@ -69,6 +72,9 @@ int main() return 1; if (test__aeabi_idivmod(0x80000007, 8, 0xf0000001, -1)) return 1; +#else + printf("skipped\n"); +#endif return 0; } diff --git a/compiler-rt/test/builtins/Unit/arm/aeabi_uidivmod_test.c b/compiler-rt/test/builtins/Unit/arm/aeabi_uidivmod_test.c index 8bc5fc9c80b..81d5e0e1f8f 100644 --- a/compiler-rt/test/builtins/Unit/arm/aeabi_uidivmod_test.c +++ b/compiler-rt/test/builtins/Unit/arm/aeabi_uidivmod_test.c @@ -14,6 +14,7 @@ #include "int_lib.h" #include <stdio.h> +#if __arm__ // Based on udivmodsi4_test.c extern du_int __aeabi_uidivmod(su_int a, su_int b); @@ -38,10 +39,12 @@ int test__aeabi_uidivmod(su_int a, su_int b, return 0; } +#endif int main() { +#if __arm__ if (test__aeabi_uidivmod(0, 1, 0, 0)) return 1; @@ -56,6 +59,9 @@ int main() if (test__aeabi_uidivmod(0x80000003, 8, 0x10000000, 3)) return 1; +#else + printf("skipped\n"); +#endif return 0; } diff --git a/compiler-rt/test/builtins/Unit/arm/aeabi_uldivmod_test.c b/compiler-rt/test/builtins/Unit/arm/aeabi_uldivmod_test.c index bf6b18a3302..6be932058cd 100644 --- a/compiler-rt/test/builtins/Unit/arm/aeabi_uldivmod_test.c +++ b/compiler-rt/test/builtins/Unit/arm/aeabi_uldivmod_test.c @@ -14,6 +14,7 @@ #include "int_lib.h" #include <stdio.h> +#if __arm__ // Based on udivmoddi4_test.c COMPILER_RT_ABI void /* __value_in_regs */ __aeabi_uldivmod(du_int a, du_int b); @@ -20637,14 +20638,19 @@ du_int tests[][4] = {0xFFFFFFFFFFFFFFFFuLL, 0xFFFFFFFFFFFFFFFEuLL, 0x0000000000000001uLL, 0x0000000000000001uLL}, {0xFFFFFFFFFFFFFFFFuLL, 0xFFFFFFFFFFFFFFFFuLL, 0x0000000000000001uLL, 0x0000000000000000uLL} }; +#endif int main() { +#if __arm__ const unsigned N = sizeof(tests) / sizeof(tests[0]); unsigned i; for (i = 0; i < N; ++i) if (test_aeabi_uldivmod(tests[i][0], tests[i][1], tests[i][2], tests[i][3])) return 1; +#else + printf("skipped\n"); +#endif return 0; } |

