blob: 6f2406845321e5dd4b3e8edd3a729c7b1a363990 [file] [log] [blame]
list(APPEND CPPFLAGS -DHAVE_SIGNED_CHAR)
list(APPEND LDFLAGS -lm)
list(APPEND CFLAGS -Wno-return-type)
macro(test_input run_type)
llvm_test_run(RUN_TYPE ${run_type}
WORKDIR ${CMAKE_CURRENT_BINARY_DIR}/data/${run_type}/input
${run_type}
> ${CMAKE_CURRENT_BINARY_DIR}/data/${run_type}/input/${run_type}.stdout
)
foreach(file IN ITEMS ${run_type}.twf ${run_type}.pl2 ${run_type}.sav ${run_type}.pl1 ${run_type}.pl1 ${run_type}.pin ${run_type}.stdout ${run_type}.sv2 ${run_type}.out)
llvm_test_verify(RUN_TYPE ${run_type} ${FPCMP}
${CMAKE_CURRENT_BINARY_DIR}/data/${run_type}/input/${file}
${BENCHMARK_DIR}/data/${run_type}/output/${file}
)
endforeach()
endmacro()
test_input(test)
test_input(train)
test_input(ref)
llvm_test_executable(${PROG} ${Source})
# The benchmark writes the output where the input files are, so we have to
# copy the data over.
include(CopyDir)
llvm_copy_dir(${PROG} ${CMAKE_CURRENT_BINARY_DIR}/data ${BENCHMARK_DIR}/data)