mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-11 05:35:11 +00:00
[TargetInstrInfo] Fix the implementation of commuteInstruction to match the
comment of the API. Relaxes the behavior of TargetInstrInfo::commuteInstruction when TargetInstrInfo::findCommutedOpIndices returns false. Previously TargetInstrInfo triggered a fatal error in such situation whereas based on the comment in the API it should just return nullptr. Indeed the only precondition that should be ensured is that the instruction must be commutable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208371 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8ec421c255
commit
8d53407abb
@ -127,10 +127,8 @@ MachineInstr *TargetInstrInfo::commuteInstruction(MachineInstr *MI,
|
||||
return nullptr;
|
||||
unsigned Idx1, Idx2;
|
||||
if (!findCommutedOpIndices(MI, Idx1, Idx2)) {
|
||||
std::string msg;
|
||||
raw_string_ostream Msg(msg);
|
||||
Msg << "Don't know how to commute: " << *MI;
|
||||
report_fatal_error(Msg.str());
|
||||
assert(MI->isCommutable() && "Precondition violation: MI must be commutable.");
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
assert(MI->getOperand(Idx1).isReg() && MI->getOperand(Idx2).isReg() &&
|
||||
|
Loading…
Reference in New Issue
Block a user