]> granicus.if.org Git - llvm/commitdiff
[Cmake] Add an option to build LLVM using the experimental new pass manager
authorRong Xu <xur@google.com>
Fri, 8 Feb 2019 19:31:03 +0000 (19:31 +0000)
committerRong Xu <xur@google.com>
Fri, 8 Feb 2019 19:31:03 +0000 (19:31 +0000)
Add LLVM_USE_NEWPM to build LLVM using the experimental new pass manager.

Differential Revision: http://reviews.llvm.org/D57068

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@353550 91177308-0d34-0410-b5e6-96231b3b80d8

cmake/modules/HandleLLVMOptions.cmake
docs/CMake.rst

index 49db3088bbc4ff3a453968ab1c260a01f14fa2f3..ca53f7f38ee06a16690023652c15811048554f6f 100644 (file)
@@ -784,6 +784,16 @@ if(LLVM_ENABLE_EH AND NOT LLVM_ENABLE_RTTI)
   message(FATAL_ERROR "Exception handling requires RTTI. You must set LLVM_ENABLE_RTTI to ON")
 endif()
 
+option(LLVM_USE_NEWPM "Build LLVM using the experimental new pass manager" Off)
+mark_as_advanced(LLVM_USE_NEWPM)
+if (LLVM_USE_NEWPM)
+  append("-fexperimental-new-pass-manager"
+    CMAKE_CXX_FLAGS
+    CMAKE_C_FLAGS
+    CMAKE_EXE_LINKER_FLAGS
+    CMAKE_SHARED_LINKER_FLAGS)
+endif()
+
 option(LLVM_ENABLE_IR_PGO "Build LLVM and tools with IR PGO instrumentation (deprecated)" Off)
 mark_as_advanced(LLVM_ENABLE_IR_PGO)
 
index eb219c58560b626af042773b15de7933e6f52582..30fa5bc37fa2faed38c91e97986be54b3347feaf 100644 (file)
@@ -582,6 +582,9 @@ LLVM-specific variables
   If enabled, the compiler version check will only warn when using a toolchain
   which is about to be deprecated, instead of emitting an error.
 
+**LLVM_USE_NEWPM**:BOOL
+  If enabled, use the experimental new pass manager.
+
 CMake Caches
 ============