reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Derived Classes

include/llvm/IR/Operator.h
   66 class OverflowingBinaryOperator : public Operator {
  119 class PossiblyExactOperator : public Operator {
  245 class FPMathOperator : public Operator {
  407 class ConcreteOperator : public SuperClass {

References

include/llvm/Analysis/TargetTransformInfoImpl.h
  883         Operator::getOpcode(U), U->getType(),
include/llvm/IR/Operator.h
   66 class OverflowingBinaryOperator : public Operator {
  119 class PossiblyExactOperator : public Operator {
  245 class FPMathOperator : public Operator {
  407 class ConcreteOperator : public SuperClass {
  447 class ZExtOperator : public ConcreteOperator<Operator, Instruction::ZExt> {};
  450   : public ConcreteOperator<Operator, Instruction::GetElementPtr> {
  555     : public ConcreteOperator<Operator, Instruction::PtrToInt> {
  583     : public ConcreteOperator<Operator, Instruction::BitCast> {
include/llvm/IR/PatternMatch.h
 1280     if (auto *O = dyn_cast<Operator>(V))
 1280     if (auto *O = dyn_cast<Operator>(V))
include/llvm/Support/Casting.h
   34   using SimpleType = From; // The real type this represents...
   37   static SimpleType &getSimplifiedValue(From &Val) { return Val; }
   41   using NonConstSimpleType = typename simplify_type<From>::SimpleType;
   47   static RetType getSimplifiedValue(const From& Val) {
   57   static inline bool doit(const From &Val) {
   58     return To::classof(&Val);
   76   static inline bool doit(const From &Val) {
   77     return isa_impl<To, From>::doit(Val);
   77     return isa_impl<To, From>::doit(Val);
  104   static inline bool doit(const From *Val) {
  106     return isa_impl<To, From>::doit(*Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  141 template <class X, class Y> LLVM_NODISCARD inline bool isa(const Y &Val) {
  142   return isa_impl_wrap<X, const Y,
  142   return isa_impl_wrap<X, const Y,
  143                        typename simplify_type<const Y>::SimpleType>::doit(Val);
  168   using ret_type = const To &; // Normal case, return Ty&
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  258   return cast_convert_val<X, Y,
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  265   return cast_convert_val<X, Y*,
  266                           typename simplify_type<Y*>::SimpleType>::doit(Val);
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
include/llvm/Support/type_traits.h
   55 struct add_const_past_pointer { using type = const T; };
lib/Analysis/BasicAliasAnalysis.cpp
  473     const Operator *Op = dyn_cast<Operator>(V);
  473     const Operator *Op = dyn_cast<Operator>(V);
lib/Analysis/GlobalsModRef.cpp
  362     } else if (Operator::getOpcode(I) == Instruction::GetElementPtr) {
  365     } else if (Operator::getOpcode(I) == Instruction::BitCast) {
lib/Analysis/InlineCost.cpp
 1667     } else if (Operator::getOpcode(V) == Instruction::BitCast) {
 1668       V = cast<Operator>(V)->getOperand(0);
lib/Analysis/ScalarEvolution.cpp
 4479   Operator *Op = nullptr;
 4481   explicit BinaryOp(Operator *Op)
 4499   auto *Op = dyn_cast<Operator>(V);
 4499   auto *Op = dyn_cast<Operator>(V);
 6154   Operator *U = cast<Operator>(V);
 6154   Operator *U = cast<Operator>(V);
 6412       Operator *L = dyn_cast<Operator>(BO->LHS);
 6412       Operator *L = dyn_cast<Operator>(BO->LHS);
lib/Analysis/ValueTracking.cpp
  892     const Operator *I, KnownBits &Known, KnownBits &Known2,
  978 static void computeKnownBitsFromOperator(const Operator *I, KnownBits &Known,
 1356         Operator *LU = dyn_cast<Operator>(L);
 1356         Operator *LU = dyn_cast<Operator>(L);
 1719   if (const Operator *I = dyn_cast<Operator>(V))
 1719   if (const Operator *I = dyn_cast<Operator>(V))
 1828     return isKnownToBeAPowerOfTwo(cast<Operator>(V)->getOperand(0), OrZero,
 2395   if (auto *U = dyn_cast<Operator>(V)) {
 2396     switch (Operator::getOpcode(V)) {
 2700   Operator *I = dyn_cast<Operator>(V);
 2700   Operator *I = dyn_cast<Operator>(V);
 2904   auto *Op = dyn_cast<Operator>(V);
 2977   const Operator *I = dyn_cast<Operator>(V);
 2977   const Operator *I = dyn_cast<Operator>(V);
 3721     } else if (Operator::getOpcode(V) == Instruction::BitCast ||
 3722                Operator::getOpcode(V) == Instruction::AddrSpaceCast) {
 3723       V = cast<Operator>(V)->getOperand(0);
 3809     if (const Operator *U = dyn_cast<Operator>(V)) {
 3809     if (const Operator *U = dyn_cast<Operator>(V)) {
 3822            Operator::getOpcode(U->getOperand(1)) != Instruction::Mul &&
 3850       if (Operator::getOpcode(V) == Instruction::IntToPtr) {
 3897   const Operator *Inst = dyn_cast<Operator>(V);
 3897   const Operator *Inst = dyn_cast<Operator>(V);
lib/CodeGen/SelectionDAG/FastISel.cpp
  438   } else if (const auto *Op = dyn_cast<Operator>(V)) {
  438   } else if (const auto *Op = dyn_cast<Operator>(V)) {
lib/IR/Value.cpp
  495     } else if (Operator::getOpcode(V) == Instruction::BitCast) {
  496       V = cast<Operator>(V)->getOperand(0);
  498                Operator::getOpcode(V) == Instruction::AddrSpaceCast) {
  501       V = cast<Operator>(V)->getOperand(0);
  588     } else if (Operator::getOpcode(V) == Instruction::BitCast ||
  589                Operator::getOpcode(V) == Instruction::AddrSpaceCast) {
  590       V = cast<Operator>(V)->getOperand(0);
lib/Target/Hexagon/HexagonISelLowering.cpp
 1713   if (Operator::getOpcode(V) == Instruction::ExtractValue ||
 1714       Operator::getOpcode(V) == Instruction::BitCast)
 1715     V = cast<Operator>(V)->getOperand(0);
lib/Transforms/IPO/GlobalOpt.cpp
 1802     if (Operator::getOpcode(U) == Instruction::BitCast) {
lib/Transforms/IPO/LowerTypeTests.cpp
  714   if (auto Op = dyn_cast<Operator>(V)) {
lib/Transforms/InstCombine/InstructionCombining.cpp
 1584         cast<Operator>(Op1)->getOpcode() == CastOpc &&
 1941           Operator *Index = cast<Operator>(V);
 1941           Operator *Index = cast<Operator>(V);
lib/Transforms/Scalar/InferAddressSpaces.cpp
  221   if (!isa<Operator>(V))
  224   const Operator &Op = cast<Operator>(V);
  224   const Operator &Op = cast<Operator>(V);
  244   const Operator &Op = cast<Operator>(V);
  244   const Operator &Op = cast<Operator>(V);
  327       Operator *Op = cast<Operator>(V);
  327       Operator *Op = cast<Operator>(V);
  702   const Operator &Op = cast<Operator>(V);
  702   const Operator &Op = cast<Operator>(V);
  847   if (auto *Op = dyn_cast<Operator>(C)) {
  847   if (auto *Op = dyn_cast<Operator>(C)) {
lib/Transforms/Scalar/SROA.cpp
 1644     if (Operator::getOpcode(Ptr) == Instruction::BitCast) {
 1645       Ptr = cast<Operator>(Ptr)->getOperand(0);
lib/Transforms/Scalar/SpeculativeExecution.cpp
  213   switch (Operator::getOpcode(I)) {
lib/Transforms/Utils/Local.cpp
 2820   if (Operator::getOpcode(I) != Instruction::Or)
usr/include/c++/7.4.0/type_traits
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1983     { typedef _Up     type; };