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

References

include/llvm/Analysis/AliasAnalysis.h
  352   AliasResult alias(const Value *V1, LocationSize V1Size, const Value *V2,
  353                     LocationSize V2Size) {
  359     return alias(V1, LocationSize::unknown(), V2, LocationSize::unknown());
  359     return alias(V1, LocationSize::unknown(), V2, LocationSize::unknown());
  369   bool isNoAlias(const Value *V1, LocationSize V1Size, const Value *V2,
  370                  LocationSize V2Size) {
  387     return alias(V1, LocationSize::precise(1), V2, LocationSize::precise(1)) ==
  387     return alias(V1, LocationSize::precise(1), V2, LocationSize::precise(1)) ==
  528                            LocationSize Size) {
  538                            LocationSize Size) {
  548                            LocationSize Size) {
  558                            LocationSize Size) {
  569                            LocationSize Size) {
  579                            LocationSize Size) {
  589                            LocationSize Size) {
  599                            LocationSize Size) {
  609                            LocationSize Size) {
  631                            LocationSize Size) {
  656                                 LocationSize Size, DominatorTree *DT,
  672                            LocationSize Size) {
  687                                  const Value *Ptr, LocationSize Size,
include/llvm/Analysis/AliasSetTracker.h
   56     LocationSize Size = LocationSize::mapEmpty();
   56     LocationSize Size = LocationSize::mapEmpty();
   61     bool isSizeSet() const { return Size != LocationSize::mapEmpty(); }
   77     bool updateSizeAndAAInfo(LocationSize NewSize, const AAMDNodes &NewAAInfo) {
   80         LocationSize OldSize = Size;
  101     LocationSize getSize() const {
  258     LocationSize getSize() const { return CurNode->getSize(); }
  298   void addPointer(AliasSetTracker &AST, PointerRec &Entry, LocationSize Size,
  318   AliasResult aliasesPointer(const Value *Ptr, LocationSize Size,
  377   void add(Value *Ptr, LocationSize Size, const AAMDNodes &AAInfo); // Add a loc
  449   AliasSet *mergeAliasSetsForPointer(const Value *Ptr, LocationSize Size,
include/llvm/Analysis/BasicAliasAnalysis.h
  177       LocationSize ObjectAccessSize);
  189                           LocationSize V1Size, LocationSize V2Size,
  189                           LocationSize V1Size, LocationSize V2Size,
  198   AliasResult aliasGEP(const GEPOperator *V1, LocationSize V1Size,
  200                        LocationSize V2Size, const AAMDNodes &V2AAInfo,
  204   AliasResult aliasPHI(const PHINode *PN, LocationSize PNSize,
  206                        LocationSize V2Size, const AAMDNodes &V2AAInfo,
  209   AliasResult aliasSelect(const SelectInst *SI, LocationSize SISize,
  211                           LocationSize V2Size, const AAMDNodes &V2AAInfo,
  214   AliasResult aliasCheck(const Value *V1, LocationSize V1Size,
  216                          LocationSize V2Size, AAMDNodes V2AATag,
include/llvm/Analysis/MemoryDependenceAnalysis.h
  305     LocationSize Size = LocationSize::unknown();
  305     LocationSize Size = LocationSize::unknown();
include/llvm/Analysis/MemoryLocation.h
   90   static LocationSize precise(uint64_t Value) { return LocationSize(Value); }
   92   static LocationSize upperBound(uint64_t Value) {
  101   constexpr static LocationSize unknown() {
  106   constexpr static LocationSize mapTombstone() {
  109   constexpr static LocationSize mapEmpty() {
  115   LocationSize unionWith(LocationSize Other) const {
  115   LocationSize unionWith(LocationSize Other) const {
  140   bool operator==(const LocationSize &Other) const {
  144   bool operator!=(const LocationSize &Other) const {
  160 inline raw_ostream &operator<<(raw_ostream &OS, LocationSize Size) {
  191   LocationSize Size;
  244                           LocationSize Size = LocationSize::unknown(),
  244                           LocationSize Size = LocationSize::unknown(),
  254   MemoryLocation getWithNewSize(LocationSize NewSize) const {
  273   static inline LocationSize getEmptyKey() {
  274     return LocationSize::mapEmpty();
  276   static inline LocationSize getTombstoneKey() {
  277     return LocationSize::mapTombstone();
  279   static unsigned getHashValue(const LocationSize &Val) {
  282   static bool isEqual(const LocationSize &LHS, const LocationSize &RHS) {
  282   static bool isEqual(const LocationSize &LHS, const LocationSize &RHS) {
  290                           DenseMapInfo<LocationSize>::getEmptyKey());
  294                           DenseMapInfo<LocationSize>::getTombstoneKey());
  298            DenseMapInfo<LocationSize>::getHashValue(Val.Size) ^
include/llvm/LinkAllPasses.h
  238       X.add(nullptr, llvm::LocationSize::unknown(),
lib/Analysis/AliasAnalysisEvaluator.cpp
  142     auto I1Size = LocationSize::unknown();
  142     auto I1Size = LocationSize::unknown();
  145       I1Size = LocationSize::precise(DL.getTypeStoreSize(I1ElTy));
  148       auto I2Size = LocationSize::unknown();
  148       auto I2Size = LocationSize::unknown();
  151         I2Size = LocationSize::precise(DL.getTypeStoreSize(I2ElTy));
  233       auto Size = LocationSize::unknown();
  233       auto Size = LocationSize::unknown();
  236         Size = LocationSize::precise(DL.getTypeStoreSize(ElTy));
lib/Analysis/AliasSetTracker.cpp
  136                           LocationSize Size, const AAMDNodes &AAInfo,
  198 AliasResult AliasSet::aliasesPointer(const Value *Ptr, LocationSize Size,
  305                                                     LocationSize Size,
  355   const LocationSize Size = MemLoc.Size;
  403 void AliasSetTracker::add(Value *Ptr, LocationSize Size,
  677       if (I.getSize() == LocationSize::unknown())
lib/Analysis/BasicAliasAnalysis.cpp
  240                                      const LocationSize &LocSize,
 1084                                             LocationSize MaybeV1Size,
 1086                                             LocationSize MaybeV2Size,
 1102   if (MaybeV1Size == LocationSize::unknown() ||
 1103       MaybeV2Size == LocationSize::unknown())
 1273       LocationSize MaybeObjectAccessSize) {
 1275   if (MaybeObjectAccessSize == LocationSize::unknown() || !GEPOp->isInBounds())
 1311     const GEPOperator *GEP1, LocationSize V1Size, const AAMDNodes &V1AAInfo,
 1312     const Value *V2, LocationSize V2Size, const AAMDNodes &V2AAInfo,
 1348         aliasCheck(UnderlyingV1, LocationSize::unknown(), AAMDNodes(),
 1349                    UnderlyingV2, LocationSize::unknown(), AAMDNodes(), AAQI);
 1408     if (V1Size == LocationSize::unknown() && V2Size == LocationSize::unknown())
 1408     if (V1Size == LocationSize::unknown() && V2Size == LocationSize::unknown())
 1411     AliasResult R = aliasCheck(UnderlyingV1, LocationSize::unknown(),
 1412                                AAMDNodes(), V2, LocationSize::unknown(),
 1444       if (V2Size != LocationSize::unknown()) {
 1458       if (V1Size != LocationSize::unknown() &&
 1459           V2Size != LocationSize::unknown()) {
 1509     if (V1Size != LocationSize::unknown() &&
 1510         V2Size != LocationSize::unknown() && ModOffset.uge(V2Size.getValue()) &&
 1518         V2Size != LocationSize::unknown() &&
 1548 BasicAAResult::aliasSelect(const SelectInst *SI, LocationSize SISize,
 1550                            LocationSize V2Size, const AAMDNodes &V2AAInfo,
 1581 AliasResult BasicAAResult::aliasPHI(const PHINode *PN, LocationSize PNSize,
 1583                                     LocationSize V2Size,
 1705     PNSize = LocationSize::unknown();
 1732 AliasResult BasicAAResult::aliasCheck(const Value *V1, LocationSize V1Size,
 1734                                       LocationSize V2Size, AAMDNodes V2AAInfo,
 1979     LocationSize MaybeV1Size, LocationSize MaybeV2Size, APInt BaseOffset,
 1979     LocationSize MaybeV1Size, LocationSize MaybeV2Size, APInt BaseOffset,
 1981   if (VarIndices.size() != 2 || MaybeV1Size == LocationSize::unknown() ||
 1982       MaybeV2Size == LocationSize::unknown())
lib/Analysis/CFLAndersAliasAnalysis.cpp
  341   bool mayAlias(const Value *, LocationSize, const Value *, LocationSize) const;
  341   bool mayAlias(const Value *, LocationSize, const Value *, LocationSize) const;
  520     const Value *LHS, LocationSize MaybeLHSSize, const Value *RHS,
  521     LocationSize MaybeRHSSize) const {
  561       if (MaybeLHSSize == LocationSize::unknown() ||
  562           MaybeRHSSize == LocationSize::unknown())
lib/Analysis/DependenceAnalysis.cpp
  650   MemoryLocation LocAS(LocA.Ptr, LocationSize::unknown(), LocA.AATags);
  651   MemoryLocation LocBS(LocB.Ptr, LocationSize::unknown(), LocB.AATags);
lib/Analysis/Lint.cpp
  336       auto Size = LocationSize::unknown();
  336       auto Size = LocationSize::unknown();
  341           Size = LocationSize::precise(Len->getValue().getZExtValue());
lib/Analysis/Loads.cpp
  388   auto AccessSize = LocationSize::precise(DL.getTypeStoreSize(AccessTy));
  388   auto AccessSize = LocationSize::precise(DL.getTypeStoreSize(AccessTy));
lib/Analysis/LoopAccessAnalysis.cpp
  511     AST.add(Ptr, LocationSize::unknown(), Loc.AATags);
  520     AST.add(Ptr, LocationSize::unknown(), Loc.AATags);
lib/Analysis/MemoryLocation.cpp
   41       LocationSize::precise(DL.getTypeStoreSize(LI->getType())), AATags);
   50                         LocationSize::precise(DL.getTypeStoreSize(
   59   return MemoryLocation(VI->getPointerOperand(), LocationSize::unknown(),
   69                         LocationSize::precise(DL.getTypeStoreSize(
   80                         LocationSize::precise(DL.getTypeStoreSize(
   94   auto Size = LocationSize::unknown();
   94   auto Size = LocationSize::unknown();
   96     Size = LocationSize::precise(C->getValue().getZExtValue());
  115   auto Size = LocationSize::unknown();
  115   auto Size = LocationSize::unknown();
  117     Size = LocationSize::precise(C->getValue().getZExtValue());
  147         return MemoryLocation(Arg, LocationSize::precise(LenCI->getZExtValue()),
  157           LocationSize::precise(
  165         return MemoryLocation(Arg, LocationSize::precise(0), AATags);
  169           LocationSize::precise(
  178           Arg, LocationSize::precise(DL.getTypeStoreSize(II->getType())),
  184                             LocationSize::precise(DL.getTypeStoreSize(
  201       return MemoryLocation(Arg, LocationSize::precise(16), AATags);
  204       return MemoryLocation(Arg, LocationSize::precise(LenCI->getZExtValue()),
  209   return MemoryLocation(Call->getArgOperand(ArgIdx), LocationSize::unknown(),
lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
   84                              AO ? LocationSize::unknown() : LocA.Size,
   87                              BO ? LocationSize::unknown() : LocB.Size,
lib/CodeGen/ImplicitNullChecks.cpp
  350           AA->alias(MemoryLocation(MMO1->getValue(), LocationSize::unknown(),
  352                     MemoryLocation(MMO2->getValue(), LocationSize::unknown(),
lib/CodeGen/MachinePipeliner.cpp
  733               MemoryLocation(MMO1->getValue(), LocationSize::unknown(),
  735               MemoryLocation(MMO2->getValue(), LocationSize::unknown(),
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
 4049                LocationSize::precise(DAG.getDataLayout().getTypeStoreSize(Ty)),
 4470     ML = MemoryLocation(PtrOperand, LocationSize::precise(
 4520                          LocationSize::precise(
lib/Target/ARM/ARMParallelDSP.cpp
  377   const auto Size = LocationSize::unknown();
  377   const auto Size = LocationSize::unknown();
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
 1974   LocationSize AccessSize = LocationSize::unknown();
 1974   LocationSize AccessSize = LocationSize::unknown();
 1979     AccessSize = LocationSize::precise((BECst->getValue()->getZExtValue() + 1) *
lib/Transforms/IPO/FunctionAttrs.cpp
  170         MemoryLocation Loc(Arg, LocationSize::unknown(), AAInfo);
lib/Transforms/Scalar/LICM.cpp
 1160                   MemoryLocation(Op, LocationSize::unknown(), AAMDNodes()),
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
  865   LocationSize AccessSize = LocationSize::unknown();
  865   LocationSize AccessSize = LocationSize::unknown();
  870     AccessSize = LocationSize::precise((BECst->getValue()->getZExtValue() + 1) *
lib/Transforms/Scalar/MemCpyOptimizer.cpp
  863   ModRefInfo MR = AA.getModRefInfo(C, cpyDest, LocationSize::precise(srcSize));
  866     MR = AA.callCapturesBefore(C, cpyDest, LocationSize::precise(srcSize), &DT);
 1265       MemoryLocation(ByValArg, LocationSize::precise(ByValSize)), true,
unittests/Analysis/AliasAnalysisTest.cpp
   57         (void)AA.alias(P1, LocationSize::unknown(), P2,
   58                        LocationSize::unknown());
usr/include/c++/7.4.0/bits/move.h
   98     move(_Tp&& __t) noexcept
  184     typename enable_if<__and_<__not_<__is_tuple_like<_Tp>>,
  185 			      is_move_constructible<_Tp>,
  186 			      is_move_assignable<_Tp>>::value>::type
  187     swap(_Tp& __a, _Tp& __b)
  187     swap(_Tp& __a, _Tp& __b)
  198       _Tp __tmp = _GLIBCXX_MOVE(__a);
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
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
  567     : public __is_null_pointer_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
  631     : public __is_member_pointer_helper<typename remove_cv<_Tp>::type>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  825     : public __is_destructible_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
 1160     : public is_constructible<_Tp, _Tp&&>
 1160     : public is_constructible<_Tp, _Tp&&>
 1166     : public __is_move_constructible_impl<_Tp>
 1215     : public __and_<is_constructible<_Tp, _Args...>,
 1216 		    __is_nt_constructible_impl<_Tp, _Args...>>
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1252     : public __is_nothrow_move_constructible_impl<_Tp>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1310     : public __is_move_assignable_impl<_Tp>
 1352     : public is_nothrow_assignable<_Tp&, _Tp&&>
 1352     : public is_nothrow_assignable<_Tp&, _Tp&&>
 1358     : public __is_nt_move_assignable_impl<_Tp>
 1554     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1629     { typedef _Tp   type; };
 1633     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };
 2574       typename remove_reference<_Tp>::type>::type>::type