From: Matt Arsenault Date: Fri, 17 Oct 2014 18:00:45 +0000 (+0000) Subject: R600/SI: Simplify code with hasModifiersSet X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b4fe2b433e809e58273b7934a66af40a486fa420;p=oota-llvm.git R600/SI: Simplify code with hasModifiersSet git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220065 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/R600/SIShrinkInstructions.cpp b/lib/Target/R600/SIShrinkInstructions.cpp index fef39781174..510619cf856 100644 --- a/lib/Target/R600/SIShrinkInstructions.cpp +++ b/lib/Target/R600/SIShrinkInstructions.cpp @@ -97,20 +97,19 @@ static bool canShrink(MachineInstr &MI, const SIInstrInfo *TII, if (Src1 && (!isVGPR(Src1, TRI, MRI) || (Src1Mod && Src1Mod->getImm() != 0))) return false; - // We don't need to check src0, all input types are legal, so just make - // sure src0 isn't using any modifiers. - const MachineOperand *Src0Mod = - TII->getNamedOperand(MI, AMDGPU::OpName::src0_modifiers); - if (Src0Mod && Src0Mod->getImm() != 0) + // We don't need to check src0, all input types are legal, so just make sure + // src0 isn't using any modifiers. + if (TII->hasModifiersSet(MI, AMDGPU::OpName::src0_modifiers)) return false; // Check output modifiers - const MachineOperand *Omod = TII->getNamedOperand(MI, AMDGPU::OpName::omod); - if (Omod && Omod->getImm() != 0) + if (TII->hasModifiersSet(MI, AMDGPU::OpName::omod)) return false; - const MachineOperand *Clamp = TII->getNamedOperand(MI, AMDGPU::OpName::clamp); - return !Clamp || Clamp->getImm() == 0; + if (TII->hasModifiersSet(MI, AMDGPU::OpName::clamp)) + return false; + + return true; } /// \brief This function checks \p MI for operands defined by a move immediate