llvm-project
44713f15 - [AMDGPU][MC] Separate VOPC MnemonicAlias from Instruction (#89105)

Commit
1 year ago
[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.
Author
Parents
Loading