Lines Matching refs:GS
60 static bool analyzeGlobalAux(const Value *V, GlobalStatus &GS, in analyzeGlobalAux() argument
64 GS.StoredType = GlobalStatus::StoredOnce; in analyzeGlobalAux()
69 GS.HasNonInstructionUser = true; in analyzeGlobalAux()
77 if (analyzeGlobalAux(CE, GS, VisitedUsers)) in analyzeGlobalAux()
80 if (!GS.HasMultipleAccessingFunctions) { in analyzeGlobalAux()
82 if (!GS.AccessingFunction) in analyzeGlobalAux()
83 GS.AccessingFunction = F; in analyzeGlobalAux()
84 else if (GS.AccessingFunction != F) in analyzeGlobalAux()
85 GS.HasMultipleAccessingFunctions = true; in analyzeGlobalAux()
88 GS.IsLoaded = true; in analyzeGlobalAux()
92 GS.Ordering = strongerOrdering(GS.Ordering, LI->getOrdering()); in analyzeGlobalAux()
102 GS.Ordering = strongerOrdering(GS.Ordering, SI->getOrdering()); in analyzeGlobalAux()
107 if (GS.StoredType != GlobalStatus::Stored) { in analyzeGlobalAux()
120 if (GS.StoredType < GlobalStatus::InitializerStored) in analyzeGlobalAux()
121 GS.StoredType = GlobalStatus::InitializerStored; in analyzeGlobalAux()
124 if (GS.StoredType < GlobalStatus::InitializerStored) in analyzeGlobalAux()
125 GS.StoredType = GlobalStatus::InitializerStored; in analyzeGlobalAux()
126 } else if (GS.StoredType < GlobalStatus::StoredOnce) { in analyzeGlobalAux()
127 GS.StoredType = GlobalStatus::StoredOnce; in analyzeGlobalAux()
128 GS.StoredOnceValue = StoredVal; in analyzeGlobalAux()
129 } else if (GS.StoredType == GlobalStatus::StoredOnce && in analyzeGlobalAux()
130 GS.StoredOnceValue == StoredVal) { in analyzeGlobalAux()
133 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
136 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
143 if (analyzeGlobalAux(I, GS, VisitedUsers)) in analyzeGlobalAux()
151 if (analyzeGlobalAux(I, GS, VisitedUsers)) in analyzeGlobalAux()
154 GS.IsCompared = true; in analyzeGlobalAux()
159 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
161 GS.IsLoaded = true; in analyzeGlobalAux()
166 GS.StoredType = GlobalStatus::Stored; in analyzeGlobalAux()
170 GS.IsLoaded = true; in analyzeGlobalAux()
175 GS.HasNonInstructionUser = true; in analyzeGlobalAux()
180 GS.HasNonInstructionUser = true; in analyzeGlobalAux()
191 bool GlobalStatus::analyzeGlobal(const Value *V, GlobalStatus &GS) { in analyzeGlobal() argument
193 return analyzeGlobalAux(V, GS, VisitedUsers); in analyzeGlobal()