[PATCH] D138141: [amdgpu] Reimplement LDS lowering
Matt Arsenault via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 29 16:11:04 PST 2022
arsenm added inline comments.
================
Comment at: llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp:502
+
+ std::vector<Constant *> Elements;
+ for (size_t i = 0; i < Variables.size(); i++) {
----------------
SmallVector
================
Comment at: llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp:534
+ std::vector<Constant *> overallConstantExprElts(kernels.size());
+ for (size_t i = 0; i < kernels.size(); i++) {
+
----------------
Use NumberKernels from above?
================
Comment at: llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp:535
+ for (size_t i = 0; i < kernels.size(); i++) {
+
+ LDSVariableReplacement Replacement = KernelToReplacement[kernels[i]];
----------------
Extra line
================
Comment at: llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp:572
+ BasicBlock::iterator it =
+ F->getEntryBlock().getFirstInsertionPt();
+ Instruction &i = *it;
----------------
getFirstNonPHIOrDbgOrAlloca
================
Comment at: llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp:586
+ for (Use &U : make_early_inc_range(GV->uses())) {
+
+ auto *I = dyn_cast<Instruction>(U.getUser());
----------------
Extra line
================
Comment at: llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp:589
+ if (!I) {
+ continue;
+ }
----------------
The constant expression case matters?
In particular instruction uses of addrspacecasted globals come up a lot. The constant initializer case is harder
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D138141/new/
https://reviews.llvm.org/D138141
More information about the llvm-commits
mailing list