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,
  299   ValueT &operator[](const KeyT &Key) {
  311   ValueT &operator[](KeyT &&Key) {
  380         ::new (&DestBucket->getSecond()) ValueT(std::move(B->getSecond()));
  392       const DenseMapBase<OtherBaseT, KeyT, ValueT, KeyInfoT, BucketT> &other) {
  520     ::new (&TheBucket->getSecond()) ValueT(std::forward<ValueArgs>(Values)...);
  526                                       ValueT &&Value, LookupKeyT &Lookup) {
  684 class DenseMap : public DenseMapBase<DenseMap<KeyT, ValueT, KeyInfoT, BucketT>,
  685                                      KeyT, ValueT, KeyInfoT, BucketT> {
  690   using BaseT = DenseMapBase<DenseMap, KeyT, ValueT, KeyInfoT, BucketT>;
 1163   using ConstIterator = DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, true>;
 1199       const DenseMapIterator<KeyT, ValueT, KeyInfoT, Bucket, IsConstSrc> &I)
include/llvm/Analysis/MemoryDependenceAnalysis.h
  131   static MemDepResult getDef(Instruction *Inst) {
  135   static MemDepResult getClobber(Instruction *Inst) {
  139   static MemDepResult getNonLocal() {
  142   static MemDepResult getNonFuncLocal() {
  145   static MemDepResult getUnknown() {
  191   bool operator==(const MemDepResult &M) const { return Value == M.Value; }
  192   bool operator!=(const MemDepResult &M) const { return Value != M.Value; }
  193   bool operator<(const MemDepResult &M) const { return Value < M.Value; }
  194   bool operator>(const MemDepResult &M) const { return Value > M.Value; }
  202   static MemDepResult getDirty(Instruction *Inst) {
  212   MemDepResult Result;
  215   NonLocalDepEntry(BasicBlock *bb, MemDepResult result)
  224   void setResult(const MemDepResult &R) { Result = R; }
  226   const MemDepResult &getResult() const { return Result; }
  240   NonLocalDepResult(BasicBlock *bb, MemDepResult result, Value *address)
  246   void setResult(const MemDepResult &R, Value *Addr) {
  251   const MemDepResult &getResult() const { return Entry.getResult(); }
  278   using LocalDepMapType = DenseMap<Instruction *, MemDepResult>;
  387   MemDepResult getDependency(Instruction *QueryInst,
  450   MemDepResult getPointerDependencyFrom(const MemoryLocation &Loc, bool isLoad,
  457   MemDepResult
  469   MemDepResult getInvariantGroupPointerDependency(LoadInst *LI, BasicBlock *BB);
  487   MemDepResult getCallDependencyFrom(CallBase *Call, bool isReadOnlyCall,
  497   MemDepResult GetNonLocalInfoForBlock(Instruction *QueryInst,
include/llvm/Transforms/Scalar/GVN.h
  258   bool AnalyzeLoadAvailability(LoadInst *LI, MemDepResult DepInfo,
lib/Analysis/MemDepPrinter.cpp
  103     MemDepResult Res = MDA.getDependency(Inst);
  113         const MemDepResult &Res = I.getResult();
  124         const MemDepResult &Res = I.getResult();
lib/Analysis/MemoryDependenceAnalysis.cpp
  183 MemDepResult MemoryDependenceResults::getCallDependencyFrom(
  199       return MemDepResult::getUnknown();
  207         return MemDepResult::getClobber(Inst);
  218           return MemDepResult::getDef(Inst);
  224         return MemDepResult::getClobber(Inst);
  230       return MemDepResult::getClobber(Inst);
  236     return MemDepResult::getNonLocal();
  237   return MemDepResult::getNonFuncLocal();
  327 MemDepResult MemoryDependenceResults::getPointerDependencyFrom(
  331   MemDepResult InvariantGroupDependency = MemDepResult::getUnknown();
  331   MemDepResult InvariantGroupDependency = MemDepResult::getUnknown();
  340   MemDepResult SimpleDep = getSimplePointerDependencyFrom(
  355 MemDepResult
  360     return MemDepResult::getUnknown();
  371     return MemDepResult::getUnknown();
  426     return MemDepResult::getUnknown();
  428     return MemDepResult::getDef(ClosestDependency);
  435                             MemDepResult::getDef(ClosestDependency), nullptr));
  437   return MemDepResult::getNonLocal();
  440 MemDepResult MemoryDependenceResults::getSimplePointerDependencyFrom(
  528       return MemDepResult::getUnknown();
  539           return MemDepResult::getDef(II);
  556           return MemDepResult::getClobber(LI);
  559           return MemDepResult::getClobber(LI);
  570           return MemDepResult::getClobber(LI);
  572           return MemDepResult::getClobber(LI);
  586           return MemDepResult::getDef(Inst);
  613       return MemDepResult::getDef(Inst);
  623           return MemDepResult::getClobber(SI);
  625           return MemDepResult::getClobber(SI);
  635           return MemDepResult::getClobber(SI);
  654         return MemDepResult::getDef(Inst);
  657       return MemDepResult::getClobber(Inst);
  669         return MemDepResult::getDef(Inst);
  694       return MemDepResult::getClobber(Inst);
  703       return MemDepResult::getClobber(Inst);
  710     return MemDepResult::getNonLocal();
  711   return MemDepResult::getNonFuncLocal();
  714 MemDepResult MemoryDependenceResults::getDependency(Instruction *QueryInst,
  719   MemDepResult &LocalCache = LocalDeps[QueryInst];
  741       LocalCache = MemDepResult::getNonLocal();
  743       LocalCache = MemDepResult::getNonFuncLocal();
  762       LocalCache = MemDepResult::getUnknown();
  876     MemDepResult Dep;
  883       Dep = MemDepResult::getNonLocal();
  885       Dep = MemDepResult::getNonFuncLocal();
  952     Result.push_back(NonLocalDepResult(FromBB, MemDepResult::getUnknown(),
  968   Result.push_back(NonLocalDepResult(FromBB, MemDepResult::getUnknown(),
  977 MemDepResult MemoryDependenceResults::GetNonLocalInfoForBlock(
 1017   MemDepResult Dep =
 1263       MemDepResult Dep = GetNonLocalInfoForBlock(QueryInst, Loc, isLoad, BB,
 1403         NonLocalDepResult Entry(Pred, MemDepResult::getUnknown(), PredPtrVal);
 1465       I.setResult(MemDepResult::getUnknown());
 1584   MemDepResult NewDirtyVal;
 1586     NewDirtyVal = MemDepResult::getDirty(&*++RemInst->getIterator());
lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
  109     auto Q = MDR->getPointerDependencyFrom(MemoryLocation(Ptr), true,
lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
  305         MemDepResult Q = MDA->getPointerDependencyFrom(MemoryLocation(OutArg),
lib/Transforms/Scalar/DeadStoreElimination.cpp
  672     MemDepResult Dep =
 1114     MemDepResult InstDep = MD->getDependency(Inst, &OBB);
lib/Transforms/Scalar/GVN.cpp
  389     MemDepResult local_dep = MD->getDependency(C);
  827 static void reportMayClobberedLoad(LoadInst *LI, MemDepResult DepInfo,
  858 bool GVN::AnalyzeLoadAvailability(LoadInst *LI, MemDepResult DepInfo,
  989     MemDepResult DepInfo = Deps[i].getResult();
 1530   MemDepResult Dep = MD->getDependency(L);
 1623   MemDepResult local_dep = MD->getDependency(Call);
lib/Transforms/Scalar/MemCpyOptimizer.cpp
  620       MemDepResult ldep = MD->getDependency(LI);
  963   MemDepResult SourceDep =
 1021   MemDepResult DstDepInfo =
 1119     MemDepResult DepInfo = MD->getPointerDependencyFrom(
 1163   MemDepResult DepInfo = MD->getDependency(M);
 1199   MemDepResult SrcDepInfo = MD->getPointerDependencyFrom(
 1264   MemDepResult DepInfo = MD->getPointerDependencyFrom(
 1311   MemDepResult SourceDep = MD->getPointerDependencyFrom(
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
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_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
  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;
  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
 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>