--- lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp b/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp index d5ae33d..f499c78 100644 --- a/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp +++ b/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp @@ -276,11 +276,20 @@ bool R600ExpandSpecialInstrsPass::runOnMachineFunction(MachineFunction &MF) { } else { Opcode = MI.getOpcode(); } - MachineInstr *NewMI = - BuildMI(MBB, I, MBB.findDebugLoc(I), TII->get(Opcode), DstReg) - .addReg(Src0) - .addReg(Src1) - .addImm(0); // Flag + + MachineInstr *NewMI; + if (MI.getNumExplicitOperands() == 5) { + NewMI = BuildMI(MBB, I, MBB.findDebugLoc(I), TII->get(Opcode), DstReg) + .addReg(Src0) + .addReg(Src1) + .addReg(0) // Pred + .addImm(0); // Flag + } else { + NewMI = BuildMI(MBB, I, MBB.findDebugLoc(I), TII->get(Opcode), DstReg) + .addReg(Src0) + .addReg(Src1) + .addImm(0); // Flag + } NewMI->setIsInsideBundle(Chan != 0); TII->addFlag(NewMI, 0, Flags); -- 1.7.11.7 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev