diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-08-13 07:39:03 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-08-13 07:39:03 +0000 |
commit | becd5e8abdc49933ac7c281496e0f0f1041c080a (patch) | |
tree | 00ed3f833cc0311e348ba9651c0eb47552102ef8 /clang/lib/Lex/ModuleMap.cpp | |
parent | 2ed4060ab69ba8d9845788c1bde95e4080a9df12 (diff) | |
download | llvm-becd5e8abdc49933ac7c281496e0f0f1041c080a.zip llvm-becd5e8abdc49933ac7c281496e0f0f1041c080a.tar.gz llvm-becd5e8abdc49933ac7c281496e0f0f1041c080a.tar.bz2 |
[InstCombine] SSE/AVX vector shifts demanded shift amount bits
Most SSE/AVX (non-constant) vector shift instructions only use the lower 64-bits of the 128-bit shift amount vector operand, this patch calls SimplifyDemandedVectorElts to optimize for this.
I had to refactor some of my recent InstCombiner work on the vector shifts to avoid quite a bit of duplicate code, it means that SimplifyX86immshift now (re)decodes the type of shift.
Differential Revision: http://reviews.llvm.org/D11938
llvm-svn: 244872
Diffstat (limited to 'clang/lib/Lex/ModuleMap.cpp')
0 files changed, 0 insertions, 0 deletions