Skip to content

Instantly share code, notes, and snippets.

@singam-sanjay
Created April 21, 2017 17:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save singam-sanjay/7b6907c9b31385239f62c2e24068c53f to your computer and use it in GitHub Desktop.
Save singam-sanjay/7b6907c9b31385239f62c2e24068c53f to your computer and use it in GitHub Desktop.
Script to test PollyACC in many build configurations
BUILD_TYPE=
is_BUILD_SHARED_LIBS=
is_LLVM_LINK_LLVM_DYLIB=
is_LLVM_POLLY_LINK_INTO_TOOLS=
BUILD_TYPES=("Release" "Debug")
BOOL_VALS_ASC=("OFF" "ON")
BOOL_VALS_DESC=("ON" "OFF")
_options_=""
N=4
set_var() {
BUILD_TYPE=${BUILD_TYPES[ $((($1&8)>>3)) ]}
is_BUILD_SHARED_LIBS=${BOOL_VALS_ASC[ $((($1&4)>>2)) ]}
is_LLVM_LINK_LLVM_DYLIB=${BOOL_VALS_ASC[ $((($1&2)>>1)) ]}
is_LLVM_POLLY_LINK_INTO_TOOLS=${BOOL_VALS_DESC[ $(($1&1)) ]}
}
iter_init=0
iter_max=$((2**$N-1))
print_status() {
iter=$1
echo "iter=$1"
echo $_options_
}
iter=$iter_init
until [ $iter -gt $iter_max ]
do
set_var $iter
is_LLVM_BUILD_LLVM_DYLIB=$is_LLVM_LINK_LLVM_DYLIB
_options_="-DCMAKE_BUILD_TYPE=$BUILD_TYPE -DLLVM_TARGETS_TO_BUILD=\"X86;NVPTX\" -DPOLLY_ENABLE_GPGPU_CODEGEN=ON -DBUILD_SHARED_LIBS=$is_BUILD_SHARED_LIBS -DLLVM_BUILD_LLVM_DYLIB=$is_LLVM_BUILD_LLVM_DYLIB -DLLVM_LINK_LLVM_DYLIB=$is_LLVM_LINK_LLVM_DYLIB -DLLVM_POLLY_LINK_INTO_TOOLS=$is_LLVM_POLLY_LINK_INTO_TOOLS"
print_status $iter;
if [ $is_BUILD_SHARED_LIBS == "ON" ]; then
if [ $is_LLVM_LINK_LLVM_DYLIB == "ON" ]; then
echo "BUILD_SHARED_LIBS=ON and LLVM_LINK_LLVM_DYLIB=ON. Skipping..."
iter=$(($iter+1))
continue;
fi
fi
rm CMakeCache.txt build.ninja
cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DLLVM_TARGETS_TO_BUILD="X86;NVPTX" -DPOLLY_ENABLE_GPGPU_CODEGEN=ON -DBUILD_SHARED_LIBS=$is_BUILD_SHARED_LIBS -DLLVM_BUILD_LLVM_DYLIB=$is_LLVM_BUILD_LLVM_DYLIB -DLLVM_LINK_LLVM_DYLIB=$is_LLVM_LINK_LLVM_DYLIB -DLLVM_POLLY_LINK_INTO_TOOLS=$is_LLVM_POLLY_LINK_INTO_TOOLS ../llvm_src -G Ninja > cmake_config_output
SAVE=$?
if [ $SAVE -ne 0 ]; then
print_status $iter
echo "cmake ERROR"
exit $SAVE
fi
ninja check-polly
SAVE=$?
if [ $SAVE -ne 0 ]; then
print_status $iter
echo "ninja ERROR"
exit $SAVE
fi
iter=$(($iter+1))
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment