Skip to content

Commit 8f6e29e

Browse files
committed
Reviewer feedback
1 parent 3157a4f commit 8f6e29e

File tree

2 files changed

+8
-9
lines changed

2 files changed

+8
-9
lines changed

llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1051,6 +1051,7 @@ static SDValue selectBaseADDR(SDValue N, SelectionDAG *DAG) {
10511051
}
10521052

10531053
static SDValue accumulateOffset(SDValue &Addr, SDLoc DL, SelectionDAG *DAG) {
1054+
Addr = stripAssertAlign(Addr);
10541055
APInt AccumulatedOffset(64u, 0);
10551056
while (isAddLike(Addr)) {
10561057
const auto *CN = dyn_cast<ConstantSDNode>(Addr.getOperand(1));

llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -415,11 +415,11 @@ static void adjustByValArgAlignment(Argument *Arg, Value *ArgInParamAS,
415415
// Create a call to the nvvm_internal_addrspace_wrap intrinsic and set the
416416
// alignment of the return value based on the alignment of the argument.
417417
static CallInst *createNVVMInternalAddrspaceWrap(IRBuilder<> &IRB,
418-
Argument &Arg,
419-
const Twine &Name = "") {
420-
CallInst *ArgInParam = IRB.CreateIntrinsic(
421-
Intrinsic::nvvm_internal_addrspace_wrap,
422-
{IRB.getPtrTy(ADDRESS_SPACE_PARAM), Arg.getType()}, &Arg, {}, Name);
418+
Argument &Arg) {
419+
CallInst *ArgInParam =
420+
IRB.CreateIntrinsic(Intrinsic::nvvm_internal_addrspace_wrap,
421+
{IRB.getPtrTy(ADDRESS_SPACE_PARAM), Arg.getType()},
422+
&Arg, {}, Arg.getName() + ".param");
423423

424424
if (MaybeAlign ParamAlign = Arg.getParamAlign())
425425
ArgInParam->addRetAttr(
@@ -531,8 +531,7 @@ void copyByValParam(Function &F, Argument &Arg) {
531531
Arg.getParamAlign().value_or(DL.getPrefTypeAlign(StructType)));
532532
Arg.replaceAllUsesWith(AllocA);
533533

534-
CallInst *ArgInParam =
535-
createNVVMInternalAddrspaceWrap(IRB, Arg, Arg.getName());
534+
CallInst *ArgInParam = createNVVMInternalAddrspaceWrap(IRB, Arg);
536535

537536
// Be sure to propagate alignment to this load; LLVM doesn't know that NVPTX
538537
// addrspacecast preserves alignment. Since params are constant, this load
@@ -593,8 +592,7 @@ static void handleByValParam(const NVPTXTargetMachine &TM, Argument *Arg) {
593592
// argument already in the param address space, we need to use the noop
594593
// intrinsic, this had the added benefit of preventing other optimizations
595594
// from folding away this pair of addrspacecasts.
596-
auto *ParamSpaceArg =
597-
createNVVMInternalAddrspaceWrap(IRB, *Arg, Arg->getName() + ".param");
595+
auto *ParamSpaceArg = createNVVMInternalAddrspaceWrap(IRB, *Arg);
598596

599597
// Cast param address to generic address space.
600598
Value *GenericArg = IRB.CreateAddrSpaceCast(

0 commit comments

Comments
 (0)