forked from OSchip/llvm-project
parent
269092d747
commit
f4760455e8
|
@ -440,7 +440,9 @@ void SIInstrInfo::legalizeOperands(MachineInstr *MI) const {
|
||||||
// Legalize VOP2
|
// Legalize VOP2
|
||||||
if (isVOP2(MI->getOpcode()) && Src1Idx != -1) {
|
if (isVOP2(MI->getOpcode()) && Src1Idx != -1) {
|
||||||
MachineOperand &Src1 = MI->getOperand(Src1Idx);
|
MachineOperand &Src1 = MI->getOperand(Src1Idx);
|
||||||
// Legalize VOP2 instructions where src1 is not a VGPR.
|
|
||||||
|
// Legalize VOP2 instructions where src1 is not a VGPR. An SGPR input must
|
||||||
|
// be the first operand, and there can only be one.
|
||||||
if (Src1.isImm() || Src1.isFPImm() ||
|
if (Src1.isImm() || Src1.isFPImm() ||
|
||||||
(Src1.isReg() && RI.isSGPRClass(MRI.getRegClass(Src1.getReg())))) {
|
(Src1.isReg() && RI.isSGPRClass(MRI.getRegClass(Src1.getReg())))) {
|
||||||
if (MI->isCommutable()) {
|
if (MI->isCommutable()) {
|
||||||
|
|
Loading…
Reference in New Issue