@@ -251,27 +251,27 @@ def : InstAlias<"fge.s $rd, $rs, $rt",
251
251
// The following csr instructions actually alias instructions from the base ISA.
252
252
// However, it only makes sense to support them when the F extension is enabled.
253
253
// NOTE: "frcsr", "frrm", and "frflags" are more specialized version of "csrr".
254
- def : InstAlias<"frcsr $rd", (CSRRS GPR:$rd, FCSR .Encoding, X0), 2>;
255
- def : InstAlias<"fscsr $rd, $rs", (CSRRW GPR:$rd, FCSR .Encoding, GPR:$rs)>;
256
- def : InstAlias<"fscsr $rs", (CSRRW X0, FCSR .Encoding, GPR:$rs), 2>;
254
+ def : InstAlias<"frcsr $rd", (CSRRS GPR:$rd, SysRegFCSR .Encoding, X0), 2>;
255
+ def : InstAlias<"fscsr $rd, $rs", (CSRRW GPR:$rd, SysRegFCSR .Encoding, GPR:$rs)>;
256
+ def : InstAlias<"fscsr $rs", (CSRRW X0, SysRegFCSR .Encoding, GPR:$rs), 2>;
257
257
258
258
// frsr, fssr are obsolete aliases replaced by frcsr, fscsr, so give them
259
259
// zero weight.
260
- def : InstAlias<"frsr $rd", (CSRRS GPR:$rd, FCSR .Encoding, X0), 0>;
261
- def : InstAlias<"fssr $rd, $rs", (CSRRW GPR:$rd, FCSR .Encoding, GPR:$rs), 0>;
262
- def : InstAlias<"fssr $rs", (CSRRW X0, FCSR .Encoding, GPR:$rs), 0>;
263
-
264
- def : InstAlias<"frrm $rd", (CSRRS GPR:$rd, FRM .Encoding, X0), 2>;
265
- def : InstAlias<"fsrm $rd, $rs", (CSRRW GPR:$rd, FRM .Encoding, GPR:$rs)>;
266
- def : InstAlias<"fsrm $rs", (CSRRW X0, FRM .Encoding, GPR:$rs), 2>;
267
- def : InstAlias<"fsrmi $rd, $imm", (CSRRWI GPR:$rd, FRM .Encoding, uimm5:$imm)>;
268
- def : InstAlias<"fsrmi $imm", (CSRRWI X0, FRM .Encoding, uimm5:$imm), 2>;
269
-
270
- def : InstAlias<"frflags $rd", (CSRRS GPR:$rd, FFLAGS .Encoding, X0), 2>;
271
- def : InstAlias<"fsflags $rd, $rs", (CSRRW GPR:$rd, FFLAGS .Encoding, GPR:$rs)>;
272
- def : InstAlias<"fsflags $rs", (CSRRW X0, FFLAGS .Encoding, GPR:$rs), 2>;
273
- def : InstAlias<"fsflagsi $rd, $imm", (CSRRWI GPR:$rd, FFLAGS .Encoding, uimm5:$imm)>;
274
- def : InstAlias<"fsflagsi $imm", (CSRRWI X0, FFLAGS .Encoding, uimm5:$imm), 2>;
260
+ def : InstAlias<"frsr $rd", (CSRRS GPR:$rd, SysRegFCSR .Encoding, X0), 0>;
261
+ def : InstAlias<"fssr $rd, $rs", (CSRRW GPR:$rd, SysRegFCSR .Encoding, GPR:$rs), 0>;
262
+ def : InstAlias<"fssr $rs", (CSRRW X0, SysRegFCSR .Encoding, GPR:$rs), 0>;
263
+
264
+ def : InstAlias<"frrm $rd", (CSRRS GPR:$rd, SysRegFRM .Encoding, X0), 2>;
265
+ def : InstAlias<"fsrm $rd, $rs", (CSRRW GPR:$rd, SysRegFRM .Encoding, GPR:$rs)>;
266
+ def : InstAlias<"fsrm $rs", (CSRRW X0, SysRegFRM .Encoding, GPR:$rs), 2>;
267
+ def : InstAlias<"fsrmi $rd, $imm", (CSRRWI GPR:$rd, SysRegFRM .Encoding, uimm5:$imm)>;
268
+ def : InstAlias<"fsrmi $imm", (CSRRWI X0, SysRegFRM .Encoding, uimm5:$imm), 2>;
269
+
270
+ def : InstAlias<"frflags $rd", (CSRRS GPR:$rd, SysRegFFLAGS .Encoding, X0), 2>;
271
+ def : InstAlias<"fsflags $rd, $rs", (CSRRW GPR:$rd, SysRegFFLAGS .Encoding, GPR:$rs)>;
272
+ def : InstAlias<"fsflags $rs", (CSRRW X0, SysRegFFLAGS .Encoding, GPR:$rs), 2>;
273
+ def : InstAlias<"fsflagsi $rd, $imm", (CSRRWI GPR:$rd, SysRegFFLAGS .Encoding, uimm5:$imm)>;
274
+ def : InstAlias<"fsflagsi $imm", (CSRRWI X0, SysRegFFLAGS .Encoding, uimm5:$imm), 2>;
275
275
276
276
// fmv.w.x and fmv.x.w were previously known as fmv.s.x and fmv.x.s. Both
277
277
// spellings should be supported by standard tools.
0 commit comments