diff options
author | Filipe Cabecinhas <me@filcab.net> | 2014-05-08 00:25:16 +0000 |
---|---|---|
committer | Filipe Cabecinhas <me@filcab.net> | 2014-05-08 00:25:16 +0000 |
commit | 095d9d573a62ed5cde005b13e7130c25ae749f05 (patch) | |
tree | 7456deda73a03eaac0d05ad0e41358de9f049f2d /clang/lib/Basic/Module.cpp | |
parent | 93914a9518797b9c123ee68a0be313d6dc4f6b93 (diff) | |
download | bcm5719-llvm-095d9d573a62ed5cde005b13e7130c25ae749f05.tar.gz bcm5719-llvm-095d9d573a62ed5cde005b13e7130c25ae749f05.zip |
Lower certain build_vectors to insertps instructions
Summary:
Vectors built with zeros and elements in the same order as another
(source) vector are optimized to be built using a single insertps
instruction.
Also optimize when we move one element in a vector to a different place
in that vector while zeroing out some of the other elements.
Further optimizations are possible, described in TODO comments.
I will be implementing at least some of them in the near future.
Added some tests for different cases where this optimization triggers.
Reviewers: nadav, delena, craig.topper
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D3521
llvm-svn: 208271
Diffstat (limited to 'clang/lib/Basic/Module.cpp')
0 files changed, 0 insertions, 0 deletions