[all-commits] [llvm/llvm-project] 44713f: [AMDGPU][MC] Separate VOPC MnemonicAlias from Inst...

Joe Nash via All-commits all-commits at lists.llvm.org
Thu Apr 18 10:50:17 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 44713f15f9116a83f168f420ebddc6ae061883c0
      https://github.com/llvm/llvm-project/commit/44713f15f9116a83f168f420ebddc6ae061883c0
  Author: Joe Nash <joseph.nash at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td

  Log Message:
  -----------
  [AMDGPU][MC] Separate VOPC MnemonicAlias from Instruction (#89105)

Tablegen classes MnemonicAlias, Requires, and VOPC_Real, all define a
field 'Predicates'. The prior formulation resulted in the instantiated
record inheriting from all three to only have the Predicate set in
Requires, i.e. Gen.AssemblerPredicate. This breaks the design of
GCNPredicateControl (which is a parent class of VOPC_Real) that allows
multiple predicates such as SubtargetPredicate and OtherPredicates to be
set on an Instruction.
MnemonicAlias does not need to be defined in the same record as
VOPC_Real, so we can separate the definitions and remove Requires to
avoid the issue.
NFCI, but it enables future changes, such as setting multiple predicates
on a VOPC_Real.



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