[LLVMdev] O3 passes

Duncan Sands baldrick at free.fr
Tue Apr 28 02:26:39 PDT 2009


Hi Ryan,

> Thanks for the help.  When I run the following (where $llvm is the path 
> to my llvm installation):
> 
> $llvm/bin/llvm-gcc -c -o - -O1 tmp.c -emit-llvm -mllvm 
> --disable-llvm-optzns | $llvm/bin/opt -raiseallocs
> 
> I get the following error:
> 
> cc1: error: unrecognized command line option "-fdisable-llvm-optzns"

I think this is a bug in 2.5 that was fixed in svn.  Try running
at -O0 and emit the -mllvm --disable-llvm-optzns part.

Ciao,

Duncan.

> 
> I am running llvm 2.5.  I performed a 
> $llvm/libexec/gcc/i686-pc-linux-gnu/4.2.1/cc1 --help and didn't see 
> -fdisable-llvm-optzns or anything similar.  Do you know what might be 
> going on?
> 
> Thanks,
> Ryan
> 
> 
> Duncan Sands wrote:
> > On Tuesday 28 April 2009 09:19:19 am Ryan M. Lefever wrote:
> >> Can I specify passes that I want run directly to llvm-gcc?  I don't want 
> >> all of -O3, for example.  I tried llvm-gcc -raiseallocs ..., but that 
> >> didn't work.  I also tried running cc1 directly and it didn't take 
> >> -raiseallocs as a parameter either.
> > 
> > You are better off run passes explicitly using opt.  Try this:
> >   llvm-gcc -c -o - -O1 my_proc.c -emit-llvm -mllvm --disable-llvm-optzns | opt list_of_passes
> > Passing -O1 to llvm-gcc means that gcc will perform constant folding and
> > some other small optimizations.  Passing -emit-llvm means that LLVM bitcode
> > is produced, suitable for piping to opt.  -mllvm --disable-llvm-optzns means
> > that the LLVM optimizers will not be run.
> > 
> > Ciao,
> > 
> > Duncan.
> _______________________________________________
> 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