summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/commands/command/script/welcome.py
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2019-09-02 13:33:20 +0000
committerSanjay Patel <spatel@rotateright.com>2019-09-02 13:33:20 +0000
commit561c39994b95ec6c930850ff556b161d9d27af37 (patch)
tree0158962bf0a199a5aa8ba25f4f5cdea4c261089f /lldb/packages/Python/lldbsuite/test/commands/command/script/welcome.py
parenteafede2afeb45c826957d49c7895a04655f1f08d (diff)
downloadbcm5719-llvm-561c39994b95ec6c930850ff556b161d9d27af37.tar.gz
bcm5719-llvm-561c39994b95ec6c930850ff556b161d9d27af37.zip
[InstCombine] recognize bswap disguised as shufflevector
bitcast <N x i8> (shuf X, undef, <N, N-1,...0>) to i{N*8} --> bswap (bitcast X to i{N*8}) In PR43146: https://bugs.llvm.org/show_bug.cgi?id=43146 ...we have a more complicated case where SLP is making a mess of bswap. This patch won't do anything for that currently, but we need to improve bswap recognition in instcombine, SLP, and/or a standalone pass to avoid that problem. This is limited using the data-layout so we don't try to do this transform with actual vector types. The backend does not appear to have folds to convert in either direction, so we don't want to mess up something that is actually better lowered as a shuffle. On x86, we're trading something like this: vmovd %edi, %xmm0 vpshufb LCPI0_0(%rip), %xmm0, %xmm0 ## xmm0 = xmm0[3,2,1,0,u,u,u,u,u,u,u,u,u,u,u,u] vmovd %xmm0, %eax For: movl %edi, %eax bswapl %eax Differential Revision: https://reviews.llvm.org/D66965 llvm-svn: 370659
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/commands/command/script/welcome.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud