[LLVMdev] proposed patch to default to isl-only polly
Jack Howarth
howarth at bromo.med.uc.edu
Tue Nov 19 11:50:50 PST 2013
Tobias,
Can we add something like the following to polly 3.4?
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (revision 195142)
+++ CMakeLists.txt (working copy)
@@ -81,9 +81,14 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PAT
FIND_PACKAGE(Isl REQUIRED)
FIND_PACKAGE(Gmp REQUIRED)
-FIND_PACKAGE(Cloog)
FIND_PACKAGE(Pluto)
+option(POLLY_USE_CLOOG "Build Polly with Cloog support" OFF)
+if (POLLY_USE_CLOOG)
+ # Build Cloog support in Polly (default is ISL-only).
+ FIND_PACKAGE(Cloog)
+endif(POLLY_USE_CLOOG)
+
option(POLLY_ENABLE_GPGPU_CODEGEN "Enable GPGPU code generation feature" OFF)
if (POLLY_ENABLE_GPGPU_CODEGEN)
# Do not require CUDA, as GPU code generation test cases can be run without
I have tested this on x86_64-apple-darwin12 with cloog 0.18.1 and isl 0.12.1
installed and it works fine. The default build of Polly is isl-only as expected.
% otool -L /sw/opt/llvm-3.4/lib/LLVMPolly.so
/sw/opt/llvm-3.4/lib/LLVMPolly.so:
/sw/lib/libisl.10.dylib (compatibility version 13.0.0, current version 13.1.0)
/sw/lib/gmp5/libgmp.10.dylib (compatibility version 12.0.0, current version 12.3.0)
/sw/lib/ncurses/libncurses.5.dylib (compatibility version 5.0.0, current version 5.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0)
[100%] Running polly regression tests
Testing Time: 2.23s
Expected Passes : 157
Expected Failures : 23
Unsupported Tests : 84
[100%] Built target check-polly
Only when -DPOLLY_USE_CLOOG=ON is passed to cmake does Polly build against cloog
as well.
% otool -L /sw/opt/llvm-3.4/lib/LLVMPolly.so
/sw/opt/llvm-3.4/lib/LLVMPolly.so:
/sw/lib/libisl.10.dylib (compatibility version 13.0.0, current version 13.1.0)
/sw/lib/gmp5/libgmp.10.dylib (compatibility version 12.0.0, current version 12.3.0)
/sw/lib/libcloog-isl.4.dylib (compatibility version 5.0.0, current version 5.0.0)
/sw/lib/ncurses/libncurses.5.dylib (compatibility version 5.0.0, current version 5.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0)
[100%] Running polly regression tests
Testing Time: 2.98s
Expected Passes : 233
Expected Failures : 23
Unsupported Tests : 8
[100%] Built target check-polly
Thanks in advance with any help in getting a change like this in to polly 3.4.
Jack
-------------- next part --------------
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (revision 195142)
+++ CMakeLists.txt (working copy)
@@ -81,9 +81,14 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PAT
FIND_PACKAGE(Isl REQUIRED)
FIND_PACKAGE(Gmp REQUIRED)
-FIND_PACKAGE(Cloog)
FIND_PACKAGE(Pluto)
+option(POLLY_USE_CLOOG "Build Polly with Cloog support" OFF)
+if (POLLY_USE_CLOOG)
+ # Build Cloog support in Polly (default is ISL-only).
+ FIND_PACKAGE(Cloog)
+endif(POLLY_USE_CLOOG)
+
option(POLLY_ENABLE_GPGPU_CODEGEN "Enable GPGPU code generation feature" OFF)
if (POLLY_ENABLE_GPGPU_CODEGEN)
# Do not require CUDA, as GPU code generation test cases can be run without
More information about the llvm-dev
mailing list