[all-commits] [llvm/llvm-project] d1e3d3: [AMDGPU][NFCI] Decouple actual register encodings ...

Ivan Kosarev via All-commits all-commits at lists.llvm.org
Wed Oct 25 05:25:03 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d1e3d320882a763a433cd5bc5ff5e641e0f46c75
      https://github.com/llvm/llvm-project/commit/d1e3d320882a763a433cd5bc5ff5e641e0f46c75
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2023-10-25 (Wed, 25 Oct 2023)

  Changed paths:
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp

  Log Message:
  -----------
  [AMDGPU][NFCI] Decouple actual register encodings from HWEncoding values. (#69452)

The HWEncoding values currently form a strange mix of actual register
codes for some subtargets and types of operands and informational flags.
This patch removes the dependency allowing arbitrary changes in the
structure of HWEncoding values without breaking register encodings.

Such changes, in turn, would make it possible to speed up and simplify
getAVOperandEncoding() testing for AGPRs as well as other functions
dealing with register codes downstream. They would also allow to
maintain the same format of HWEncoding values across our downstream code
bases, thus simplifying merging in mainline changes.




More information about the All-commits mailing list