diff options
author | Ahmed Bougacha <ahmed.bougacha@gmail.com> | 2015-11-06 23:16:43 +0000 |
---|---|---|
committer | Ahmed Bougacha <ahmed.bougacha@gmail.com> | 2015-11-06 23:16:43 +0000 |
commit | 05a0514b12d07be4e7dd959dac9bdfb5204f213a (patch) | |
tree | 8c136622a1845993b2c9ed2e3255ae1423bb36ae /llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | |
parent | 68614a36d114ba390ce97576b71717b8d7c96b6f (diff) | |
download | bcm5719-llvm-05a0514b12d07be4e7dd959dac9bdfb5204f213a.tar.gz bcm5719-llvm-05a0514b12d07be4e7dd959dac9bdfb5204f213a.zip |
[X86] SRL non-LSB extracts when folding to truncating broadcasts.
Now that we recognize this, we can support it instead of bailing out.
That is, we can fold:
(v8i16 (shufflevector
(v8i16 (bitcast (v4i32 (build_vector X, Y, ...)))),
<1,1,...,1>))
into:
(v8i16 (vbroadcast (i16 (trunc (srl Y, 16)))))
llvm-svn: 252362
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriter.cpp')
0 files changed, 0 insertions, 0 deletions