This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hello, This patch implements Interprocedural constant propagation (IPCP). The aim of interprocedural constant propagation (IPCP) is to find which formal parameters have the same constant value in each invocation throughout the program. The flag fipa-cp enables the IPCP optimization. This is the first of two patches. This first patch of IPCP analyzes only local methods (which are not externally visible and whose address is not taken), as annotating the method with the formal-is-a-constant info (in the insert/transformation stage of IPCP) is not safe for non local methods. The second patch will include method versioning, and IPCP use of it, and therefore will include analysis of all methods in the program, without any restrictions. I added three files relevant to IPCP: ipcp.c contains IPCP specific functionality. ipa-prop.c and ipa-prop.h contain functions/structures that can be also used by other IPA data flow optimizations. Bootstrap and regression tests successfully passed on Linux PowerPC. Comments are welcome. Thanks, Razya
Attachment:
changelog.razya
Description: Binary data
Attachment:
diff_
Description: Binary data
Attachment:
ipcp.c
Description: Binary data
Attachment:
ipa-prop.h
Description: Binary data
Attachment:
ipa-prop.c
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |