[llvm-dev] RFC: Adding IR Transformation examples/tutorial code to llvm-project

Florian Hahn via llvm-dev llvm-dev at lists.llvm.org
Fri Oct 25 15:31:25 PDT 2019

Thanks for taking a look! Eric and David beat me to responding. Below are a few additional thoughts in a similar direction.

> On 25 Oct 2019, at 14:48, David Blaikie <dblaikie at gmail.com> wrote:
> On Fri, Oct 25, 2019 at 2:43 PM Michael Kruse via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
> I like the idea and already discussed it with Kit Barton.
> Two concerns that I had:
> 1. Keeping them in-tree requires them to be up-to-date, a potential
> additional maintenance burden. This might be what we want, but I get
> less enthusiastic when thinking about maintaining all tutorials ever
> given at any conference during the last xx years without having gone
> through a review process.
> As with any code in the codebase, yeah, pre or post commit review seems good & if they end up bitrotting/becoming less relevant/diverge significantly from the tutorial content (written, video, whatever there is) I think it's fine to delete them. Same as we'd do with tests. (I think they're sort of like tests, really)

I think that would be great policy. 

IMO, the examples should go through reviews as well and for any changes that break the examples, I think it is reasonable to expect the author to fix them, similar to breaking other parts of LLVM.

But  it might be unreasonable to expect people to also update accompanying material (e.g. a write up), except for trivial API changes. As David suggested, if they diverge too much, we can remove them (or try to find someone who is interested in updating them).

> 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.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20191025/b9b0f202/attachment.html>

More information about the llvm-dev mailing list