diff --git a/llvm/docs/AMDGPUUsage.rst b/llvm/docs/AMDGPUUsage.rst index 38a8cbf2b7dc..f44360455714 100644 --- a/llvm/docs/AMDGPUUsage.rst +++ b/llvm/docs/AMDGPUUsage.rst @@ -424,8 +424,6 @@ The AMDGPU backend supports the following LLVM IR attributes. argument block size for the implicit arguments. This varies by OS and language (for OpenCL see :ref:`opencl-kernel-implicit-arguments-appended-for-amdhsa-os-table`). - "amdgpu-max-work-group-size"="n" Specify the maximum work-group size that will be specifed - when the kernel is dispatched. "amdgpu-num-sgpr"="n" Specifies the number of SGPRs to use. Generated by the ``amdgpu_num_sgpr`` CLANG attribute [CLANG-ATTR]_. "amdgpu-num-vgpr"="n" Specifies the number of VGPRs to use. Generated by the diff --git a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp index 09b806bd06a5..2a0f5654e5a8 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp @@ -340,12 +340,6 @@ std::pair AMDGPUSubtarget::getFlatWorkGroupSizes( std::pair Default = getDefaultFlatWorkGroupSize(F.getCallingConv()); - // TODO: Do not process "amdgpu-max-work-group-size" attribute once mesa - // starts using "amdgpu-flat-work-group-size" attribute. - Default.second = AMDGPU::getIntegerAttribute( - F, "amdgpu-max-work-group-size", Default.second); - Default.first = std::min(Default.first, Default.second); - // Requested minimum/maximum flat work group sizes. std::pair Requested = AMDGPU::getIntegerPairAttribute( F, "amdgpu-flat-work-group-size", Default); @@ -379,10 +373,7 @@ std::pair AMDGPUSubtarget::getWavesPerEU( getMaxWavesPerEU(FlatWorkGroupSizes.second); bool RequestedFlatWorkGroupSize = false; - // TODO: Do not process "amdgpu-max-work-group-size" attribute once mesa - // starts using "amdgpu-flat-work-group-size" attribute. - if (F.hasFnAttribute("amdgpu-max-work-group-size") || - F.hasFnAttribute("amdgpu-flat-work-group-size")) { + if (F.hasFnAttribute("amdgpu-flat-work-group-size")) { Default.first = MinImpliedByFlatWorkGroupSize; RequestedFlatWorkGroupSize = true; } diff --git a/llvm/test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll b/llvm/test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll index 4fbf5e657dff..9129c56bfd47 100644 --- a/llvm/test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll +++ b/llvm/test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll @@ -264,7 +264,7 @@ entry: ret void } -attributes #0 = { nounwind "amdgpu-max-work-group-size"="63" } +attributes #0 = { nounwind "amdgpu-flat-work-group-size"="63,63" } attributes #1 = { nounwind "amdgpu-waves-per-eu"="1,3" "amdgpu-flat-work-group-size"="256,256" } attributes #2 = { nounwind "amdgpu-waves-per-eu"="1,1" "amdgpu-flat-work-group-size"="1600,1600" } attributes #3 = { nounwind "amdgpu-waves-per-eu"="1,10" } diff --git a/llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll b/llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll index afe05cd79b2a..15e8604930d5 100644 --- a/llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll +++ b/llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll @@ -96,5 +96,5 @@ entry: declare i32 @llvm.amdgcn.workitem.id.x() #1 -attributes #0 = { nounwind "amdgpu-max-work-group-size"="64" } +attributes #0 = { nounwind "amdgpu-flat-work-group-size"="64,64" } attributes #1 = { nounwind readnone }