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]

Re: [PATCH][RFC] Clean up STMT_VINFO_VECTYPE



Richard Guenther <rguenther@suse.de> wrote on 25/02/2010 07:05:10 PM:

> This cleans up the semantic of STMT_VINFO_VECTYPE to be always the
> vector type of the LHS of the statement.  This allows to get rid
> of a lot of vector type constructions in the various vectorization
> routines.  Which makes it way easier for me to add support for
> multiple vector sizes to the vectorizer as I can restrict setting
> vector types to a central analysis place.
>
> The biggest part of the patch is re-ordering of tests in the
> analysis/transform functions where we have to call
> vect_is_simple_use_1 to get the input vector type(s).  This new
> function can now simply look up the definition statement and
> return its STMT_VINFO_VECTYPE, something previously not possible
> (For non-loop related definitions the analysis/transform function
> is still responsible for choosing a proper vector type - but
> that's something most already do or should be easy to add.  In
> the patch I simply fall back to the old method for now)
>
> Thus, this is part 1 of a series to teach the vectorizer about
> AVX 16/32 byte mixed vector sizes.  It's a cleanup that looked
> obvious anyway, too.
>
> Bootstrap and regtest running on x86_64-unknown-linux-gnu.
>
> Does this look reasonable for 4.6?  I'd appreciate testing
> on powerpc in case I missed some paths not excercised by x86_64/i?86.

Looks good to me.
I tested with vectorization testsuite on powerpc. I am now running the
whole testsuite, will let you know if anything goes wrong.

Thanks,
Ira



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]