Lines Matching refs:GS
64 static bool analyzeGlobalAux(const Value *V, GlobalStatus &GS, in analyzeGlobalAux() argument
68 GS.StoredType = GlobalStatus::StoredOnce; in analyzeGlobalAux()
77 if (analyzeGlobalAux(CE, GS, VisitedUsers)) in analyzeGlobalAux()
85 if (!GS.HasMultipleAccessingFunctions) { in analyzeGlobalAux()
87 if (!GS.AccessingFunction) in analyzeGlobalAux()
88 GS.AccessingFunction = F; in analyzeGlobalAux()
89 else if (GS.AccessingFunction != F) in analyzeGlobalAux()
90 GS.HasMultipleAccessingFunctions = true; in analyzeGlobalAux()
93 GS.IsLoaded = true; in analyzeGlobalAux()
97 GS.Ordering = strongerOrdering(GS.Ordering, LI->getOrdering()); in analyzeGlobalAux()
107 ++GS.NumStores; in analyzeGlobalAux()
109 GS.Ordering = strongerOrdering(GS.Ordering, SI->getOrdering()); in analyzeGlobalAux()
114 if (GS.StoredType != GlobalStatus::Stored) { in analyzeGlobalAux()
127 if (GS.StoredType < GlobalStatus::InitializerStored) in analyzeGlobalAux()
128 GS.StoredType = GlobalStatus::InitializerStored; in analyzeGlobalAux()
131 if (GS.StoredType < GlobalStatus::InitializerStored) in analyzeGlobalAux()
132 GS.StoredType = GlobalStatus::InitializerStored; in analyzeGlobalAux()
133 } else if (GS.StoredType < GlobalStatus::StoredOnce) { in analyzeGlobalAux()
134 GS.StoredType = GlobalStatus::StoredOnce; in analyzeGlobalAux()
135 GS.StoredOnceStore = SI; in analyzeGlobalAux()
136 } else if (GS.StoredType == GlobalStatus::StoredOnce && in analyzeGlobalAux()
137 GS.getStoredOnceValue() == StoredVal) { in analyzeGlobalAux()
140 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
143 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
150 if (analyzeGlobalAux(I, GS, VisitedUsers)) in analyzeGlobalAux()
158 if (analyzeGlobalAux(I, GS, VisitedUsers)) in analyzeGlobalAux()
161 GS.IsCompared = true; in analyzeGlobalAux()
166 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
168 GS.IsLoaded = true; in analyzeGlobalAux()
173 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
177 GS.IsLoaded = true; in analyzeGlobalAux()
192 bool GlobalStatus::analyzeGlobal(const Value *V, GlobalStatus &GS) { in analyzeGlobal() argument
194 return analyzeGlobalAux(V, GS, VisitedUsers); in analyzeGlobal()