diff options
Diffstat (limited to 'llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp')
| -rw-r--r-- | llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp b/llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp index f62753356a4d..a2292d016efa 100644 --- a/llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp +++ b/llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp @@ -759,6 +759,10 @@ bool LoongArchMergeBaseOffsetOpt::foldIntoMemoryOps(MachineInstr &Hi20, MO.ChangeToBA(ImmOp.getBlockAddress(), ImmOp.getOffset(), LoongArchII::getDirectFlags(ImmOp)); break; + case MachineOperand::MO_ConstantPoolIndex: + MO.ChangeToCPI(ImmOp.getIndex(), ImmOp.getOffset(), + LoongArchII::getDirectFlags(ImmOp)); + break; default: report_fatal_error("unsupported machine operand type"); break; |
