LLVM  13.0.0git
Classes | Functions
llvm::MIPatternMatch Namespace Reference

Classes

struct  And
 Matching combinators. More...
 
struct  And< Pred, Preds... >
 
struct  BinaryOp_match
 
struct  BinaryOpc_match
 
struct  bind_helper
 
struct  bind_helper< const ConstantFP * >
 
struct  bind_helper< LLT >
 
struct  bind_helper< MachineInstr * >
 
struct  bind_ty
 
struct  CheckType
 
struct  CompareOp_match
 
struct  ConstantMatch
 
struct  ICstRegMatch
 
struct  OneNonDBGUse_match
 
struct  OneUse_match
 
struct  operand_type_match
 } More...
 
struct  Or
 
struct  Or< Pred, Preds... >
 
struct  SpecificConstantMatch
 Matcher for a specific constant value. More...
 
struct  TernaryOp_match
 
struct  UnaryOp_match
 

Functions

template<typename Reg , typename Pattern >
bool mi_match (Reg R, const MachineRegisterInfo &MRI, Pattern &&P)
 
template<typename Pattern >
bool mi_match (MachineInstr &MI, const MachineRegisterInfo &MRI, Pattern &&P)
 
template<typename SubPat >
OneUse_match< SubPat > m_OneUse (const SubPat &SP)
 
template<typename SubPat >
OneNonDBGUse_match< SubPat > m_OneNonDBGUse (const SubPat &SP)
 
ConstantMatch m_ICst (int64_t &Cst)
 
ICstRegMatch m_ICst (Register &Reg)
 
SpecificConstantMatch m_SpecificICst (int64_t RequestedValue)
 Matches a constant equal to RequestedValue. More...
 
