Lines Matching refs:ModRefInfo

64   typedef SmallDenseMap<const GlobalValue *, ModRefInfo, 16> GlobalInfoMapType;
87 /// chosen to mix together with ModRefInfo bits.
88 /// FIXME: This assumes ModRefInfo lattice will remain 4 bits!
94 static_assert((MayReadAnyGlobal & static_cast<int>(ModRefInfo::ModRef)) == 0,
96 static_assert(((MayReadAnyGlobal | static_cast<int>(ModRefInfo::ModRef)) >>
132 /// the corresponding ModRefInfo.
133 ModRefInfo globalClearMayReadAnyGlobal(int I) const {
134 return ModRefInfo(I & static_cast<int>(ModRefInfo::ModRef));
137 /// Returns the \c ModRefInfo info for this function.
138 ModRefInfo getModRefInfo() const {
142 /// Adds new \c ModRefInfo for this function to its state.
143 void addModRefInfo(ModRefInfo NewMRI) {
154 /// Returns the \c ModRefInfo info for this function w.r.t. a particular
156 ModRefInfo getModRefInfoForGlobal(const GlobalValue &GV) const {
157 ModRefInfo GlobalMRI =
158 mayReadAnyGlobal() ? ModRefInfo::Ref : ModRefInfo::NoModRef;
180 void addModRefInfoForGlobal(const GlobalValue &GV, ModRefInfo NewMRI) {
200 /// function may read any global. The low two bits are the ModRefInfo. And
202 /// ModRefInfo specific to that GlobalValue.
291 FunctionInfos[Reader].addModRefInfoForGlobal(GV, ModRefInfo::Ref);
300 FunctionInfos[Writer].addModRefInfoForGlobal(GV, ModRefInfo::Mod);
543 FI.addModRefInfo(ModRefInfo::Ref);
549 FI.addModRefInfo(ModRefInfo::ModRef);
609 FI.addModRefInfo(ModRefInfo::Ref);
611 FI.addModRefInfo(ModRefInfo::Mod);
903 ModRefInfo GlobalsAAResult::getModRefInfoForArgument(const CallBase *Call,
907 return ModRefInfo::NoModRef;
908 ModRefInfo ConservativeResult =
909 Call->onlyReadsMemory() ? ModRefInfo::Ref : ModRefInfo::ModRef;
932 return ModRefInfo::NoModRef;
935 ModRefInfo GlobalsAAResult::getModRefInfo(const CallBase *Call,
938 ModRefInfo Known = ModRefInfo::ModRef;
945 // that has had their address taken, keep looking for a tighter ModRefInfo.