diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-03-02 11:43:05 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-03-02 11:43:05 +0000 |
commit | c02b72627a57f7de893ccf675d01e09a53a24b92 (patch) | |
tree | 30f867c7591921809f509cfd8072084a4545be55 /lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp | |
parent | f2fbabe9c1955fc7e67d1e90f73aebcf54c49949 (diff) | |
download | llvm-c02b72627a57f7de893ccf675d01e09a53a24b92.zip llvm-c02b72627a57f7de893ccf675d01e09a53a24b92.tar.gz llvm-c02b72627a57f7de893ccf675d01e09a53a24b92.tar.bz2 |
[X86][SSE] Lower 128-bit MOVDDUP with existing VBROADCAST mechanisms
We have a number of useful lowering strategies for VBROADCAST instructions (both from memory and register element 0) which the 128-bit form of the MOVDDUP instruction can make use of.
This patch tweaks lowerVectorShuffleAsBroadcast to enable it to broadcast 2f64 args using MOVDDUP as well.
It does require a slight tweak to the lowerVectorShuffleAsBroadcast mechanism as the existing MOVDDUP lowering uses isShuffleEquivalent which can match binary shuffles that can lower to (unary) broadcasts.
Differential Revision: http://reviews.llvm.org/D17680
llvm-svn: 262478
Diffstat (limited to 'lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp')
0 files changed, 0 insertions, 0 deletions