OSDN Git Service

PR tree-optimization/49038
authorirar <irar@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 4 Jun 2011 09:20:00 +0000 (09:20 +0000)
committerirar <irar@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 4 Jun 2011 09:20:00 +0000 (09:20 +0000)
commit57c28e9c809ad3f27fe0743eabb030e8ee8b2af4
tree523a6aae16b8fc708ad8a578541d38a2d6ab1906
parent172f7b568defea9e722d2a8181810c61747b765d
    PR tree-optimization/49038
        * tree-vect-loop-manip.c (vect_generate_tmps_on_preheader):
        Ensure at least one epilogue iteration if required by data
        accesses with gaps.
        * tree-vectorizer.h (struct _loop_vec_info): Add new field
        to mark loops that require peeling for gaps.
        * tree-vect-loop.c (new_loop_vec_info): Initialize new field.
        (vect_get_known_peeling_cost): Take peeling for gaps into
        account.
        (vect_transform_loop): Generate epilogue if required by data
        access with gaps.
        * tree-vect-data-refs.c (vect_analyze_group_access): Mark the
        loop as requiring an epilogue if there are gaps in the end of
        the strided group.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@174635 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/vect/pr49038.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c [new file with mode: 0644]
gcc/tree-vect-data-refs.c
gcc/tree-vect-loop-manip.c
gcc/tree-vect-loop.c
gcc/tree-vectorizer.h