diff options
| author | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2018-06-06 19:34:40 +0000 |
|---|---|---|
| committer | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2018-06-06 19:34:40 +0000 |
| commit | c1e712baa53926c82d465814d72988dd586ef35d (patch) | |
| tree | e7b769fc333cdd5fba8c96a8ecd39b292338ec35 /llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp | |
| parent | 98b7f3950320664a4040f8fbf5be46b878081393 (diff) | |
| download | bcm5719-llvm-c1e712baa53926c82d465814d72988dd586ef35d.tar.gz bcm5719-llvm-c1e712baa53926c82d465814d72988dd586ef35d.zip | |
[Hexagon] Implement vector-pair zero as V6_vsubw_dv
llvm-svn: 334123
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp')
| -rw-r--r-- | llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp b/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp index 0a38783388b..66e38cfc8b9 100644 --- a/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp +++ b/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp @@ -1153,6 +1153,14 @@ bool HexagonInstrInfo::expandPostRAPseudo(MachineInstr &MI) const { MBB.erase(MI); return true; } + case Hexagon::PS_vdd0: { + unsigned Vd = MI.getOperand(0).getReg(); + BuildMI(MBB, MI, DL, get(Hexagon::V6_vsubw_dv), Vd) + .addReg(Vd, RegState::Undef) + .addReg(Vd, RegState::Undef); + MBB.erase(MI); + return true; + } case Hexagon::PS_vmulw: { // Expand a 64-bit vector multiply into 2 32-bit scalar multiplies. unsigned DstReg = MI.getOperand(0).getReg(); |

