diff options
author | Sergei Barannikov <barannikov88@gmail.com> | 2025-08-16 05:13:43 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-08-16 02:13:43 +0000 |
commit | 76d993bd25ff462d915f69772454e7b1ca42fdb8 (patch) | |
tree | a2837bf635ee96a0c8077fa3f0e59fddfefa48f6 /llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp | |
parent | 37729d8ceb91edaece07eea6ab45fe8d0012132c (diff) | |
download | llvm-76d993bd25ff462d915f69772454e7b1ca42fdb8.zip llvm-76d993bd25ff462d915f69772454e7b1ca42fdb8.tar.gz llvm-76d993bd25ff462d915f69772454e7b1ca42fdb8.tar.bz2 |
[Hexagon] Add missing operand when disassembling Y4_crswap10 (#153849)
Auto-generated decoder fails to add the $sgp10 operand because it has no
encoding bits.
Work around this by adding the missing operand after decoding is
complete.
Fixes #153829.
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 22cff7c..bcddb54 100644 --- a/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp +++ b/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp @@ -526,6 +526,9 @@ DecodeStatus HexagonDisassembler::getSingleInstruction(MCInst &MI, MCInst &MCB, MI.insert(MI.begin() + 1, MCOperand::createExpr(MCConstantExpr::create(-1, getContext()))); break; + case Hexagon::Y4_crswap10: + MI.addOperand(MCOperand::createReg(Hexagon::SGP1_0)); + break; default: break; } |