[LLVMdev] Adding option to LLVM opt to disable a specific pass from command line

Seb babslachem at gmail.com
Fri Dec 9 05:23:18 PST 2011


2011/12/9 Joerg Sonnenberger <joerg at britannica.bec.de>

> On Fri, Dec 09, 2011 at 10:03:37AM +0100, Seb wrote:
> > I think my explanation is not clear, my front-end did NOTt generate
> > 'llvm.memcpy' it generate LL code that after use of LLVM 'opt' get
> > transformed by 'loop-idom' pass into an 'llvm.memcpy' for an overlapping
> > loop:
> >
> > static void
> > t0(int n)
> > {
> >     int i;
> >     for (i=0; i<n; i++)
> >     result[i+1] = result[i];
> > }
>
> Do you really want to assign result[0] to everything?
>
> I wonder how much work it is to each the loop-idiom pass to handle this
> and the case of reverse indices correctly, if result is char *. E.g.
> create either memset or memmove...
>
> Joerg
>

This thread is not to discuss how relevant this example is. I just would
like to know:
a) If people think that adding an option to disable a specific pass is
useful.
b) To discuss implementation details (disable all pass invocations, what to
do when there are dependencies between passes invocations).
c) If I implement it, what's the process to get my change merge with trunk.

Now for my own purpose, I commented out loop-idiom invocation in LLVM 2.9
sources and it worked well. I just wanted to develop something generic that
could benefit LLVM community.

Best Regards
Seb
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111209/41c6f085/attachment.html>


More information about the llvm-dev mailing list