[tree-profiling-branch PATCH] IPA constant propagation

Razya Ladelsky RAZYA@il.ibm.com
Thu Aug 12 07:33:00 GMT 2004


Hello,

Attached is the patch modified according to your suggestions:

This patch implements IPA CP (InterProcedural constant propagation).
The flag fipa-cp enables the IPA CP optimization.
 At this stage IPA CP needs to analyze all of the application's files, as
cloning of methods is not yet supported. This functionality will be 
supported 
shortly.
Therefore, for the moment the option -fipa-no-cloning  should be specified 

in order to perform IPA CP.

To apply the optimization on an application containing 
file1.c, file2.c, file3.c, we should use the command:

gcc -fipa-cp -fipa-no-cloning -combine file1.c file2.c file3.c 

Bootstrap and regression tests successfully passed on x86
and powerpc.

Comments are welcome.

Thanks,
Razya

Changelog Entry: 

2004-08-12   Razya Ladelsky  <razya@il.ibm.com>

        * ipa_prop.c: New File: IPA constant propagation. 
        * ipa_prop.h: New File: Same.
        * Makefile.in (ipa_prop.c, ipa_prop.h): Add new files.
        * common.opt (fipa-cp, fipa-no-cloning): New flags for IPA 
constant
                propagation. 
        * cgraphunit.c (cgraph_optimize, record_call_1): Support for IPA 
constant propagation.



    
 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ipa_prop.c
Type: application/octet-stream
Size: 35060 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20040812/a8887a98/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ipa_prop.h
Type: application/octet-stream
Size: 1909 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20040812/a8887a98/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ipa.diff
Type: application/octet-stream
Size: 6053 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20040812/a8887a98/attachment-0002.obj>


More information about the Gcc-patches mailing list