SpecificConstantMatch m_ZeroInt ()
 { Convenience matchers for specific integer values. More...
 
SpecificConstantMatch m_AllOnesInt ()
 
operand_type_match m_Reg ()
 
template<typename... Preds>
And< Preds... > m_all_of (Preds &&... preds)
 
template<typename... Preds>
Or< Preds... > m_any_of (Preds &&... preds)
 
bind_ty< Registerm_Reg (Register &R)
 
bind_ty< MachineInstr * > m_MInstr (MachineInstr *&MI)
 
bind_ty< LLTm_Type (LLT Ty)
 
bind_ty< CmpInst::Predicatem_Pred (CmpInst::Predicate &P)
 
operand_type_match m_Pred ()
 
bind_ty< const ConstantFP * > m_GFCst (const ConstantFP *&C)
 
template<typename LHS , typename RHS >
BinaryOpc_match< LHS, RHS, falsem_BinOp (unsigned Opcode, const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOpc_match< LHS, RHS, truem_CommutativeBinOp (unsigned Opcode, const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_ADD, truem_GAdd (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_PTR_ADD, truem_GPtrAdd (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_SUB > m_GSub (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_MUL, truem_GMul (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_FADD, truem_GFAdd (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_FMUL, truem_GFMul (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_FSUB, falsem_GFSub (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_AND, truem_GAnd (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_XOR, truem_GXor (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_OR, truem_GOr (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_SHL, falsem_GShl (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_LSHR, falsem_GLShr (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_ASHR, falsem_GAShr (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_SMAX, falsem_GSMax (const LHS &L, const RHS &R)
 
template<typename LHS , typename RHS >
BinaryOp_match< LHS, RHS, TargetOpcode::G_SMIN, falsem_GSMin (const LHS &L, const RHS &R)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_ANYEXT > m_GAnyExt (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_SEXT > m_GSExt (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_ZEXT > m_GZExt (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_FPEXT > m_GFPExt (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_TRUNC > m_GTrunc (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_BITCAST > m_GBitcast (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_PTRTOINT > m_GPtrToInt (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_INTTOPTR > m_GIntToPtr (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_FPTRUNC > m_GFPTrunc (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_FABS > m_GFabs (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::G_FNEG > m_GFNeg (const SrcTy &Src)
 
template<typename SrcTy >
UnaryOp_match< SrcTy, TargetOpcode::COPY > m_Copy (SrcTy &&Src)
 
template<typename Pred , typename LHS , typename RHS >
CompareOp_match< Pred, LHS, RHS, TargetOpcode::G_ICMP > m_GICmp (const Pred &P, const LHS &L, const RHS &R)
 
template<typename Pred , typename LHS , typename RHS >
CompareOp_match< Pred, LHS, RHS, TargetOpcode::G_FCMP > m_GFCmp (const Pred &P, const LHS &L, const RHS &R)
 
CheckType m_SpecificType (LLT Ty)
 
template<typename Src0Ty , typename Src1Ty , typename Src2Ty >
TernaryOp_match< Src0Ty, Src1Ty, Src2Ty, TargetOpcode::G_INSERT_VECTOR_ELT > m_GInsertVecElt (const Src0Ty &Src0, const Src1Ty &Src1, const Src2Ty &Src2)
 
template<typename Src0Ty , typename Src1Ty , typename Src2Ty >
TernaryOp_match< Src0Ty, Src1Ty, Src2Ty, TargetOpcode::G_SELECT > m_GISelect (const Src0Ty &Src0, const Src1Ty &Src1, const Src2Ty &Src2)
 
template<typename SrcTy >
BinaryOp_match< SpecificConstantMatch, SrcTy, TargetOpcode::G_SUB > m_Neg (const SrcTy &&Src)
 Matches a register negated by a G_SUB. More...
 
template<typename SrcTy >
BinaryOp_match< SrcTy, SpecificConstantMatch, TargetOpcode::G_XOR, truem_Not (const SrcTy &&Src)
 Matches a register not-ed by a G_XOR. More...
 

Function Documentation

◆ m_all_of()

template<typename... Preds>
And<Preds...> llvm::MIPatternMatch::m_all_of ( Preds &&...  preds)

◆ m_AllOnesInt()

SpecificConstantMatch llvm::MIPatternMatch::m_AllOnesInt ( )
inline

Definition at line 110 of file MIPatternMatch.h.

Referenced by m_Not().

◆ m_any_of()

template<typename... Preds>
Or<Preds...> llvm::MIPatternMatch::m_any_of ( Preds &&...  preds)

◆ m_BinOp()

template<typename LHS , typename RHS >
BinaryOpc_match<LHS, RHS, false> llvm::MIPatternMatch::m_BinOp ( unsigned  Opcode,
const LHS &  L,
const RHS &  R 
)
inline

Definition at line 284 of file MIPatternMatch.h.

Referenced by getReductionData().

◆ m_CommutativeBinOp()

template<typename LHS , typename RHS >
BinaryOpc_match<LHS, RHS, true> llvm::MIPatternMatch::m_CommutativeBinOp ( unsigned  Opcode,
const LHS &  L,
const RHS &  R 
)
inline

Definition at line 291 of file MIPatternMatch.h.

Referenced by AMDGPURegBankCombinerHelper::matchMed().

◆ m_Copy()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::COPY> llvm::MIPatternMatch::m_Copy ( SrcTy &&  Src)
inline

Definition at line 463 of file MIPatternMatch.h.

Referenced by llvm::AMDGPU::getBaseWithConstantOffset().

◆ m_GAdd()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_ADD, true> llvm::MIPatternMatch::m_GAdd ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 297 of file MIPatternMatch.h.

Referenced by getBaseWithConstantOffset().

◆ m_GAnd()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_AND, true> llvm::MIPatternMatch::m_GAnd ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 339 of file MIPatternMatch.h.

Referenced by llvm::CombinerHelper::matchXorOfAndWithSameReg().

◆ m_GAnyExt()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_ANYEXT> llvm::MIPatternMatch::m_GAnyExt ( const SrcTy &  Src)
inline

◆ m_GAShr()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_ASHR, false> llvm::MIPatternMatch::m_GAShr ( const LHS &  L,
const RHS &  R 
)
inline

◆ m_GBitcast()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_BITCAST> llvm::MIPatternMatch::m_GBitcast ( const SrcTy &  Src)
inline

Definition at line 430 of file MIPatternMatch.h.

Referenced by peekThroughBitcast().

◆ m_GFabs()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_FABS> llvm::MIPatternMatch::m_GFabs ( const SrcTy &  Src)
inline

Definition at line 453 of file MIPatternMatch.h.

Referenced by llvm::CombinerHelper::matchCombineFAbsOfFAbs().

◆ m_GFAdd()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_FADD, true> llvm::MIPatternMatch::m_GFAdd ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 321 of file MIPatternMatch.h.

◆ m_GFCmp()

template<typename Pred , typename LHS , typename RHS >
CompareOp_match<Pred, LHS, RHS, TargetOpcode::G_FCMP> llvm::MIPatternMatch::m_GFCmp ( const Pred &  P,
const LHS &  L,
const RHS &  R 
)
inline

Definition at line 502 of file MIPatternMatch.h.

References P.

Referenced by AMDGPUPostLegalizerCombinerHelper::matchFMinFMaxLegacy().

◆ m_GFCst()

bind_ty<const ConstantFP *> llvm::MIPatternMatch::m_GFCst ( const ConstantFP *&  C)
inline

Definition at line 233 of file MIPatternMatch.h.

Referenced by llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic().

◆ m_GFMul()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_FMUL, true> llvm::MIPatternMatch::m_GFMul ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 327 of file MIPatternMatch.h.

◆ m_GFNeg()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_FNEG> llvm::MIPatternMatch::m_GFNeg ( const SrcTy &  Src)
inline

Definition at line 458 of file MIPatternMatch.h.

Referenced by llvm::CombinerHelper::matchCombineFNegOfFNeg().

◆ m_GFPExt()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_FPEXT> llvm::MIPatternMatch::m_GFPExt ( const SrcTy &  Src)
inline

Definition at line 419 of file MIPatternMatch.h.

◆ m_GFPTrunc()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_FPTRUNC> llvm::MIPatternMatch::m_GFPTrunc ( const SrcTy &  Src)
inline

Definition at line 448 of file MIPatternMatch.h.

◆ m_GFSub()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_FSUB, false> llvm::MIPatternMatch::m_GFSub ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 333 of file MIPatternMatch.h.

◆ m_GICmp()

template<typename Pred , typename LHS , typename RHS >
CompareOp_match<Pred, LHS, RHS, TargetOpcode::G_ICMP> llvm::MIPatternMatch::m_GICmp ( const Pred &  P,
const LHS &  L,
const RHS &  R 
)
inline

Definition at line 496 of file MIPatternMatch.h.

References P.

◆ m_GInsertVecElt()

template<typename Src0Ty , typename Src1Ty , typename Src2Ty >
TernaryOp_match<Src0Ty, Src1Ty, Src2Ty, TargetOpcode::G_INSERT_VECTOR_ELT> llvm::MIPatternMatch::m_GInsertVecElt ( const Src0Ty &  Src0,
const Src1Ty &  Src1,
const Src2Ty &  Src2 
)
inline

Definition at line 542 of file MIPatternMatch.h.

Referenced by llvm::CombinerHelper::matchCombineInsertVecElts().

◆ m_GIntToPtr()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_INTTOPTR> llvm::MIPatternMatch::m_GIntToPtr ( const SrcTy &  Src)
inline

◆ m_GISelect()

template<typename Src0Ty , typename Src1Ty , typename Src2Ty >
TernaryOp_match<Src0Ty, Src1Ty, Src2Ty, TargetOpcode::G_SELECT> llvm::MIPatternMatch::m_GISelect ( const Src0Ty &  Src0,
const Src1Ty &  Src1,
const Src2Ty &  Src2 
)
inline

Definition at line 549 of file MIPatternMatch.h.

◆ m_GLShr()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_LSHR, false> llvm::MIPatternMatch::m_GLShr ( const LHS &  L,
const RHS &  R 
)
inline

◆ m_GMul()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_MUL, true> llvm::MIPatternMatch::m_GMul ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 315 of file MIPatternMatch.h.

◆ m_GOr()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_OR, true> llvm::MIPatternMatch::m_GOr ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 350 of file MIPatternMatch.h.

◆ m_GPtrAdd()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_PTR_ADD, true> llvm::MIPatternMatch::m_GPtrAdd ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 303 of file MIPatternMatch.h.

Referenced by llvm::AMDGPU::getBaseWithConstantOffset().

◆ m_GPtrToInt()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_PTRTOINT> llvm::MIPatternMatch::m_GPtrToInt ( const SrcTy &  Src)
inline

◆ m_GSExt()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_SEXT> llvm::MIPatternMatch::m_GSExt ( const SrcTy &  Src)
inline

◆ m_GShl()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_SHL, false> llvm::MIPatternMatch::m_GShl ( const LHS &  L,
const RHS &  R 
)
inline

◆ m_GSMax()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_SMAX, false> llvm::MIPatternMatch::m_GSMax ( const LHS &  L,
const RHS &  R 
)
inline

◆ m_GSMin()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_SMIN, false> llvm::MIPatternMatch::m_GSMin ( const LHS &  L,
const RHS &  R 
)
inline

◆ m_GSub()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_SUB> llvm::MIPatternMatch::m_GSub ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 308 of file MIPatternMatch.h.

Referenced by m_Neg().

◆ m_GTrunc()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_TRUNC> llvm::MIPatternMatch::m_GTrunc ( const SrcTy &  Src)
inline

◆ m_GXor()

template<typename LHS , typename RHS >
BinaryOp_match<LHS, RHS, TargetOpcode::G_XOR, true> llvm::MIPatternMatch::m_GXor ( const LHS &  L,
const RHS &  R 
)
inline

Definition at line 345 of file MIPatternMatch.h.

Referenced by m_Not(), and llvm::CombinerHelper::matchNotCmp().

◆ m_GZExt()

template<typename SrcTy >
UnaryOp_match<SrcTy, TargetOpcode::G_ZEXT> llvm::MIPatternMatch::m_GZExt ( const SrcTy &  Src)
inline

◆ m_ICst() [1/2]

ConstantMatch llvm::MIPatternMatch::m_ICst ( int64_t &  Cst)
inline

◆ m_ICst() [2/2]

ICstRegMatch llvm::MIPatternMatch::m_ICst ( Register Reg)
inline

Definition at line 90 of file MIPatternMatch.h.

References Reg.

◆ m_MInstr()

bind_ty<MachineInstr *> llvm::MIPatternMatch::m_MInstr ( MachineInstr *&  MI)
inline

◆ m_Neg()

template<typename SrcTy >
BinaryOp_match<SpecificConstantMatch, SrcTy, TargetOpcode::G_SUB> llvm::MIPatternMatch::m_Neg ( const SrcTy &&  Src)
inline

Matches a register negated by a G_SUB.

G_SUB 0, negated_reg

Definition at line 558 of file MIPatternMatch.h.

References m_GSub(), and m_ZeroInt().

Referenced by llvm::InstCombiner::getComplexity(), LinearizeExprTree(), llvm::CombinerHelper::matchSimplifyAddToSub(), NegateValue(), and ShouldBreakUpSubtract().

◆ m_Not()

template<typename SrcTy >
BinaryOp_match<SrcTy, SpecificConstantMatch, TargetOpcode::G_XOR, true> llvm::MIPatternMatch::m_Not ( const SrcTy &&  Src)
inline

◆ m_OneNonDBGUse()

template<typename SubPat >
OneNonDBGUse_match<SubPat> llvm::MIPatternMatch::m_OneNonDBGUse ( const SubPat &  SP)
inline

Definition at line 58 of file MIPatternMatch.h.

Referenced by matchBitfieldExtractFromSExtInReg(), and matchLoadAndBytePosition().

◆ m_OneUse()

template<typename SubPat >
OneUse_match<SubPat> llvm::MIPatternMatch::m_OneUse ( const SubPat &  SP)
inline

◆ m_Pred() [1/2]

operand_type_match llvm::MIPatternMatch::m_Pred ( )
inline

Definition at line 230 of file MIPatternMatch.h.

◆ m_Pred() [2/2]

bind_ty<CmpInst::Predicate> llvm::MIPatternMatch::m_Pred ( CmpInst::Predicate P)
inline

Definition at line 229 of file MIPatternMatch.h.

References P.

Referenced by AMDGPUPostLegalizerCombinerHelper::matchFMinFMaxLegacy().

◆ m_Reg() [1/2]

operand_type_match llvm::MIPatternMatch::m_Reg ( )
inline

◆ m_Reg() [2/2]

bind_ty<Register> llvm::MIPatternMatch::m_Reg ( Register R)
inline

Definition at line 226 of file MIPatternMatch.h.

◆ m_SpecificICst()

SpecificConstantMatch llvm::MIPatternMatch::m_SpecificICst ( int64_t  RequestedValue)
inline

Matches a constant equal to RequestedValue.

Definition at line 103 of file MIPatternMatch.h.

Referenced by isBuildVectorConstantSplat(), and matchICmpRedundantTrunc().

◆ m_SpecificType()

CheckType llvm::MIPatternMatch::m_SpecificType ( LLT  Ty)
inline

◆ m_Type()

bind_ty<LLT> llvm::MIPatternMatch::m_Type ( LLT  Ty)
inline

Definition at line 228 of file MIPatternMatch.h.

◆ m_ZeroInt()

SpecificConstantMatch llvm::MIPatternMatch::m_ZeroInt ( )
inline

{ Convenience matchers for specific integer values.

Definition at line 109 of file MIPatternMatch.h.

Referenced by m_Neg(), matchDupFromInsertVectorElt(), matchZeroExtendFromS32(), and llvm::ARMTargetLowering::shouldSinkOperands().

◆ mi_match() [1/2]

template<typename Pattern >
bool llvm::MIPatternMatch::mi_match ( MachineInstr MI,
const MachineRegisterInfo MRI,
Pattern &&  P 
)

Definition at line 29 of file MIPatternMatch.h.

References MI, MRI, and P.

◆ mi_match() [2/2]

template<typename Reg , typename Pattern >
bool llvm::MIPatternMatch::mi_match ( Reg  R,
const MachineRegisterInfo MRI,
Pattern &&  P 
)

Definition at line 24 of file MIPatternMatch.h.

References MRI, and P.

Referenced by clampDynamicVectorIndex(), llvm::LegalizerHelper::fewerElementsVectorExtractInsertVectorElt(), llvm::AMDGPU::getBaseWithConstantOffset(), getBaseWithConstantOffset(), llvm::getBuildVectorConstantSplat(), isBuildVectorConstantSplat(), isZero(), llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(), llvm::LegalizerHelper::lowerExtractInsertVectorElt(), llvm::MIPatternMatch::SpecificConstantMatch::match(), llvm::MIPatternMatch::BinaryOp_match< LHS_P, RHS_P, Opcode, Commutable >::match(), llvm::MIPatternMatch::BinaryOpc_match< LHS_P, RHS_P, Commutable >::match(), llvm::MIPatternMatch::UnaryOp_match< SrcTy, Opcode >::match(), llvm::MIPatternMatch::CompareOp_match< Pred_P, LHS_P, RHS_P, Opcode >::match(), llvm::MIPatternMatch::TernaryOp_match< Src0Ty, Src1Ty, Src2Ty, Opcode >::match(), llvm::CombinerHelper::matchAshrShlToSextInreg(), matchBitfieldExtractFromSExtInReg(), AMDGPUPreLegalizerCombinerHelper::matchClampI64ToI16(), llvm::CombinerHelper::matchCombineAddP2IToPtrAdd(), llvm::CombinerHelper::matchCombineAnyExtTrunc(), llvm::CombinerHelper::matchCombineConstPtrAddToI2P(), llvm::CombinerHelper::matchCombineFAbsOfFAbs(), llvm::CombinerHelper::matchCombineFNegOfFNeg(), llvm::CombinerHelper::matchCombineI2PToP2I(), llvm::CombinerHelper::matchCombineInsertVecElts(), llvm::CombinerHelper::matchCombineP2IToI2P(), llvm::CombinerHelper::matchCombineShlOfExtend(), llvm::CombinerHelper::matchCombineTruncOfShl(), llvm::CombinerHelper::matchCombineUnmergeZExtToZExt(), llvm::CombinerHelper::matchCombineZextTrunc(), AMDGPUPostLegalizerCombinerHelper::matchCvtF32UByteN(), matchDupFromInsertVectorElt(), AMDGPUPostLegalizerCombinerHelper::matchFMinFMaxLegacy(), matchICmpRedundantTrunc(), matchLoadAndBytePosition(), AMDGPURegBankCombinerHelper::matchMed(), llvm::CombinerHelper::matchNotCmp(), llvm::CombinerHelper::matchSextTruncSextLoad(), llvm::CombinerHelper::matchSimplifyAddToSub(), llvm::CombinerHelper::matchXorOfAndWithSameReg(), matchZeroExtendFromS32(), peekThroughBitcast(), llvm::LegalizationArtifactCombiner::tryCombineAnyExt(), llvm::LegalizationArtifactCombiner::tryCombineSExt(), llvm::LegalizationArtifactCombiner::tryCombineTrunc(), and llvm::LegalizationArtifactCombiner::tryCombineZExt().