1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-18 10:32:48 +02:00

[CMake] Change -DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=off to -DLLVM_ENABLE_NEW_PASS_MANAGER=off

LLVM_ENABLE_NEW_PASS_MANAGER is set to ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER, so
-DLLVM_ENABLE_NEW_PASS_MANAGER=off has no effect.

Change the cache variable to LLVM_ENABLE_NEW_PASS_MANAGER instead.
A user opting out the new PM needs to switch from
-DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=off to
-DLLVM_ENABLE_NEW_PASS_MANAGER=off.

Also give a warning that -DLLVM_ENABLE_NEW_PASS_MANAGER=off is deprecated.

Reviewed By: aeubanks, phosek

Differential Revision: https://reviews.llvm.org/D108775

(cherry picked from commit a42bd1b560524905d3b9aebcb658cf6dc9521d26)
This commit is contained in:
Fangrui Song 2021-08-26 14:25:31 -07:00
parent 79ff6e4b2d
commit ab550c798f
2 changed files with 7 additions and 6 deletions

View File

@ -702,8 +702,13 @@ else()
endif() endif()
option(LLVM_ENABLE_PLUGINS "Enable plugin support" ${LLVM_ENABLE_PLUGINS_default}) option(LLVM_ENABLE_PLUGINS "Enable plugin support" ${LLVM_ENABLE_PLUGINS_default})
set(ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER TRUE CACHE BOOL set(LLVM_ENABLE_NEW_PASS_MANAGER TRUE CACHE BOOL
"Enable the new pass manager by default.") "Enable the new pass manager by default.")
if(NOT LLVM_ENABLE_NEW_PASS_MANAGER)
message(WARNING "Using the legacy pass manager for the optimization pipeline"
" is deprecated. The functionality will degrade over time and"
" be removed in a future release.")
endif()
include(HandleLLVMOptions) include(HandleLLVMOptions)
@ -833,10 +838,6 @@ if (NOT TENSORFLOW_AOT_PATH STREQUAL "")
set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS tf_xla_runtime) set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS tf_xla_runtime)
endif() endif()
# Keep the legacy CMake flag ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER for
# compatibility.
set(LLVM_ENABLE_NEW_PASS_MANAGER ${ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER})
# Configure the three LLVM configuration header files. # Configure the three LLVM configuration header files.
configure_file( configure_file(
${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/config.h.cmake ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/config.h.cmake

View File

@ -449,7 +449,7 @@ with the legacy PM.
For the optimization pipeline, the new PM is the default PM. The legacy PM is For the optimization pipeline, the new PM is the default PM. The legacy PM is
available for the optimization pipeline either by setting the CMake flag available for the optimization pipeline either by setting the CMake flag
``-DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=OFF`` when building LLVM, or by ``-DLLVM_ENABLE_NEW_PASS_MANAGER=OFF`` when building LLVM, or by
various compiler/linker flags, e.g. ``-flegacy-pass-manager`` for ``clang``. various compiler/linker flags, e.g. ``-flegacy-pass-manager`` for ``clang``.
There will be efforts to deprecate and remove the legacy PM for the There will be efforts to deprecate and remove the legacy PM for the