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

References

include/llvm/ADT/DenseMap.h
   40 struct DenseMapPair : public std::pair<KeyT, ValueT> {
   45   ValueT &getSecond() { return std::pair<KeyT, ValueT>::second; }
   46   const ValueT &getSecond() const { return std::pair<KeyT, ValueT>::second; }
   66   using mapped_type = ValueT;
   69   using iterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT>;
   71       DenseMapIterator<KeyT, ValueT, KeyInfoT, BucketT, true>;
  185   ValueT lookup(const_arg_type_t<KeyT> Val) const {
  195   std::pair<iterator, bool> insert(const std::pair<KeyT, ValueT> &KV) {
  202   std::pair<iterator, bool> insert(std::pair<KeyT, ValueT> &&KV) {
  249   std::pair<iterator, bool> insert_as(std::pair<KeyT, ValueT> &&KV,
  277     TheBucket->getSecond().~ValueT();
  299   ValueT &operator[](const KeyT &Key) {
  311   ValueT &operator[](KeyT &&Key) {
  338         P->getSecond().~ValueT();
  380         ::new (&DestBucket->getSecond()) ValueT(std::move(B->getSecond()));
  384         B->getSecond().~ValueT();
  392       const DenseMapBase<OtherBaseT, KeyT, ValueT, KeyInfoT, BucketT> &other) {
  400         is_trivially_copyable<ValueT>::value)
  410               ValueT(other.getBuckets()[i].getSecond());
  520     ::new (&TheBucket->getSecond()) ValueT(std::forward<ValueArgs>(Values)...);
  526                                       ValueT &&Value, LookupKeyT &Lookup) {
  852           SmallDenseMap<KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT>, KeyT,
  853           ValueT, KeyInfoT, BucketT> {
 1031           ::new (&TmpEnd->getSecond()) ValueT(std::move(P->getSecond()));
 1033           P->getSecond().~ValueT();
 1163   using ConstIterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, true>;
 1199       const DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, IsConstSrc> &I)
include/llvm/Analysis/AliasAnalysis.h
  139 LLVM_NODISCARD inline bool isNoModRef(const ModRefInfo MRI) {
  140   return (static_cast<int>(MRI) & static_cast<int>(ModRefInfo::MustModRef)) ==
  141          static_cast<int>(ModRefInfo::Must);
  143 LLVM_NODISCARD inline bool isModOrRefSet(const ModRefInfo MRI) {
  144   return static_cast<int>(MRI) & static_cast<int>(ModRefInfo::MustModRef);
  146 LLVM_NODISCARD inline bool isModAndRefSet(const ModRefInfo MRI) {
  147   return (static_cast<int>(MRI) & static_cast<int>(ModRefInfo::MustModRef)) ==
  148          static_cast<int>(ModRefInfo::MustModRef);
  150 LLVM_NODISCARD inline bool isModSet(const ModRefInfo MRI) {
  151   return static_cast<int>(MRI) & static_cast<int>(ModRefInfo::MustMod);
  153 LLVM_NODISCARD inline bool isRefSet(const ModRefInfo MRI) {
  154   return static_cast<int>(MRI) & static_cast<int>(ModRefInfo::MustRef);
  156 LLVM_NODISCARD inline bool isMustSet(const ModRefInfo MRI) {
  157   return !(static_cast<int>(MRI) & static_cast<int>(ModRefInfo::NoModRef));
  160 LLVM_NODISCARD inline ModRefInfo setMod(const ModRefInfo MRI) {
  160 LLVM_NODISCARD inline ModRefInfo setMod(const ModRefInfo MRI) {
  162                     static_cast<int>(ModRefInfo::MustMod));
  164 LLVM_NODISCARD inline ModRefInfo setRef(const ModRefInfo MRI) {
  164 LLVM_NODISCARD inline ModRefInfo setRef(const ModRefInfo MRI) {
  166                     static_cast<int>(ModRefInfo::MustRef));
  168 LLVM_NODISCARD inline ModRefInfo setMust(const ModRefInfo MRI) {
  168 LLVM_NODISCARD inline ModRefInfo setMust(const ModRefInfo MRI) {
  170                     static_cast<int>(ModRefInfo::MustModRef));
  172 LLVM_NODISCARD inline ModRefInfo setModAndRef(const ModRefInfo MRI) {
  172 LLVM_NODISCARD inline ModRefInfo setModAndRef(const ModRefInfo MRI) {
  174                     static_cast<int>(ModRefInfo::MustModRef));
  176 LLVM_NODISCARD inline ModRefInfo clearMod(const ModRefInfo MRI) {
  176 LLVM_NODISCARD inline ModRefInfo clearMod(const ModRefInfo MRI) {
  177   return ModRefInfo(static_cast<int>(MRI) & static_cast<int>(ModRefInfo::Ref));
  179 LLVM_NODISCARD inline ModRefInfo clearRef(const ModRefInfo MRI) {
  179 LLVM_NODISCARD inline ModRefInfo clearRef(const ModRefInfo MRI) {
  180   return ModRefInfo(static_cast<int>(MRI) & static_cast<int>(ModRefInfo::Mod));
  182 LLVM_NODISCARD inline ModRefInfo clearMust(const ModRefInfo MRI) {
  182 LLVM_NODISCARD inline ModRefInfo clearMust(const ModRefInfo MRI) {
  184                     static_cast<int>(ModRefInfo::NoModRef));
  186 LLVM_NODISCARD inline ModRefInfo unionModRef(const ModRefInfo MRI1,
  186 LLVM_NODISCARD inline ModRefInfo unionModRef(const ModRefInfo MRI1,
  187                                              const ModRefInfo MRI2) {
  190 LLVM_NODISCARD inline ModRefInfo intersectModRef(const ModRefInfo MRI1,
  190 LLVM_NODISCARD inline ModRefInfo intersectModRef(const ModRefInfo MRI1,
  191                                                  const ModRefInfo MRI2) {
  223       FMRL_Nowhere | static_cast<int>(ModRefInfo::NoModRef),
  231       FMRL_ArgumentPointees | static_cast<int>(ModRefInfo::Ref),
  239       FMRL_ArgumentPointees | static_cast<int>(ModRefInfo::ModRef),
  246       FMRL_InaccessibleMem | static_cast<int>(ModRefInfo::ModRef),
  257                                           static_cast<int>(ModRefInfo::ModRef),
  265   FMRB_OnlyReadsMemory = FMRL_Anywhere | static_cast<int>(ModRefInfo::Ref),
  272   FMRB_DoesNotReadMemory = FMRL_Anywhere | static_cast<int>(ModRefInfo::Mod),
  277       FMRL_Anywhere | static_cast<int>(ModRefInfo::ModRef)
  284 LLVM_NODISCARD inline ModRefInfo
  286   return ModRefInfo(FMRB & static_cast<int>(ModRefInfo::ModRef));
  411   ModRefInfo getArgModRefInfo(const CallBase *Call, unsigned ArgIdx);
  524   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc);
  527   ModRefInfo getModRefInfo(const CallBase *Call, const Value *P,
  534   ModRefInfo getModRefInfo(const LoadInst *L, const MemoryLocation &Loc);
  537   ModRefInfo getModRefInfo(const LoadInst *L, const Value *P,
  544   ModRefInfo getModRefInfo(const StoreInst *S, const MemoryLocation &Loc);
  547   ModRefInfo getModRefInfo(const StoreInst *S, const Value *P,
  554   ModRefInfo getModRefInfo(const FenceInst *S, const MemoryLocation &Loc);
  557   ModRefInfo getModRefInfo(const FenceInst *S, const Value *P,
  564   ModRefInfo getModRefInfo(const AtomicCmpXchgInst *CX,
  568   ModRefInfo getModRefInfo(const AtomicCmpXchgInst *CX, const Value *P,
  575   ModRefInfo getModRefInfo(const AtomicRMWInst *RMW, const MemoryLocation &Loc);
  578   ModRefInfo getModRefInfo(const AtomicRMWInst *RMW, const Value *P,
  585   ModRefInfo getModRefInfo(const VAArgInst *I, const MemoryLocation &Loc);
  588   ModRefInfo getModRefInfo(const VAArgInst *I, const Value *P,
  595   ModRefInfo getModRefInfo(const CatchPadInst *I, const MemoryLocation &Loc);
  598   ModRefInfo getModRefInfo(const CatchPadInst *I, const Value *P,
  605   ModRefInfo getModRefInfo(const CatchReturnInst *I, const MemoryLocation &Loc);
  608   ModRefInfo getModRefInfo(const CatchReturnInst *I, const Value *P,
  623   ModRefInfo getModRefInfo(const Instruction *I,
  630   ModRefInfo getModRefInfo(const Instruction *I, const Value *P,
  637   ModRefInfo getModRefInfo(Instruction *I, const CallBase *Call);
  642   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2);
  650   ModRefInfo callCapturesBefore(const Instruction *I,
  655   ModRefInfo callCapturesBefore(const Instruction *I, const Value *P,
  683                                  const ModRefInfo Mode);
  688                                  const ModRefInfo Mode) {
  697   ModRefInfo getModRefInfo(Instruction *I, const CallBase *Call2,
  699   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
  701   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
  703   ModRefInfo getModRefInfo(const VAArgInst *V, const MemoryLocation &Loc,
  705   ModRefInfo getModRefInfo(const LoadInst *L, const MemoryLocation &Loc,
  707   ModRefInfo getModRefInfo(const StoreInst *S, const MemoryLocation &Loc,
  709   ModRefInfo getModRefInfo(const FenceInst *S, const MemoryLocation &Loc,
  711   ModRefInfo getModRefInfo(const AtomicCmpXchgInst *CX,
  713   ModRefInfo getModRefInfo(const AtomicRMWInst *RMW, const MemoryLocation &Loc,
  715   ModRefInfo getModRefInfo(const CatchPadInst *I, const MemoryLocation &Loc,
  717   ModRefInfo getModRefInfo(const CatchReturnInst *I, const MemoryLocation &Loc,
  719   ModRefInfo getModRefInfo(const Instruction *I,
  752       return ModRefInfo::NoModRef;
  789   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc) {
  792   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2) {
  795   ModRefInfo getModRefInfo(const Instruction *I,
  799   ModRefInfo getModRefInfo(Instruction *I, const CallBase *Call2) {
  802   ModRefInfo getArgModRefInfo(const CallBase *Call, unsigned ArgIdx) {
  857   virtual ModRefInfo getArgModRefInfo(const CallBase *Call,
  868   virtual ModRefInfo getModRefInfo(const CallBase *Call,
  875   virtual ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
  908   ModRefInfo getArgModRefInfo(const CallBase *Call, unsigned ArgIdx) override {
  920   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
  925   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
  985     ModRefInfo getArgModRefInfo(const CallBase *Call, unsigned ArgIdx) {
  999     ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
 1005     ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
 1042   ModRefInfo getArgModRefInfo(const CallBase *Call, unsigned ArgIdx) {
 1043     return ModRefInfo::ModRef;
 1054   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
 1056     return ModRefInfo::ModRef;
 1059   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
 1061     return ModRefInfo::ModRef;
include/llvm/Analysis/BasicAliasAnalysis.h
   87   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
   90   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
   98   ModRefInfo getArgModRefInfo(const CallBase *Call, unsigned ArgIdx);
include/llvm/Analysis/GlobalsModRef.h
   95   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
  121   ModRefInfo getModRefInfoForArgument(const CallBase *Call,
include/llvm/Analysis/ObjCARCAliasAnalysis.h
   64   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
include/llvm/Analysis/ScopedNoAliasAA.h
   44   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
   46   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
include/llvm/Analysis/TypeBasedAliasAnalysis.h
   49   ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
   51   ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2,
include/llvm/Support/type_traits.h
   91     T t;
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  145       std::is_copy_constructible<detail::trivial_helper<T>>::value;
  147       !std::is_copy_constructible<T>::value;
  151       std::is_move_constructible<detail::trivial_helper<T>>::value;
  153       !std::is_move_constructible<T>::value;
  157       is_copy_assignable<detail::trivial_helper<T>>::value;
  159       !is_copy_assignable<T>::value;
  163       is_move_assignable<detail::trivial_helper<T>>::value;
  165       !is_move_assignable<T>::value;
  169       std::is_destructible<detail::trivial_helper<T>>::value;
lib/Analysis/AliasAnalysis.cpp
  135 ModRefInfo AAResults::getArgModRefInfo(const CallBase *Call, unsigned ArgIdx) {
  136   ModRefInfo Result = ModRefInfo::ModRef;
  136   ModRefInfo Result = ModRefInfo::ModRef;
  143       return ModRefInfo::NoModRef;
  149 ModRefInfo AAResults::getModRefInfo(Instruction *I, const CallBase *Call2) {
  154 ModRefInfo AAResults::getModRefInfo(Instruction *I, const CallBase *Call2,
  162     return ModRefInfo::ModRef;
  169     ModRefInfo MR = getModRefInfo(Call2, DefLoc, AAQI);
  173   return ModRefInfo::NoModRef;
  176 ModRefInfo AAResults::getModRefInfo(const CallBase *Call,
  182 ModRefInfo AAResults::getModRefInfo(const CallBase *Call,
  185   ModRefInfo Result = ModRefInfo::ModRef;
  185   ModRefInfo Result = ModRefInfo::ModRef;
  192       return ModRefInfo::NoModRef;
  200     return ModRefInfo::NoModRef;
  209     ModRefInfo AllArgsMask = ModRefInfo::NoModRef;
  209     ModRefInfo AllArgsMask = ModRefInfo::NoModRef;
  220           ModRefInfo ArgMask = getArgModRefInfo(Call, ArgIdx);
  229       return ModRefInfo::NoModRef;
  244 ModRefInfo AAResults::getModRefInfo(const CallBase *Call1,
  250 ModRefInfo AAResults::getModRefInfo(const CallBase *Call1,
  252   ModRefInfo Result = ModRefInfo::ModRef;
  252   ModRefInfo Result = ModRefInfo::ModRef;
  259       return ModRefInfo::NoModRef;
  268     return ModRefInfo::NoModRef;
  272     return ModRefInfo::NoModRef;
  276     return ModRefInfo::NoModRef;
  290       return ModRefInfo::NoModRef;
  291     ModRefInfo R = ModRefInfo::NoModRef;
  291     ModRefInfo R = ModRefInfo::NoModRef;
  306       ModRefInfo ArgModRefC2 = getArgModRefInfo(Call2, Call2ArgIdx);
  307       ModRefInfo ArgMask = ModRefInfo::NoModRef;
  307       ModRefInfo ArgMask = ModRefInfo::NoModRef;
  309         ArgMask = ModRefInfo::ModRef;
  311         ArgMask = ModRefInfo::Mod;
  315       ModRefInfo ModRefC1 = getModRefInfo(Call1, Call2ArgLoc);
  331       return ModRefInfo::NoModRef;
  341       return ModRefInfo::NoModRef;
  342     ModRefInfo R = ModRefInfo::NoModRef;
  342     ModRefInfo R = ModRefInfo::NoModRef;
  355       ModRefInfo ArgModRefC1 = getArgModRefInfo(Call1, Call1ArgIdx);
  356       ModRefInfo ModRefC2 = getModRefInfo(Call2, Call1ArgLoc);
  373       return ModRefInfo::NoModRef;
  432 ModRefInfo AAResults::getModRefInfo(const LoadInst *L,
  437 ModRefInfo AAResults::getModRefInfo(const LoadInst *L,
  442     return ModRefInfo::ModRef;
  449       return ModRefInfo::NoModRef;
  451       return ModRefInfo::MustRef;
  454   return ModRefInfo::Ref;
  457 ModRefInfo AAResults::getModRefInfo(const StoreInst *S,
  462 ModRefInfo AAResults::getModRefInfo(const StoreInst *S,
  467     return ModRefInfo::ModRef;
  474       return ModRefInfo::NoModRef;
  479       return ModRefInfo::NoModRef;
  483       return ModRefInfo::MustMod;
  487   return ModRefInfo::Mod;
  490 ModRefInfo AAResults::getModRefInfo(const FenceInst *S, const MemoryLocation &Loc) {
  495 ModRefInfo AAResults::getModRefInfo(const FenceInst *S,
  501     return ModRefInfo::Ref;
  502   return ModRefInfo::ModRef;
  505 ModRefInfo AAResults::getModRefInfo(const VAArgInst *V,
  511 ModRefInfo AAResults::getModRefInfo(const VAArgInst *V,
  519       return ModRefInfo::NoModRef;
  524       return ModRefInfo::NoModRef;
  528       return ModRefInfo::MustModRef;
  532   return ModRefInfo::ModRef;
  535 ModRefInfo AAResults::getModRefInfo(const CatchPadInst *CatchPad,
  541 ModRefInfo AAResults::getModRefInfo(const CatchPadInst *CatchPad,
  548       return ModRefInfo::NoModRef;
  552   return ModRefInfo::ModRef;
  555 ModRefInfo AAResults::getModRefInfo(const CatchReturnInst *CatchRet,
  561 ModRefInfo AAResults::getModRefInfo(const CatchReturnInst *CatchRet,
  568       return ModRefInfo::NoModRef;
  572   return ModRefInfo::ModRef;
  575 ModRefInfo AAResults::getModRefInfo(const AtomicCmpXchgInst *CX,
  581 ModRefInfo AAResults::getModRefInfo(const AtomicCmpXchgInst *CX,
  586     return ModRefInfo::ModRef;
  593       return ModRefInfo::NoModRef;
  597       return ModRefInfo::MustModRef;
  600   return ModRefInfo::ModRef;
  603 ModRefInfo AAResults::getModRefInfo(const AtomicRMWInst *RMW,
  609 ModRefInfo AAResults::getModRefInfo(const AtomicRMWInst *RMW,
  614     return ModRefInfo::ModRef;
  621       return ModRefInfo::NoModRef;
  625       return ModRefInfo::MustModRef;
  628   return ModRefInfo::ModRef;
  639 ModRefInfo AAResults::callCapturesBefore(const Instruction *I,
  644     return ModRefInfo::ModRef;
  650     return ModRefInfo::ModRef;
  654     return ModRefInfo::ModRef;
  660     return ModRefInfo::ModRef;
  663   ModRefInfo R = ModRefInfo::NoModRef;
  663   ModRefInfo R = ModRefInfo::NoModRef;
  688       R = ModRefInfo::Ref;
  692     return ModRefInfo::ModRef;
  702   return canInstructionRangeModRef(BB.front(), BB.back(), Loc, ModRefInfo::Mod);
  713                                           const ModRefInfo Mode) {
lib/Analysis/AliasAnalysisEvaluator.cpp
  239       case ModRefInfo::NoModRef:
  244       case ModRefInfo::Mod:
  248       case ModRefInfo::Ref:
  252       case ModRefInfo::ModRef:
  257       case ModRefInfo::Must:
  261       case ModRefInfo::MustMod:
  266       case ModRefInfo::MustRef:
  271       case ModRefInfo::MustModRef:
  286       case ModRefInfo::NoModRef:
  291       case ModRefInfo::Mod:
  295       case ModRefInfo::Ref:
  299       case ModRefInfo::ModRef:
  304       case ModRefInfo::Must:
  308       case ModRefInfo::MustMod:
  313       case ModRefInfo::MustRef:
  318       case ModRefInfo::MustModRef:
lib/Analysis/AliasSetTracker.cpp
  487       ModRefInfo CallMask = createModRefInfo(AA.getModRefBehavior(Call));
  504         ModRefInfo ArgMask = AA.getArgModRefInfo(Call, ArgIdx);
lib/Analysis/BasicAliasAnalysis.cpp
  796 ModRefInfo BasicAAResult::getArgModRefInfo(const CallBase *Call,
  800     return ModRefInfo::Mod;
  803     return ModRefInfo::Ref;
  806     return ModRefInfo::NoModRef;
  869 ModRefInfo BasicAAResult::getModRefInfo(const CallBase *Call,
  886         return ModRefInfo::NoModRef;
  892       return ModRefInfo::Mod;
  902     ModRefInfo Result = ModRefInfo::NoModRef;
  902     ModRefInfo Result = ModRefInfo::NoModRef;
  945       Result = ModRefInfo::ModRef;
  957         return ModRefInfo::NoModRef;
  972       return ModRefInfo::NoModRef;
  985       return ModRefInfo::Ref;
  989       return ModRefInfo::Mod;
  992     ModRefInfo rv = ModRefInfo::NoModRef;
  992     ModRefInfo rv = ModRefInfo::NoModRef;
 1004     return ModRefInfo::NoModRef;
 1014     return ModRefInfo::Ref;
 1040     return ModRefInfo::Ref;
 1046 ModRefInfo BasicAAResult::getModRefInfo(const CallBase *Call1,
 1054     return ModRefInfo::NoModRef;
 1069                ? ModRefInfo::Ref
 1070                : ModRefInfo::NoModRef;
 1074                ? ModRefInfo::Mod
 1075                : ModRefInfo::NoModRef;
lib/Analysis/GlobalsModRef.cpp
   62   typedef SmallDenseMap<const GlobalValue *, ModRefInfo, 16> GlobalInfoMapType;
   93   static_assert((MayReadAnyGlobal & static_cast<int>(ModRefInfo::MustModRef)) ==
   97                   static_cast<int>(ModRefInfo::MustModRef)) >>
  135   ModRefInfo globalClearMayReadAnyGlobal(int I) const {
  136     return ModRefInfo((I & static_cast<int>(ModRefInfo::ModRef)) |
  137                       static_cast<int>(ModRefInfo::NoModRef));
  141   ModRefInfo getModRefInfo() const {
  146   void addModRefInfo(ModRefInfo NewMRI) {
  159   ModRefInfo getModRefInfoForGlobal(const GlobalValue &GV) const {
  160     ModRefInfo GlobalMRI =
  161         mayReadAnyGlobal() ? ModRefInfo::Ref : ModRefInfo::NoModRef;
  161         mayReadAnyGlobal() ? ModRefInfo::Ref : ModRefInfo::NoModRef;
  183   void addModRefInfoForGlobal(const GlobalValue &GV, ModRefInfo NewMRI) {
  189     auto &GlobalMRI = P->Map[&GV];
  314           FunctionInfos[Reader].addModRefInfoForGlobal(GV, ModRefInfo::Ref);
  323             FunctionInfos[Writer].addModRefInfoForGlobal(GV, ModRefInfo::Mod);
  522           FI.addModRefInfo(ModRefInfo::Ref);
  528           FI.addModRefInfo(ModRefInfo::ModRef);
  584             FI.addModRefInfo(ModRefInfo::ModRef);
  603           FI.addModRefInfo(ModRefInfo::Ref);
  605           FI.addModRefInfo(ModRefInfo::Mod);
  890 ModRefInfo GlobalsAAResult::getModRefInfoForArgument(const CallBase *Call,
  894     return ModRefInfo::NoModRef;
  895   ModRefInfo ConservativeResult =
  896       Call->onlyReadsMemory() ? ModRefInfo::Ref : ModRefInfo::ModRef;
  896       Call->onlyReadsMemory() ? ModRefInfo::Ref : ModRefInfo::ModRef;
  918   return ModRefInfo::NoModRef;
  921 ModRefInfo GlobalsAAResult::getModRefInfo(const CallBase *Call,
  924   ModRefInfo Known = ModRefInfo::ModRef;
  924   ModRefInfo Known = ModRefInfo::ModRef;
  938     return ModRefInfo::NoModRef; // No need to query other mod/ref analyses
lib/Analysis/MemoryDependenceAnalysis.cpp
  116 static ModRefInfo GetLocation(const Instruction *Inst, MemoryLocation &Loc,
  121       return ModRefInfo::Ref;
  125       return ModRefInfo::ModRef;
  128     return ModRefInfo::ModRef;
  134       return ModRefInfo::Mod;
  138       return ModRefInfo::ModRef;
  141     return ModRefInfo::ModRef;
  146     return ModRefInfo::ModRef;
  152     return ModRefInfo::Mod;
  163       return ModRefInfo::Mod;
  168       return ModRefInfo::Mod;
  176     return ModRefInfo::ModRef;
  178     return ModRefInfo::Ref;
  179   return ModRefInfo::NoModRef;
  203     ModRefInfo MR = GetLocation(Inst, Loc, TLI);
  685     ModRefInfo MR = AA.getModRefInfo(Inst, MemLoc);
  690     case ModRefInfo::NoModRef:
  693     case ModRefInfo::Mod:
  695     case ModRefInfo::Ref:
  746     ModRefInfo MR = GetLocation(QueryInst, MemLoc, TLI);
lib/Analysis/MemorySSA.cpp
  299     ModRefInfo I = AA.getModRefInfo(DefInst, UseCall);
  308   ModRefInfo I = AA.getModRefInfo(DefInst, UseLoc);
 1754     ModRefInfo ModRef = AAP->getModRefInfo(I, None);
 1762     ModRefInfo ModRef = AAP->getModRefInfo(I, None);
lib/Analysis/ObjCARCAliasAnalysis.cpp
  110 ModRefInfo ObjCARCAAResult::getModRefInfo(const CallBase *Call,
  128     return ModRefInfo::NoModRef;
lib/Analysis/ScopedNoAliasAA.cpp
   98 ModRefInfo ScopedNoAliasAAResult::getModRefInfo(const CallBase *Call,
  106     return ModRefInfo::NoModRef;
  110     return ModRefInfo::NoModRef;
  115 ModRefInfo ScopedNoAliasAAResult::getModRefInfo(const CallBase *Call1,
  123     return ModRefInfo::NoModRef;
  127     return ModRefInfo::NoModRef;
lib/Analysis/TypeBasedAliasAnalysis.cpp
  424 ModRefInfo TypeBasedAAResult::getModRefInfo(const CallBase *Call,
  433         return ModRefInfo::NoModRef;
  438 ModRefInfo TypeBasedAAResult::getModRefInfo(const CallBase *Call1,
  447         return ModRefInfo::NoModRef;
lib/Target/ARM/ARMParallelDSP.cpp
  384           ModRefInfo::ModRef)))
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
 1967 mayLoopAccessLocation(Value *Ptr, ModRefInfo Access, Loop *L,
 2071   if (mayLoopAccessLocation(StoreBasePtr, ModRefInfo::ModRef, CurLoop, BECount,
 2075     if (mayLoopAccessLocation(StoreBasePtr, ModRefInfo::ModRef, CurLoop,
 2118   if (mayLoopAccessLocation(LoadBasePtr, ModRefInfo::Mod, CurLoop, BECount,
lib/Transforms/IPO/ArgumentPromotion.cpp
  757     if (AAR.canInstructionRangeModRef(BB->front(), *Load, Loc, ModRefInfo::Mod))
lib/Transforms/IPO/FunctionAttrs.cpp
  144       ModRefInfo MRI = createModRefInfo(MRB);
lib/Transforms/Scalar/LICM.cpp
 1262                 ModRefInfo MRI = AA->getModRefInfo(CI, MemoryLocation::get(SI));
 2273       auto Res = AA->getModRefInfo(&I, MemLoc);
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
  858 mayLoopAccessLocation(Value *Ptr, ModRefInfo Access, Loop *L,
  982   if (mayLoopAccessLocation(BasePtr, ModRefInfo::ModRef, CurLoop, BECount,
 1101   if (mayLoopAccessLocation(StoreBasePtr, ModRefInfo::ModRef, CurLoop, BECount,
 1121   if (mayLoopAccessLocation(LoadBasePtr, ModRefInfo::Mod, CurLoop, BECount,
lib/Transforms/Scalar/MemCpyOptimizer.cpp
  863   ModRefInfo MR = AA.getModRefInfo(C, cpyDest, LocationSize::precise(srcSize));
lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
  178   return AA->canInstructionRangeModRef(Start, End, Loc, ModRefInfo::ModRef);
usr/include/c++/7.4.0/bits/move.h
   98     move(_Tp&& __t) noexcept
usr/include/c++/7.4.0/bits/stl_pair.h
  209     : private __pair_base<_T1, _T2>
  212       typedef _T2 second_type;   /// @c second_type is the second bound type
  215       _T2 second;                /// @c second is a copy of the second object
  252       using _PCCP = _PCC<true, _T1, _T2>;
  260       constexpr pair(const _T1& __a, const _T2& __b)
  269       explicit constexpr pair(const _T1& __a, const _T2& __b)
  283 			    _T1, _T2>;
  311        constexpr pair(_U1&& __x, const _T2& __y)
  318        explicit constexpr pair(_U1&& __x, const _T2& __y)
  380 		       is_copy_assignable<_T2>>::value,
  391 		       is_move_assignable<_T2>>::value,
  403 				is_assignable<_T2&, const _U2&>>::value,
  403 				is_assignable<_T2&, const _U2&>>::value,
  405 	operator=(const pair<_U1, _U2>& __p)
  414 				is_assignable<_T2&, _U2&&>>::value,
  414 				is_assignable<_T2&, _U2&&>>::value,
  416 	operator=(pair<_U1, _U2>&& __p)
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  326     : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
  354     : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  762     typename add_rvalue_reference<_Tp>::type declval() noexcept;
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  825     : public __is_destructible_safe<_Tp>::type
  889       typedef decltype(__test<_Tp>(0)) type;
  894     : public __and_<__not_<is_void<_Tp>>,
  895                     __is_default_constructible_impl<_Tp>>
  915     : public __is_default_constructible_atom<_Tp>::type
  921     : public __is_default_constructible_safe<_Tp>::type
  984       typedef decltype(__test<_Tp, _Arg>(0)) type;
  989     : public __and_<is_destructible<_Tp>,
  990                     __is_direct_constructible_impl<_Tp, _Arg>>
 1072 			 __is_direct_constructible_ref_cast<_Tp, _Arg>,
 1073 			 __is_direct_constructible_new_safe<_Tp, _Arg>
 1079     : public __is_direct_constructible_new<_Tp, _Arg>::type
 1119     : public __is_direct_constructible<_Tp, _Arg>
 1130     : public __is_constructible_impl<_Tp, _Args...>::type
 1142     : public is_constructible<_Tp, const _Tp&>
 1142     : public is_constructible<_Tp, const _Tp&>
 1148     : public __is_copy_constructible_impl<_Tp>
 1160     : public is_constructible<_Tp, _Tp&&>
 1160     : public is_constructible<_Tp, _Tp&&>
 1166     : public __is_move_constructible_impl<_Tp>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1292     : public __is_copy_assignable_impl<_Tp>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1310     : public __is_move_assignable_impl<_Tp>
 1377     static void __helper(const _Tp&);
 1380     static true_type __test(const _Tp&,
 1381                             decltype(__helper<const _Tp&>({}))* = 0);
 1390     typedef decltype(__test(declval<_Tp>())) type;
 1395       : public __is_implicitly_default_constructible_impl<_Tp>::type
 1400       : public __and_<is_default_constructible<_Tp>,
 1401                       __is_implicitly_default_constructible_safe<_Tp>>
 1554     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1633     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1664     : public __add_rvalue_reference_helper<_Tp>
utils/unittest/googletest/include/gtest/gtest-printers.h
  140   static void PrintValue(const T& value, ::std::ostream* os) {
  205     ::std::basic_ostream<Char, CharTraits>& os, const T& x) {
  206   TypeWithoutFormatter<T,
  207       (internal::IsAProtocolMessage<T>::value ? kProtobuf :
  208        internal::ImplicitlyConvertible<const T&, internal::BiggestInt>::value ?
  223 void DefaultPrintNonContainerTo(const T& value, ::std::ostream* os) {
  276   static ::std::string Format(const ToPrint& value) {
  351     const T1& value, const T2& /* other_operand */) {
  351     const T1& value, const T2& /* other_operand */) {
  352   return FormatForComparison<T1, T2>::Format(value);
  352   return FormatForComparison<T1, T2>::Format(value);
  366 void UniversalPrint(const T& value, ::std::ostream* os);
  373                     const C& container, ::std::ostream* os) {
  439                     const T& value, ::std::ostream* os) {
  455 void PrintTo(const T& value, ::std::ostream* os) {
  478   DefaultPrintTo(IsContainerTest<T>(0), is_pointer<T>(), value, os);
  699   static void Print(const T& value, ::std::ostream* os) {
  784   static void Print(const T& value, ::std::ostream* os) {
  856   typedef T T1;
  983   internal::UniversalTersePrinter<T>::Print(value, &ss);
utils/unittest/googletest/include/gtest/gtest.h
 1377                                    const T1& lhs, const T2& rhs) {
 1377                                    const T1& lhs, const T2& rhs) {
 1389                             const T1& lhs,
 1390                             const T2& rhs) {
 1419                                  const T1& lhs,
 1420                                  const T2& rhs) {
utils/unittest/googletest/include/gtest/internal/custom/raw-ostream.h
   29   static const T& printable(const T& V) { return V; }
   29   static const T& printable(const T& V) { return V; }
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   37   return StreamSwitch<T>::printable(V);
utils/unittest/googletest/include/gtest/internal/gtest-internal.h
   94 ::std::string PrintToString(const T& value);