@@ -107,6 +107,11 @@ var optab = []Optab{
107
107
{ASLLV , C_REG , C_REG , C_REG , 9 , 4 , 0 , sys .MIPS64 , 0 },
108
108
{ACLO , C_REG , C_NONE , C_REG , 9 , 4 , 0 , 0 , 0 },
109
109
110
+ {AROTR , C_REG , C_NONE , C_REG , 9 , 4 , 0 , 0 , 0 },
111
+ {AROTR , C_REG , C_REG , C_REG , 9 , 4 , 0 , 0 , 0 },
112
+ {AROTR , C_SCON , C_REG , C_REG , 16 , 4 , 0 , 0 , 0 },
113
+ {AROTR , C_SCON , C_NONE , C_REG , 16 , 4 , 0 , 0 , 0 },
114
+
110
115
{AADDF , C_FREG , C_NONE , C_FREG , 32 , 4 , 0 , 0 , 0 },
111
116
{AADDF , C_FREG , C_REG , C_FREG , 32 , 4 , 0 , 0 , 0 },
112
117
{ACMPEQF , C_FREG , C_REG , C_NONE , 32 , 4 , 0 , 0 , 0 },
@@ -1079,6 +1084,7 @@ func buildop(ctxt *obj.Link) {
1079
1084
ANEGW ,
1080
1085
ANEGV ,
1081
1086
AWORD ,
1087
+ AROTR ,
1082
1088
obj .ANOP ,
1083
1089
obj .ATEXT ,
1084
1090
obj .AUNDEF ,
@@ -1730,6 +1736,8 @@ func (c *ctxt0) oprrr(a obj.As) uint32 {
1730
1736
return OP (0 , 4 )
1731
1737
case ASRL :
1732
1738
return OP (0 , 6 )
1739
+ case AROTR :
1740
+ return OP (0 , 6 ) | (1 << 6 )
1733
1741
case ASRA :
1734
1742
return OP (0 , 7 )
1735
1743
case ASLLV :
@@ -1914,6 +1922,8 @@ func (c *ctxt0) opirr(a obj.As) uint32 {
1914
1922
return OP (0 , 0 )
1915
1923
case ASRL :
1916
1924
return OP (0 , 2 )
1925
+ case AROTR :
1926
+ return OP (0 , 2 ) | (1 << 21 )
1917
1927
case ASRA :
1918
1928
return OP (0 , 3 )
1919
1929
case AADDV :
0 commit comments