[llvm-commits] CVS: llvm/lib/Transforms/IPO/GlobalConstifier.cpp

Reid Spencer reid at x10sys.com
Wed Oct 6 23:01:06 PDT 2004


Chris Lattner wrote:

> Changes in directory llvm/lib/Transforms/IPO:
> 
> GlobalConstifier.cpp updated: 1.9 -> 1.10
> ---
> Log message:
> 
> * Rename pass to globalopt, since we do more than just constify
> * Instead of handling dead functions specially, just nuke them.
> * Be more aggressive about cleaning up after constification, in 
>   particular, handle getelementptr instructions and constantexprs.
> * Be a little bit more structured about how we process globals.
> 
> *** Delete globals that are only stored to, and never read.  These are
>     clearly not useful, so they should go.  This implements deadglobal.llx

Are you sure about that? What if the global is a machine register in a device 
driver. Its side effect could be something outside the program. I wouldn't make 
this assumption, especially if the global is "volatile"

> 
> This last one triggers quite a few times.  In particular, 2208 in the
> external tests, 1865 of which are in 252.eon.  This shrinks eon from
> 1995094 to 1732341 bytes of bytecode.
> 
> 




More information about the llvm-commits mailing list