diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-10-17 11:40:05 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-10-17 11:40:05 +0000 |
| commit | 216b1bf5ed8161a9072cda16535366c8e7df3b64 (patch) | |
| tree | b518acd70cb751727e092ddd45f0b9e7a9c0d1e9 /llvm/lib/CodeGen/MachineFunctionPass.cpp | |
| parent | ffa2446f28d22115e615f1f6609ac525f1472fa3 (diff) | |
| download | bcm5719-llvm-216b1bf5ed8161a9072cda16535366c8e7df3b64.tar.gz bcm5719-llvm-216b1bf5ed8161a9072cda16535366c8e7df3b64.zip | |
[InstCombine] SSE4A constant folding and conversion to shuffles.
This patch improves support for combining the SSE4A EXTRQ(I) and INSERTQ(I) intrinsics:
1 - Converts INSERTQ/EXTRQ calls to INSERTQI/EXTRQI if the 'bit index' and 'length' operands are constant
2 - Converts INSERTQI/EXTRQI calls to shufflevector if the bit index/length are both byte aligned (we can already lower shuffles to INSERTQI/EXTRQI if its useful)
3 - Constant folding support
4 - Add zeroinitializer handling
Differential Revision: http://reviews.llvm.org/D13348
llvm-svn: 250609
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunctionPass.cpp')
0 files changed, 0 insertions, 0 deletions

