[LLVMdev] How to disable pass grouping(scheduling)

John Criswell criswell at illinois.edu
Wed Jun 29 08:05:49 PDT 2011


On 6/28/11 11:35 PM, kecheng at cecs.pdx.edu wrote:
> Hi all,
>
> Llvm can automatically group a list passes. I want to do some
> experiment to see the difference between grouping and non-grouping
> execution.
> Considering the following example, if I want to apply transformation
> A, B and C. The execution order is:
>     A.doInitialization();
>     B.doInitialization();
>     C.doInitialization();
>     A.runOnFunction();
>     B.runOnFunction();
>     C.runOnFunction();
>     A.doInitialization();
>     B.doInitialization();
>     C.doInitialization();
>
> Is it possible to disable the grouping? Make it execute as:
>
>     A.doInitialization();
>     A.runOnFunction();
>     A.doInitialization();
>     B.doInitialization();
>     B.runOnFunction();
>     B.doInitialization();
>     C.doInitialization();
>     C.runOnFunction();
>     C.doInitialization();
>
> Thanks,

You can run opt three times (one for each pass A, B, and C), piping them 
together so that the output of one is the input to the next.

-- John T.

> Kecheng
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list