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] |
Hi, With this patch a data-ref is marked as unconditionally read or written also if its adjacent field is read or written unconditionally in the loop. My concern is that this is not safe enough, even though the fields have to be non-pointers and non-aggregates, and this optimization is applied only with -ftree-loop-if-convert-stores flag. Bootstrapped on powerpc64-suse-linux and tested on x86_64-suse-linux. OK for trunk? Thanks, Ira ChangeLog: * tree-if-conv.c (memrefs_read_or_written_unconditionally): Return true if an adjacent field of the data-ref is accessed unconditionally. testsuite/ChangeLog: * gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c: New test. * gcc.dg/vect/vect.exp: Run if-cvt-stores-vect* tests with -ftree-loop-if-convert-stores.
Attachment:
if-cvt.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |