summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGExprComplex.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2019-02-21 20:40:39 +0000
committerSanjay Patel <spatel@rotateright.com>2019-02-21 20:40:39 +0000
commit234a5e8ea422bb97c2b15848fccf5c396023b729 (patch)
tree4173a07bb83a326be0f269bbb8dc4796a2507307 /clang/lib/CodeGen/CGExprComplex.cpp
parente497f3e4cdec3c3c362f9ce11ed656c2017d92ad (diff)
downloadbcm5719-llvm-234a5e8ea422bb97c2b15848fccf5c396023b729.tar.gz
bcm5719-llvm-234a5e8ea422bb97c2b15848fccf5c396023b729.zip
[x86] vectorize more cast ops in lowering to avoid register file transfers
This is a follow-up to D56864. If we're extracting from a non-zero index before casting to FP, then shuffle the vector and optionally narrow the vector before doing the cast: cast (extelt V, C) --> extelt (cast (extract_subv (shuffle V, [C...]))), 0 This might be enough to close PR39974: https://bugs.llvm.org/show_bug.cgi?id=39974 Differential Revision: https://reviews.llvm.org/D58197 llvm-svn: 354619
Diffstat (limited to 'clang/lib/CodeGen/CGExprComplex.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud