Index: test-suite/trunk/Bitcode/CMakeLists.txt =================================================================== --- test-suite/trunk/Bitcode/CMakeLists.txt +++ test-suite/trunk/Bitcode/CMakeLists.txt @@ -1,6 +1,6 @@ if(NOT TEST_SUITE_BENCHMARKING_ONLY) llvm_add_subdirectories(Regression) - if(ARCH STREQUAL "x86") + if(ARCH STREQUAL "x86" OR ARCH STREQUAL "AArch64") llvm_add_subdirectories(simd_ops) endif() endif() Index: test-suite/trunk/Bitcode/simd_ops/CMakeLists.txt =================================================================== --- test-suite/trunk/Bitcode/simd_ops/CMakeLists.txt +++ test-suite/trunk/Bitcode/simd_ops/CMakeLists.txt @@ -11,7 +11,7 @@ string(REGEX REPLACE ".[cp]+$" "" pathbc ${sourcebc}) string(REGEX REPLACE ".*/" "" namebc ${pathbc}) string(REPLACE "." "" namebc ${namebc}) - set(Source ${CMAKE_CURRENT_SOURCE_DIR}/simd_ops.cpp ${CMAKE_CURRENT_SOURCE_DIR}/simd_op_check_runtime.bc ${CMAKE_CURRENT_SOURCE_DIR}/${ARCH}_tests/${namebc}.bc ${CMAKE_CURRENT_SOURCE_DIR}/${ARCH}_scalar_tests/scalar_${namebc}.bc) + set(Source ${CMAKE_CURRENT_SOURCE_DIR}/simd_ops.cpp ${CMAKE_CURRENT_SOURCE_DIR}/${ARCH}_halide_runtime.bc ${CMAKE_CURRENT_SOURCE_DIR}/${ARCH}_tests/${namebc}.bc ${CMAKE_CURRENT_SOURCE_DIR}/${ARCH}_scalar_tests/scalar_${namebc}.bc) set(PROG simd_ops_${namebc}) llvm_multisource() endforeach() Index: test-suite/trunk/Bitcode/simd_ops/simd_ops.cpp =================================================================== --- test-suite/trunk/Bitcode/simd_ops/simd_ops.cpp +++ test-suite/trunk/Bitcode/simd_ops/simd_ops.cpp @@ -16,6 +16,12 @@ #endif } +#if defined(__aarch64__) +#define FACTOR 5 +#else +#define FACTOR 1 +#endif + template T rand_value() { return (T)(rand() * 0.125) - 100; @@ -65,7 +71,7 @@ seed = time(NULL); srand (seed); } - int W = 256, H = 100; + int W = 256*FACTOR, H = 100; // Make some input buffers buffer_t bufs[] = { make_buffer(W, H), @@ -79,6 +85,7 @@ make_buffer(W, H), make_buffer(W, H) }; + W/=FACTOR; int NO = 2; buffer_t out[] = {