LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::PatternMatch Namespace Reference


Classes

struct  leaf_ty
struct  bind_ty
struct  BinaryOp_match
struct  BinaryOpClass_match
struct  neg_match
struct  not_match
struct  brc_match

Functions

template<typename Val, typename Pattern>
bool match (Val *V, const Pattern &P)
leaf_ty< Value > m_Value ()
leaf_ty< ConstantInt > m_ConstantInt ()
bind_ty< Value > m_Value (Value *&V)
bind_ty< ConstantInt > m_ConstantInt (ConstantInt *&CI)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Add > 
m_Add (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Sub > 
m_Sub (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Mul > 
m_Mul (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Div > 
m_Div (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Rem > 
m_Rem (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::And > 
m_And (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Rem > 
m_Or (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Xor > 
m_Xor (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Shl > 
m_Shl (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOp_match< LHS, RHS,
Instruction::Shr > 
m_Shr (const LHS &L, const RHS &R)
template<typename LHS, typename RHS>
BinaryOpClass_match< LHS,
RHS, SetCondInst > 
m_SetCond (Instruction::BinaryOps &Op, const LHS &L, const RHS &R)
template<typename LHS>
neg_match< LHS > m_Neg (const LHS &L)
template<typename LHS>
not_match< LHS > m_Not (const LHS &L)
template<typename Cond_t>
brc_match< Cond_t > m_Br (const Cond_t &C, BasicBlock *&T, BasicBlock *&F)


Function Documentation

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Add> llvm::PatternMatch::m_Add (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 94 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::And> llvm::PatternMatch::m_And (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 124 of file PatternMatch.h.

Referenced by AddMaskingAnd::shouldApply().

template<typename Cond_t>
brc_match<Cond_t> llvm::PatternMatch::m_Br (  const Cond_t &  C,
BasicBlock *&  T,
BasicBlock *&  F
)  [inline]
 

Definition at line 283 of file PatternMatch.h.

bind_ty<ConstantInt> llvm::PatternMatch::m_ConstantInt (  ConstantInt *&  CI  )  [inline]
 

Definition at line 68 of file PatternMatch.h.

leaf_ty<ConstantInt> llvm::PatternMatch::m_ConstantInt (   )  [inline]
 

Definition at line 50 of file PatternMatch.h.

Referenced by AddMaskingAnd::shouldApply().

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Div> llvm::PatternMatch::m_Div (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 112 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Mul> llvm::PatternMatch::m_Mul (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 106 of file PatternMatch.h.

template<typename LHS>
neg_match<LHS> llvm::PatternMatch::m_Neg (  const LHS &  L  )  [inline]
 

Definition at line 222 of file PatternMatch.h.

template<typename LHS>
not_match<LHS> llvm::PatternMatch::m_Not (  const LHS &  L  )  [inline]
 

Definition at line 254 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Rem> llvm::PatternMatch::m_Or (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 130 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Rem> llvm::PatternMatch::m_Rem (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 118 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOpClass_match<LHS, RHS, SetCondInst> llvm::PatternMatch::m_SetCond (  Instruction::BinaryOps &  Op,
const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 185 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Shl> llvm::PatternMatch::m_Shl (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 142 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Shr> llvm::PatternMatch::m_Shr (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 148 of file PatternMatch.h.

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Sub> llvm::PatternMatch::m_Sub (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 100 of file PatternMatch.h.

bind_ty<Value> llvm::PatternMatch::m_Value (  Value *&  V  )  [inline]
 

Definition at line 67 of file PatternMatch.h.

leaf_ty<Value> llvm::PatternMatch::m_Value (   )  [inline]
 

Definition at line 49 of file PatternMatch.h.

Referenced by AddMaskingAnd::shouldApply().

template<typename LHS, typename RHS>
BinaryOp_match<LHS, RHS, Instruction::Xor> llvm::PatternMatch::m_Xor (  const LHS &  L,
const RHS &  R
)  [inline]
 

Definition at line 136 of file PatternMatch.h.

template<typename Val, typename Pattern>
bool llvm::PatternMatch::match (  Val *  V,
const Pattern &  P
) 
 

Definition at line 39 of file PatternMatch.h.

Referenced by AddMaskingAnd::shouldApply().