@@ -92,6 +92,7 @@ class VOP2_Real <VOP2_Pseudo ps, int EncodingFamily> :
92
92
93
93
// copy relevant pseudo op flags
94
94
let SubtargetPredicate = ps.SubtargetPredicate;
95
+ let OtherPredicates = ps.OtherPredicates;
95
96
let AsmMatchConverter = ps.AsmMatchConverter;
96
97
let AsmVariantName = ps.AsmVariantName;
97
98
let Constraints = ps.Constraints;
@@ -494,14 +495,14 @@ defm V_OR_B32 : VOP2Inst <"v_or_b32", VOP_PAT_GEN<VOP_I32_I32_I32>, or>;
494
495
defm V_XOR_B32 : VOP2Inst <"v_xor_b32", VOP_PAT_GEN<VOP_I32_I32_I32>, xor>;
495
496
496
497
let mayRaiseFPException = 0 in {
497
- let SubtargetPredicate = HasMadMacF32Insts in {
498
+ let OtherPredicates = [ HasMadMacF32Insts] in {
498
499
let Constraints = "$vdst = $src2", DisableEncoding="$src2",
499
500
isConvertibleToThreeAddress = 1 in {
500
501
defm V_MAC_F32 : VOP2Inst <"v_mac_f32", VOP_MAC_F32>;
501
502
}
502
503
503
504
def V_MADAK_F32 : VOP2_Pseudo <"v_madak_f32", VOP_MADAK_F32, []>;
504
- } // End SubtargetPredicate = HasMadMacF32Insts
505
+ } // End OtherPredicates = [ HasMadMacF32Insts]
505
506
}
506
507
507
508
// No patterns so that the scalar instructions are always selected.
@@ -873,6 +874,7 @@ class Base_VOP2_DPP16<bits<6> op, VOP2_DPP_Pseudo ps,
873
874
VOP2_DPP<op, ps, opName, p, 1> {
874
875
let AssemblerPredicate = HasDPP16;
875
876
let SubtargetPredicate = HasDPP16;
877
+ let OtherPredicates = ps.OtherPredicates;
876
878
}
877
879
878
880
class VOP2_DPP16<bits<6> op, VOP2_DPP_Pseudo ps,
@@ -899,6 +901,7 @@ class VOP2_DPP8<bits<6> op, VOP2_Pseudo ps,
899
901
900
902
let AssemblerPredicate = HasDPP8;
901
903
let SubtargetPredicate = HasDPP8;
904
+ let OtherPredicates = ps.OtherPredicates;
902
905
}
903
906
904
907
//===----------------------------------------------------------------------===//
0 commit comments