[llvm-dev] RFC: Building GlobalISel by default

Quentin Colombet via llvm-dev llvm-dev at lists.llvm.org
Fri Jan 13 17:54:15 PST 2017

Hi all,

Now, four backends (if I am counting right: X86, ARM, AArch64, AMDGPU) are working on bringing-up GlobalISel, I’d like to switch the default of the LLVM_BUILD_GLOBAL_ISEL variable in CMake, such that the framework gets built by default.

** Impact of Flipping the Switch **

* Upsides *

For people developing on GlobalISel, it will:
- Simplify the CMake command to type :)
- Build/Test GlobalISel on all the LLVM bots

For people not developing on GlobalISel, it will:
- Test that GlobalISel still works with your changes (make check will test that for you)
- Allow you to play with it!

Basically flipping the default CMake setting will give access to all the ISel schemes that we have in LLVM, instead of just SDISel and FastISel.

* Downsides *

For people developing on GlobalISel, it will:
- Leave the status as it is now, meaning that mainly only people working on GlobalISel look at the failures of GlobalISel specific bots

For people not developing for GlobalISel, it will:
- Increase the compile time since the GlobalISel framework and the related target specific parts will have to be built
- Increase the size of the binary (depending on what backend you pull)
- Require the setting of an additional CMake variable to disable it (-DLLVM_BUILD_GLOBAL_ISEL=OFF)

What do people think?


More information about the llvm-dev mailing list