Lines Matching refs:GlobalVariable
250 const DenseSet<GlobalVariable *> &LocalVars) { in removeLocalVarsFromUsedLists()
254 for (GlobalVariable *LocalVar : LocalVars) in removeLocalVarsFromUsedLists()
260 for (GlobalVariable *LocalVar : LocalVars) in removeLocalVarsFromUsedLists()
264 static void markUsedByKernel(Function *Func, GlobalVariable *SGV) { in markUsedByKernel()
302 GlobalVariable *SGV = nullptr;
303 DenseMap<GlobalVariable *, Constant *> LDSVarsToConstantGEP;
312 LLVMContext &Ctx, ArrayRef<GlobalVariable *> Variables, in getAddressesOfVariablesInKernel()
313 const DenseMap<GlobalVariable *, Constant *> &LDSVarsToConstantGEP) { in getAddressesOfVariablesInKernel() argument
324 for (GlobalVariable *GV : Variables) { in getAddressesOfVariablesInKernel()
336 static GlobalVariable *buildLookupTable( in buildLookupTable()
337 Module &M, ArrayRef<GlobalVariable *> Variables, in buildLookupTable()
368 return new GlobalVariable( in buildLookupTable()
375 GlobalVariable *LookupTable, in replaceUseWithTableLookup()
376 GlobalVariable *GV, Use &U, in replaceUseWithTableLookup()
411 Module &M, ArrayRef<GlobalVariable *> ModuleScopeVariables, in replaceUsesInInstructionsWithTableLookup()
412 GlobalVariable *LookupTable) { in replaceUsesInInstructionsWithTableLookup()
434 DenseSet<GlobalVariable *> const &VariableSet) { in kernelsThatIndirectlyAccessAnyOfPassedVariables()
444 for (GlobalVariable *GV : LDSUsesInfo.indirect_access[&Func]) { in kernelsThatIndirectlyAccessAnyOfPassedVariables()
455 static GlobalVariable *
461 GlobalVariable *GV = nullptr; in chooseBestVariableForModuleStrategy()
467 CandidateTy(GlobalVariable *GV, uint64_t UserCount, uint64_t AllocSize) in chooseBestVariableForModuleStrategy()
496 GlobalVariable *GV = K.first; in chooseBestVariableForModuleStrategy()
512 static void recordLDSAbsoluteAddress(Module *M, GlobalVariable *GV, in recordLDSAbsoluteAddress()
595 DenseSet<GlobalVariable *> &ModuleScopeVariables, in partitionVariablesIntoIndirectStrategies()
596 DenseSet<GlobalVariable *> &TableLookupVariables, in partitionVariablesIntoIndirectStrategies()
597 DenseSet<GlobalVariable *> &KernelAccessVariables, in partitionVariablesIntoIndirectStrategies()
598 DenseSet<GlobalVariable *> &DynamicVariables) { in partitionVariablesIntoIndirectStrategies()
600 GlobalVariable *HybridModuleRoot = in partitionVariablesIntoIndirectStrategies()
616 GlobalVariable *GV = K.first; in partitionVariablesIntoIndirectStrategies()
667 static GlobalVariable *lowerModuleScopeStructVariables( in lowerModuleScopeStructVariables()
668 Module &M, DenseSet<GlobalVariable *> const &ModuleScopeVariables, in lowerModuleScopeStructVariables()
738 DenseSet<GlobalVariable *> const &ModuleScopeVariables, in lowerKernelScopeStructVariables()
740 GlobalVariable *MaybeModuleScopeStruct) { in lowerKernelScopeStructVariables()
749 DenseSet<GlobalVariable *> KernelUsedVariables; in lowerKernelScopeStructVariables()
769 for (GlobalVariable *v : ModuleScopeVariables) { in lowerKernelScopeStructVariables()
818 static GlobalVariable *
837 auto UpdateMaxAlignment = [&MaxDynamicAlignment, &DL](GlobalVariable *GV) { in buildRepresentativeDynamicLDSInstance()
844 for (GlobalVariable *GV : LDSUsesInfo.indirect_access[func]) { in buildRepresentativeDynamicLDSInstance()
848 for (GlobalVariable *GV : LDSUsesInfo.direct_access[func]) { in buildRepresentativeDynamicLDSInstance()
854 GlobalVariable *N = new GlobalVariable( in buildRepresentativeDynamicLDSInstance()
864 DenseMap<Function *, GlobalVariable *> lowerDynamicLDSVariables( in lowerDynamicLDSVariables()
867 DenseSet<GlobalVariable *> const &DynamicVariables, in lowerDynamicLDSVariables()
869 DenseMap<Function *, GlobalVariable *> KernelToCreatedDynamicLDS; in lowerDynamicLDSVariables()
886 GlobalVariable *N = in lowerDynamicLDSVariables()
905 GlobalVariable *table = new GlobalVariable( in lowerDynamicLDSVariables()
910 for (GlobalVariable *GV : DynamicVariables) { in lowerDynamicLDSVariables()
942 for (GlobalVariable *GV : K.second) { in runOnModule()
948 DenseSet<GlobalVariable *> ModuleScopeVariables; in runOnModule()
949 DenseSet<GlobalVariable *> TableLookupVariables; in runOnModule()
950 DenseSet<GlobalVariable *> KernelAccessVariables; in runOnModule()
951 DenseSet<GlobalVariable *> DynamicVariables; in runOnModule()
971 GlobalVariable *MaybeModuleScopeStruct = lowerModuleScopeStructVariables( in runOnModule()
986 DenseSet<GlobalVariable *> Vec; in runOnModule()
1006 sortByName(std::vector<GlobalVariable *>(TableLookupVariables.begin(), in runOnModule()
1009 GlobalVariable *LookupTable = buildLookupTable( in runOnModule()
1022 DenseMap<Function *, GlobalVariable *> KernelToCreatedDynamicLDS = in runOnModule()
1067 GlobalVariable *KernelStruct = Replacement->second.SGV; in runOnModule()
1078 GlobalVariable *DynamicVariable = KernelToCreatedDynamicLDS[&Func]; in runOnModule()
1161 DenseSet<GlobalVariable *> const &LDSVarsToTransform) { in createLDSVariableReplacement()
1177 auto Sorted = sortByName(std::vector<GlobalVariable *>( in createLDSVariableReplacement()
1180 for (GlobalVariable *GV : Sorted) { in createLDSVariableReplacement()
1190 std::vector<GlobalVariable *> LocalVars; in createLDSVariableReplacement()
1197 GlobalVariable *FGV = in createLDSVariableReplacement()
1198 static_cast<GlobalVariable *>(const_cast<void *>(F.Id)); in createLDSVariableReplacement()
1210 LocalVars.push_back(new GlobalVariable( in createLDSVariableReplacement()
1228 [](const GlobalVariable *V) -> Type * { return V->getValueType(); }); in createLDSVariableReplacement()
1234 GlobalVariable *SGV = new GlobalVariable( in createLDSVariableReplacement()
1240 DenseMap<GlobalVariable *, Constant *> Map; in createLDSVariableReplacement()
1243 GlobalVariable *GV = LocalVars[I]; in createLDSVariableReplacement()
1259 Module &M, DenseSet<GlobalVariable *> const &LDSVarsToTransformArg, in replaceLDSVariablesWithStruct()
1267 auto LDSVarsToTransform = sortByName(std::vector<GlobalVariable *>( in replaceLDSVariablesWithStruct()
1289 GlobalVariable *GV = LDSVarsToTransform[I]; in replaceLDSVariablesWithStruct()