[all-commits] [llvm/llvm-project] a24fae: [AMDGPU][True16][GlobalISel] Fix v2*16 build_vecto...

Mirko Brkušanin via All-commits all-commits at lists.llvm.org
Mon Aug 4 04:06:27 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a24fae3aefd14cfff4bd911101cd0a1fb4dfdafe
      https://github.com/llvm/llvm-project/commit/a24fae3aefd14cfff4bd911101cd0a1fb4dfdafe
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2025-08-04 (Mon, 04 Aug 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/build-vector-packed-partial-undef.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/fminimum.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/strict_fsub.f16.ll
    M llvm/test/CodeGen/AMDGPU/strict_ldexp.f16.ll

  Log Message:
  -----------
  [AMDGPU][True16][GlobalISel] Fix v2*16 build_vector patterns (#151496)

- Pattern with IMPLICIT_DEF failed to generate an entry in MatchTable and
did not report an error, just silently failed. This is fixed by casting
IMPLICIT_DEF to appropriate type. This also fixes selecting
"build_vector s16, undef" for GlobalISel with True16.
- Add pattern for "build_vector undef, s16" that will work for GlobalISel.
True16 GlobalISel has a G_TRUNC that it needs to deal with.
- Use REG_SEQUENCE for Real16 patterns instead of V_LSHLREV_B32_e64 to
generate more optimal code.



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