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 enhance dse pass to delete dead stores when the previous implementation failed due to alias uncertainty. For example: S[5].x = 0; S[5].y = 0; S[5].x = x; S[5].y = y; Previously S[5].y = 0; failed to be eliminated. This patch fixes this problem by walking the virtual def-use chain to find the stmt that uses S[5].y. Bootstrap and tested on PPC. OK for autovect branch? Thanks, Revital 2007-03-19 Revital Eres <eres@il.ibm.com> * tree-ssa-dse.c (get_use_of_stmt_lhs): New function which walks virtual def-use chains to find redundant stores. (dse_optimize_stmt): Call it. * testsuite/gcc.dg/store_dse_test.c: New test. * testsuite/gcc.dg/dse_test.c: New test. (See attached file: dse_patch_19_3.txt)(See attached file: store_dse_test.txt)(See attached file: dse_test.txt)
Attachment:
dse_patch_19_3.txt
Description: Text document
Attachment:
store_dse_test.txt
Description: Text document
Attachment:
dse_test.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |