Index: docs/AMDGPUUsage.rst =================================================================== --- docs/AMDGPUUsage.rst +++ docs/AMDGPUUsage.rst @@ -424,8 +424,6 @@ 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 Index: lib/Target/AMDGPU/AMDGPUSubtarget.cpp =================================================================== --- lib/Target/AMDGPU/AMDGPUSubtarget.cpp +++ lib/Target/AMDGPU/AMDGPUSubtarget.cpp @@ -340,12 +340,6 @@ 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 @@ 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; } Index: test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll =================================================================== --- test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll +++ test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll @@ -264,7 +264,7 @@ 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" } Index: test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll =================================================================== --- test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll +++ test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll @@ -96,5 +96,5 @@ 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 }