------- Comment #2 from dorit at gcc dot gnu dot org 2008-07-22 10:39 ------- (In reply to comment #1) > One problem is vectorizable_conversion. Is there a way to support > V4DF/V4DI <-> D4SI/V4SF > V8SI <-> V8SF
With the current framework, the only way to support V8SI <-> V8SF is to implement the TARGET_VECTORIZE_BUILTIN_CONVERSION for these modes. There's no way in the current framework to support V4DF <-> V4SI V4DI <-> V4SF because of the single-vector-size assumption. These however would be supported: V4DF <-> V8SI V4DI <-> V8SF by modeling the idioms unpack[u/s]_float_[lo/hi] and vec_pack_[u/s]fix_trunc for the respective modes. I think that in order to really support AVX the vectorizer would need to be extended to consider multiple vector sizes (which would probably involve more than just extending the support for conversions). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36844