@@ -904,7 +904,9 @@ def MOVs : AsI1<0b1101, (outs GPR:$dst), (ins so_reg:$src),
904
904
905
905
let isReMaterializable = 1, isAsCheapAsAMove = 1 in
906
906
def MOVi : AsI1<0b1101, (outs GPR:$dst), (ins so_imm:$src), DPFrm, IIC_iMOVi,
907
- "mov", " $dst, $src", [(set GPR:$dst, so_imm:$src)]>, UnaryDP;
907
+ "mov", " $dst, $src", [(set GPR:$dst, so_imm:$src)]>, UnaryDP {
908
+ let Inst{25} = 1;
909
+ }
908
910
909
911
def MOVrx : AsI1<0b1101, (outs GPR:$dst), (ins GPR:$src), Pseudo, IIC_iMOVsi,
910
912
"mov", " $dst, $src, rrx",
@@ -989,7 +991,9 @@ defm SBC : AI1_adde_sube_irs<0b0110, "sbc",
989
991
// These don't define reg/reg forms, because they are handled above.
990
992
def RSBri : AsI1<0b0011, (outs GPR:$dst), (ins GPR:$a, so_imm:$b), DPFrm,
991
993
IIC_iALUi, "rsb", " $dst, $a, $b",
992
- [(set GPR:$dst, (sub so_imm:$b, GPR:$a))]>;
994
+ [(set GPR:$dst, (sub so_imm:$b, GPR:$a))]> {
995
+ let Inst{25} = 1;
996
+ }
993
997
994
998
def RSBrs : AsI1<0b0011, (outs GPR:$dst), (ins GPR:$a, so_reg:$b), DPSoRegFrm,
995
999
IIC_iALUsr, "rsb", " $dst, $a, $b",
@@ -999,7 +1003,9 @@ def RSBrs : AsI1<0b0011, (outs GPR:$dst), (ins GPR:$a, so_reg:$b), DPSoRegFrm,
999
1003
let Defs = [CPSR] in {
1000
1004
def RSBSri : AI1<0b0011, (outs GPR:$dst), (ins GPR:$a, so_imm:$b), DPFrm,
1001
1005
IIC_iALUi, "rsb", "s $dst, $a, $b",
1002
- [(set GPR:$dst, (subc so_imm:$b, GPR:$a))]>;
1006
+ [(set GPR:$dst, (subc so_imm:$b, GPR:$a))]> {
1007
+ let Inst{25} = 1;
1008
+ }
1003
1009
def RSBSrs : AI1<0b0011, (outs GPR:$dst), (ins GPR:$a, so_reg:$b), DPSoRegFrm,
1004
1010
IIC_iALUsr, "rsb", "s $dst, $a, $b",
1005
1011
[(set GPR:$dst, (subc so_reg:$b, GPR:$a))]>;
@@ -1009,7 +1015,9 @@ let Uses = [CPSR] in {
1009
1015
def RSCri : AsI1<0b0111, (outs GPR:$dst), (ins GPR:$a, so_imm:$b),
1010
1016
DPFrm, IIC_iALUi, "rsc", " $dst, $a, $b",
1011
1017
[(set GPR:$dst, (sube so_imm:$b, GPR:$a))]>,
1012
- Requires<[IsARM, CarryDefIsUnused]>;
1018
+ Requires<[IsARM, CarryDefIsUnused]> {
1019
+ let Inst{25} = 1;
1020
+ }
1013
1021
def RSCrs : AsI1<0b0111, (outs GPR:$dst), (ins GPR:$a, so_reg:$b),
1014
1022
DPSoRegFrm, IIC_iALUsr, "rsc", " $dst, $a, $b",
1015
1023
[(set GPR:$dst, (sube so_reg:$b, GPR:$a))]>,
@@ -1021,7 +1029,9 @@ let Defs = [CPSR], Uses = [CPSR] in {
1021
1029
def RSCSri : AXI1<0b0111, (outs GPR:$dst), (ins GPR:$a, so_imm:$b),
1022
1030
DPFrm, IIC_iALUi, "rscs $dst, $a, $b",
1023
1031
[(set GPR:$dst, (sube so_imm:$b, GPR:$a))]>,
1024
- Requires<[IsARM, CarryDefIsUnused]>;
1032
+ Requires<[IsARM, CarryDefIsUnused]> {
1033
+ let Inst{25} = 1;
1034
+ }
1025
1035
def RSCSrs : AXI1<0b0111, (outs GPR:$dst), (ins GPR:$a, so_reg:$b),
1026
1036
DPSoRegFrm, IIC_iALUsr, "rscs $dst, $a, $b",
1027
1037
[(set GPR:$dst, (sube so_reg:$b, GPR:$a))]>,
@@ -1075,7 +1085,9 @@ def MVNs : AsI1<0b1111, (outs GPR:$dst), (ins so_reg:$src), DPSoRegFrm,
1075
1085
let isReMaterializable = 1, isAsCheapAsAMove = 1 in
1076
1086
def MVNi : AsI1<0b1111, (outs GPR:$dst), (ins so_imm:$imm), DPFrm,
1077
1087
IIC_iMOVi, "mvn", " $dst, $imm",
1078
- [(set GPR:$dst, so_imm_not:$imm)]>,UnaryDP;
1088
+ [(set GPR:$dst, so_imm_not:$imm)]>,UnaryDP {
1089
+ let Inst{25} = 1;
1090
+ }
1079
1091
1080
1092
def : ARMPat<(and GPR:$src, so_imm_not:$imm),
1081
1093
(BICri GPR:$src, so_imm_not:$imm)>;
@@ -1393,7 +1405,9 @@ def MOVCCi : AI1<0b1101, (outs GPR:$dst),
1393
1405
(ins GPR:$false, so_imm:$true), DPFrm, IIC_iCMOVi,
1394
1406
"mov", " $dst, $true",
1395
1407
[/*(set GPR:$dst, (ARMcmov GPR:$false, so_imm:$true, imm:$cc, CCR:$ccr))*/]>,
1396
- RegConstraint<"$false = $dst">, UnaryDP;
1408
+ RegConstraint<"$false = $dst">, UnaryDP {
1409
+ let Inst{25} = 1;
1410
+ }
1397
1411
1398
1412
1399
1413
//===----------------------------------------------------------------------===//
0 commit comments