aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineCombiner.cpp
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2017-01-29 18:13:37 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2017-01-29 18:13:37 +0000
commit76073f8d2217be046b954eebd7fb25fe4526ec95 (patch)
treeeedbbf84e7cf32fac5be57abc2f7ff8808ef37b8 /llvm/lib/CodeGen/MachineCombiner.cpp
parenta2a502b58352b5e7d0a45e67742ce40031332ddb (diff)
downloadllvm-76073f8d2217be046b954eebd7fb25fe4526ec95.zip
llvm-76073f8d2217be046b954eebd7fb25fe4526ec95.tar.gz
llvm-76073f8d2217be046b954eebd7fb25fe4526ec95.tar.bz2
[X86][SSE] Lower scalar_to_vector(0) to zero vector
Replaces an xor+movd/movq with an xorps which will be shorter in codesize, avoid an int-fpu transfer, allow modern cores to fast path the result during decode and helps other combines recognise an all-zero vector. The only reason I can think of that we'd want to keep scalar_to_vector in this case is to help recognise the upper elts are undef but this doesn't seem to be a problem. Differential Revision: https://reviews.llvm.org/D29097 llvm-svn: 293438
Diffstat (limited to 'llvm/lib/CodeGen/MachineCombiner.cpp')
0 files changed, 0 insertions, 0 deletions