diff options
author | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2016-09-09 21:45:00 +0000 |
---|---|---|
committer | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2016-09-09 21:45:00 +0000 |
commit | 73e0ad8220554c7b81380222c694cf5ba68f826f (patch) | |
tree | 37e3c8156706d6b818b196e43ba017a5630de3e1 /llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp | |
parent | 58560a05ad15cd7439183e07e72bbb6b09d1f236 (diff) | |
download | llvm-73e0ad8220554c7b81380222c694cf5ba68f826f.zip llvm-73e0ad8220554c7b81380222c694cf5ba68f826f.tar.gz llvm-73e0ad8220554c7b81380222c694cf5ba68f826f.tar.bz2 |
[Hexagon] Fix disassembler crash after r279255
When p0 was added as an explicit operand to the duplex subinstructions,
the disassembler was not updated to reflect this.
llvm-svn: 281104
Diffstat (limited to 'llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp')
-rw-r--r-- | llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp b/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp index 7bc08ec..e020351 100644 --- a/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp +++ b/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp @@ -1501,6 +1501,9 @@ void HexagonDisassembler::addSubinstOperands(MCInst *MI, unsigned opcode, operand = getRegFromSubinstEncoding(inst & 0xf); Op = MCOperand::createReg(operand); MI->addOperand(Op); + if (opcode == Hexagon::V4_SA1_setin1) + break; + MI->addOperand(MCOperand::createReg(Hexagon::P0)); break; case Hexagon::V4_SA1_cmpeqi: // Rs 7-4, u 1-0 |