diff options
author | Ahmed Bougacha <ahmed.bougacha@gmail.com> | 2015-04-09 20:04:47 +0000 |
---|---|---|
committer | Ahmed Bougacha <ahmed.bougacha@gmail.com> | 2015-04-09 20:04:47 +0000 |
commit | df4373778263833340f65a681c489b01a5fcc26c (patch) | |
tree | e6be711e59e6059fd4230dd1c7902797968a1f6d /clang/lib/CodeGen/CodeGenFunction.cpp | |
parent | bd0c7eb4dc127b818b3da03d64c06c8cab55303c (diff) | |
download | llvm-df4373778263833340f65a681c489b01a5fcc26c.zip llvm-df4373778263833340f65a681c489b01a5fcc26c.tar.gz llvm-df4373778263833340f65a681c489b01a5fcc26c.tar.bz2 |
[CodeGen] Combine concat_vector of trunc'd scalar to scalar_to_vector.
We already do:
concat_vectors(scalar, undef) -> scalar_to_vector(scalar)
When the scalar is legal.
When it's not, but is a truncated legal scalar, we can also do:
concat_vectors(trunc(scalar), undef) -> scalar_to_vector(scalar)
Which is equivalent, since the upper lanes are undef anyway.
While there, teach the combine to look at more than 2 operands.
Differential Revision: http://reviews.llvm.org/D8883
llvm-svn: 234530
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
0 files changed, 0 insertions, 0 deletions