[LLVMdev] Interprocedural optimizations in LLVM

Devang Patel dpatel at apple.com
Fri Dec 21 11:45:39 PST 2007


On Dec 21, 2007, at 11:31 AM, naineet at cse.iitb.ac.in wrote:

> Hi Everyone,
>
> Can Someone tell me all the interprocedural optimizations that LLVM  
> 2.1
> supports.

Once you checkout llvm 2.1 sources,

$ cd lib/Transforms/IPO/
$ ls
ArgumentPromotion.cpp		GlobalOpt.cpp			LowerSetJmp.cpp
ConstantMerge.cpp		IPConstantPropagation.cpp	Makefile
DeadArgumentElimination.cpp	IndMemRemoval.cpp		PruneEH.cpp
DeadTypeElimination.cpp		InlineSimple.cpp		RaiseAllocations.cpp
Debug				Inliner.cpp			SimplifyLibCalls.cpp
ExtractFunction.cpp		Internalize.cpp			StripDeadPrototypes.cpp
GlobalDCE.cpp			LoopExtractor.cpp		StripSymbols.cpp
$

In llvm 2.1 sources, there is incomplete document describing  
optimization passes that may also be able to answer your query.
	docs/Passes.html

Yet another alternative is to build llvm optimizer tool 'opt' and do
	$ opt --help
to get list of optimization passes.

LLVM Documentation page, http://llvm.org/docs/, has lots of  
information on how to build, use and extend LLVM.

-
Devang



More information about the llvm-dev mailing list