This is the mail archive of the gcc-bugs@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]

[Bug tree-optimization/36844] Vectorizer doesn't support INT<->FP conversions with different size



------- 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


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