Michael Kruse via llvm-dev
2019-Oct-25 22:52 UTC
[llvm-dev] RFC: Adding IR Transformation examples/tutorial code to llvm-project
Am Fr., 25. Okt. 2019 um 17:32 Uhr schrieb Florian Hahn <florian_hahn at apple.com>:>> 2.Chris Bieneman seeks to simplify the cmake build system, including >> significantly reducing the number of configuration parameters and >> making "make all" really make everything, including examples. This >> would make the overall configure process slower even when not >> interested in the tutorials. > > > The suggested approach does not introduce any new options/variables, it just adds an additional definition, if the existing LLVM_BUILD_EXAMPLES=On. So this should not interfere with reducing the overall options. Whatever solution will be applied to all examples should also work for the IR pass examples.I think he would like to remove LLVM_BUILD_EXAMPLES altogether. That is, any "cmake" will execute any CMakeLists.txt, "make all" will always build TutorialSimplyCFG and any execution of `opt` will call initializeExampleIRTransforms. I am in favor of adding (more) tutorials to the repository, joint trying to point out items to consider. Michael
David Greene via llvm-dev
2019-Oct-28 14:42 UTC
[llvm-dev] RFC: Adding IR Transformation examples/tutorial code to llvm-project
Michael Kruse via llvm-dev <llvm-dev at lists.llvm.org> writes:> Am Fr., 25. Okt. 2019 um 17:32 Uhr schrieb Florian Hahn > <florian_hahn at apple.com>: >>> 2.Chris Bieneman seeks to simplify the cmake build system, including >>> significantly reducing the number of configuration parameters and >>> making "make all" really make everything, including examples. This >>> would make the overall configure process slower even when not >>> interested in the tutorials. >> >> >> The suggested approach does not introduce any new options/variables, it just adds an additional definition, if the existing LLVM_BUILD_EXAMPLES=On. So this should not interfere with reducing the overall options. Whatever solution will be applied to all examples should also work for the IR pass examples. > > I think he would like to remove LLVM_BUILD_EXAMPLES altogether. That > is, any "cmake" will execute any CMakeLists.txt, "make all" will > always build TutorialSimplyCFG and any execution of `opt` will call > initializeExampleIRTransforms.Wouldn't this help to keep the examples up-to-date? If they fail to build due to API changes we'd know pretty quick. -David
Florian Hahn via llvm-dev
2019-Oct-28 16:14 UTC
[llvm-dev] RFC: Adding IR Transformation examples/tutorial code to llvm-project
> On Oct 28, 2019, at 14:42, David Greene <greened at obbligato.org> wrote: > > Michael Kruse via llvm-dev <llvm-dev at lists.llvm.org> writes: > >> Am Fr., 25. Okt. 2019 um 17:32 Uhr schrieb Florian Hahn >> <florian_hahn at apple.com>: >>>> 2.Chris Bieneman seeks to simplify the cmake build system, including >>>> significantly reducing the number of configuration parameters and >>>> making "make all" really make everything, including examples. This >>>> would make the overall configure process slower even when not >>>> interested in the tutorials. >>> >>> >>> The suggested approach does not introduce any new options/variables, it just adds an additional definition, if the existing LLVM_BUILD_EXAMPLES=On. So this should not interfere with reducing the overall options. Whatever solution will be applied to all examples should also work for the IR pass examples. >> >> I think he would like to remove LLVM_BUILD_EXAMPLES altogether. That >> is, any "cmake" will execute any CMakeLists.txt, "make all" will >> always build TutorialSimplyCFG and any execution of `opt` will call >> initializeExampleIRTransforms. > > Wouldn't this help to keep the examples up-to-date? If they fail to > build due to API changes we'd know pretty quick.Yes that would be great! As mentioned earlier, I think the decision on unconditionally building the (existing) examples does not really depend on whether we add more examples. Until then, I think there are bots that build with examples enabled (and if not I’ll try to get one doing that). Cheers, Florian