[all-commits] [llvm/llvm-project] e61b2a: [AArch64] Remove GPR64arg register class (#212457)

Cullen Rhodes via All-commits all-commits at lists.llvm.org
Wed Jul 29 06:46:26 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e61b2abe8b7d7baef9192b41aa92f123640ca598
      https://github.com/llvm/llvm-project/commit/e61b2abe8b7d7baef9192b41aa92f123640ca598
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-07-29 (Wed, 29 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-inline-asm.ll
    M llvm/test/TableGen/aarch64-register-info-stats.td

  Log Message:
  -----------
  [AArch64] Remove GPR64arg register class (#212457)

GPR64arg was added in fcbec02ea6fb to describe X0-X7 for the reserved
argument-register check. It is an ABI register set rather than an
allocation constraint and should not be used for register allocation.
Given it has a single use that only cares about the number of registers,
a register class isn't necessary.

This exposes that GlobalISel recomputes the minimal register class when
a matching inline asm input is tied to a fixed physical-register output.
For X2 that class was GPR64arg, getRegistersForValue already asks the
target which class implements the output constraint. Retain that class
and reuse it for the matching input.

Assisted-by: codex



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