[all-commits] [llvm/llvm-project] 1e5359: [AMDGPU] Treat KIMM32 and KIMM16 operand types as ...

Mirko BrkuĊĦanin via All-commits all-commits at lists.llvm.org
Fri Aug 11 09:56:04 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1e5359c6bad4d19ec6c6237ceb37d14b68e058cb
      https://github.com/llvm/llvm-project/commit/1e5359c6bad4d19ec6c6237ceb37d14b68e058cb
  Author: Mirko Brkusanin <Mirko.Brkusanin at amd.com>
  Date:   2023-08-11 (Fri, 11 Aug 2023)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    A llvm/test/CodeGen/AMDGPU/si-fold-kimm.mir

  Log Message:
  -----------
  [AMDGPU] Treat KIMM32 and KIMM16 operand types as noninlinable

While they are represent 32/16 bit immediate values they are already
included in encoding of the instructions that use them and are not true
literals. FMAMK and FMAAK instructions that use them are marked with fixed
size so getInstSizeInBytes will not increase the size for these operands.

We also add tests whose logic relies on KIMM16 and KIMM32 being considered
not inlinable.

Differential Revision: https://reviews.llvm.org/D157624




More information about the All-commits mailing list