Index: src/IceTargetLoweringMIPS32.h |
diff --git a/src/IceTargetLoweringMIPS32.h b/src/IceTargetLoweringMIPS32.h |
index 49cf2a2952d8aa9342b39df197c816830cb8d4be..842f266e2be730aced312e48437e56d3910393bb 100644 |
--- a/src/IceTargetLoweringMIPS32.h |
+++ b/src/IceTargetLoweringMIPS32.h |
@@ -341,15 +341,15 @@ public: |
Context.insert<InstMIPS32Mflo>(Dest, Src); |
} |
- void _mov(Variable *Dest, Operand *Src0) { |
+ void _mov(Variable *Dest, Operand *Src0, Operand *Src1 = nullptr) { |
assert(Dest != nullptr); |
// Variable* Src0_ = llvm::dyn_cast<Variable>(Src0); |
if (llvm::isa<ConstantRelocatable>(Src0)) { |
Context.insert<InstMIPS32La>(Dest, Src0); |
} else { |
- auto *Instr = Context.insert<InstMIPS32Mov>(Dest, Src0); |
- if (Instr->isMultiDest()) { |
- // If Instr is multi-dest, then Dest must be a Variable64On32. We add a |
+ auto *Instr = Context.insert<InstMIPS32Mov>(Dest, Src0, Src1); |
+ if (Instr->getDestHi() != nullptr) { |
+ // If DestHi is available, then Dest must be a Variable64On32. We add a |
// fake-def for Instr.DestHi here. |
assert(llvm::isa<Variable64On32>(Dest)); |
Context.insert<InstFakeDef>(Instr->getDestHi()); |