This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] Vectorize conversions directly
- From: Dmitry Plotnikov <dplotnikov at ispras dot ru>
- To: gcc-patches at gcc dot gnu dot org
- Cc: rearnsha at arm dot com, IRAR at il dot ibm dot com, dm at ispras dot ru
- Date: Wed, 24 Nov 2010 18:23:08 +0300
- Subject: [PATCH] Vectorize conversions directly
Hi,
This patch enables vector conversions for ARM NEON architecture. In its
current state vectorizer can't handle type conversions in the hottest
loop of libmp3lame on NEON since its backend doesn't have appropriate
builtins for type conversion. For x86_64 and rs6000 architectures that
also can vectorize conversions the default behavior is retained. We
have rewritten condition in vectorizable_conversion() in
tree-vect-stmts.c for the case of NONE modifier. Now It first looks in
convert_optab for suitable operation and then in builtins. It's hard to
make such fix in arm backend, because neon builtins are not saved and
enumerated as it's done for x86_64 and rs6000. Bootstrapped and
regtested on x86_64 without any regressions.
Ok for trunk? 4.7?