diff options
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp | 27 |
1 files changed, 3 insertions, 24 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp index 437e01c37c6b..2d8b427c0cf9 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp @@ -144,7 +144,7 @@ void AMDGPUTTIImpl::getUnrollingPreferences(Loop *L, ScalarEvolution &SE, unsigned MaxBoost = std::max(ThresholdPrivate, ThresholdLocal); for (const BasicBlock *BB : L->getBlocks()) { - const DataLayout &DL = BB->getModule()->getDataLayout(); + const DataLayout &DL = BB->getDataLayout(); unsigned LocalGEPsSeen = 0; if (llvm::any_of(L->getSubLoops(), [BB](const Loop* SubLoop) { @@ -501,10 +501,7 @@ bool GCNTTIImpl::getTgtMemIntrinsic(IntrinsicInst *Inst, MemIntrinsicInfo &Info) const { switch (Inst->getIntrinsicID()) { case Intrinsic::amdgcn_ds_ordered_add: - case Intrinsic::amdgcn_ds_ordered_swap: - case Intrinsic::amdgcn_ds_fadd: - case Intrinsic::amdgcn_ds_fmin: - case Intrinsic::amdgcn_ds_fmax: { + case Intrinsic::amdgcn_ds_ordered_swap: { auto *Ordering = dyn_cast<ConstantInt>(Inst->getArgOperand(2)); auto *Volatile = dyn_cast<ConstantInt>(Inst->getArgOperand(4)); if (!Ordering || !Volatile) @@ -850,7 +847,7 @@ bool GCNTTIImpl::isInlineAsmSourceOfDivergence( if (Indices.size() > 1) return true; - const DataLayout &DL = CI->getModule()->getDataLayout(); + const DataLayout &DL = CI->getDataLayout(); const SIRegisterInfo *TRI = ST->getRegisterInfo(); TargetLowering::AsmOperandInfoVector TargetConstraints = TLI->ParseConstraints(DL, ST->getRegisterInfo(), *CI); @@ -1019,9 +1016,6 @@ bool GCNTTIImpl::isAlwaysUniform(const Value *V) const { bool GCNTTIImpl::collectFlatAddressOperands(SmallVectorImpl<int> &OpIndexes, Intrinsic::ID IID) const { switch (IID) { - case Intrinsic::amdgcn_ds_fadd: - case Intrinsic::amdgcn_ds_fmin: - case Intrinsic::amdgcn_ds_fmax: case Intrinsic::amdgcn_is_shared: case Intrinsic::amdgcn_is_private: case Intrinsic::amdgcn_flat_atomic_fadd: @@ -1041,21 +1035,6 @@ Value *GCNTTIImpl::rewriteIntrinsicWithAddressSpace(IntrinsicInst *II, Value *NewV) const { auto IntrID = II->getIntrinsicID(); switch (IntrID) { - case Intrinsic::amdgcn_ds_fadd: - case Intrinsic::amdgcn_ds_fmin: - case Intrinsic::amdgcn_ds_fmax: { - const ConstantInt *IsVolatile = cast<ConstantInt>(II->getArgOperand(4)); - if (!IsVolatile->isZero()) - return nullptr; - Module *M = II->getParent()->getParent()->getParent(); - Type *DestTy = II->getType(); - Type *SrcTy = NewV->getType(); - Function *NewDecl = - Intrinsic::getDeclaration(M, II->getIntrinsicID(), {DestTy, SrcTy}); - II->setArgOperand(0, NewV); - II->setCalledFunction(NewDecl); - return II; - } case Intrinsic::amdgcn_is_shared: case Intrinsic::amdgcn_is_private: { unsigned TrueAS = IntrID == Intrinsic::amdgcn_is_shared ? |
