[all-commits] [llvm/llvm-project] 743e1b: [AMDGPU] Add `getLDSEncodingGranule` to TargetPars...

Chinmay Deshpande via All-commits all-commits at lists.llvm.org
Tue Sep 22 09:32:23 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 743e1b5d194ad0ee9a55a05d52e3756a67ae2f99
      https://github.com/llvm/llvm-project/commit/743e1b5d194ad0ee9a55a05d52e3756a67ae2f99
  Author: Chinmay Deshpande <chdeshpa at amd.com>
  Date:   2026-09-22 (Tue, 22 Sep 2026)

  Changed paths:
    M llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUFeatures.td
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/R600Processors.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
    A llvm/test/CodeGen/AMDGPU/lds-size-gfx1030.ll
    A llvm/test/CodeGen/AMDGPU/lds-size-gfx9-4-generic.ll
    M llvm/test/TableGen/AMDGPUTargetDefLDSAllocGranularity.td
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AMDGPU] Add `getLDSEncodingGranule` to TargetParser (#224852)

Model LDS encoding granularity with dedicated features and expose the
byte-valued `getLDSEncodingGranule` query for GPUKind and subarch.

Migrate program resource register and PAL metadata encoding to the new
query and remove `getLdsDwGranularity` from `AMDGPUBaseInfo`

---

This PR is inspired by https://github.com/llvm/llvm-project/pull/219495.

> The AMDGPU backend uses the wrong LDS allocation granularity when
computing occupancy for RDNA 2 targets starting from GFX10.3. The
current value is correct for the PAL metadata, but leads to wrong
occupancy calculations as observed by users.. The values correspond to
the Mesa implementation, see
https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/amd/common/ac_shader_util.h#L355.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list