[PATCH] D31804: [AMDGPU] Generate range metadata for workitem id
Matt Arsenault via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 11 13:54:50 PDT 2017
arsenm added inline comments.
================
Comment at: lib/Target/AMDGPU/AMDGPULowerIntrinsics.cpp:106
+bool AMDGPULowerIntrinsics::MakeLIDRangeMetadata(Function &F) const {
+ bool Changed = false;
----------------
Lowercase first letter
================
Comment at: lib/Target/AMDGPU/AMDGPUSubtarget.cpp:251-255
+ if (isa<LoadInst>(I) && !I->getMetadata(LLVMContext::MD_invariant_load)) {
+ MDNode *MD = MDNode::get(Kernel->getContext(), None);
+ I->setMetadata(LLVMContext::MD_invariant_load, MD);
+ Changed = true;
+ }
----------------
This seems to be unconditionally adding invariant load metadata. Why? This is broken and also unrelated to the range metadata
================
Comment at: lib/Target/AMDGPU/AMDGPUSubtarget.h:517
+ /// Creates value range metadata on an workitemid.* inrinsic call or load.
+ bool MakeLIDRangeMetadata(Instruction *I) const;
};
----------------
Putting this in the subtarget is a weird place. Why not leave it in the pass?
Repository:
rL LLVM
https://reviews.llvm.org/D31804
More information about the llvm-commits
mailing list