diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/CodeGen/TargetInstrInfo.cpp | 3 | ||||
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.cpp | 5 |
2 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/TargetInstrInfo.cpp b/llvm/lib/CodeGen/TargetInstrInfo.cpp index 6cae3b86950..d99b2b0e997 100644 --- a/llvm/lib/CodeGen/TargetInstrInfo.cpp +++ b/llvm/lib/CodeGen/TargetInstrInfo.cpp @@ -1130,9 +1130,6 @@ TargetInstrInfo::describeLoadedValue(const MachineInstr &MI) const { if (isCopyInstr(MI, SrcRegOp, DestRegOp)) { Op = SrcRegOp; return ParamLoadedValue(*Op, Expr); - } else if (MI.isMoveImmediate()) { - Op = &MI.getOperand(1); - return ParamLoadedValue(*Op, Expr); } return None; diff --git a/llvm/lib/Target/X86/X86InstrInfo.cpp b/llvm/lib/Target/X86/X86InstrInfo.cpp index c29029daeec..889ba288cc2 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.cpp +++ b/llvm/lib/Target/X86/X86InstrInfo.cpp @@ -7638,12 +7638,17 @@ X86InstrInfo::describeLoadedValue(const MachineInstr &MI) const { return ParamLoadedValue(*Op, Expr);; } + case X86::MOV32ri: + case X86::MOV64ri: + case X86::MOV64ri32: + return ParamLoadedValue(MI.getOperand(1), Expr); case X86::XOR32rr: { if (MI.getOperand(1).getReg() == MI.getOperand(2).getReg()) return ParamLoadedValue(MachineOperand::CreateImm(0), Expr); return None; } default: + assert(!MI.isMoveImmediate() && "Unexpected MoveImm instruction"); return TargetInstrInfo::describeLoadedValue(MI); } } |

