Skip to content

Commit b4129c1

Browse files
committed
RISC-V: Reordering related to 'S[ms]stateen'
This is a generic tidying commit to make ordering related to 'S[ms]stateen' extensions natural. bfd/ChangeLog: * elfxx-riscv.c (riscv_implicit_subsets): Reorder 'Smstateen' -> 'Ssstateen' implication. gas/ChangeLog: * config/tc-riscv.c (enum riscv_csr_class): Reorder 'Ssstateen'- related CSR classes. (riscv_csr_address): Likewise.
1 parent d734d43 commit b4129c1

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

bfd/elfxx-riscv.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1183,8 +1183,8 @@ static struct riscv_implicit_subset riscv_implicit_subsets[] =
11831183
{"zcd", "zca", check_implicit_always},
11841184
{"zcb", "zca", check_implicit_always},
11851185
{"smaia", "ssaia", check_implicit_always},
1186-
{"smstateen", "ssstateen", check_implicit_always},
11871186
{"smepmp", "zicsr", check_implicit_always},
1187+
{"smstateen", "ssstateen", check_implicit_always},
11881188
{"ssaia", "zicsr", check_implicit_always},
11891189
{"sscofpmf", "zicsr", check_implicit_always},
11901190
{"ssstateen", "zicsr", check_implicit_always},

gas/config/tc-riscv.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -80,11 +80,11 @@ enum riscv_csr_class
8080
CSR_CLASS_SSAIA_AND_H, /* Ssaia with H */
8181
CSR_CLASS_SSAIA_32, /* Ssaia, rv32 only */
8282
CSR_CLASS_SSAIA_AND_H_32, /* Ssaia with H, rv32 only */
83+
CSR_CLASS_SSCOFPMF, /* Sscofpmf only */
84+
CSR_CLASS_SSCOFPMF_32, /* Sscofpmf RV32 only */
8385
CSR_CLASS_SSSTATEEN, /* S[ms]stateen only */
8486
CSR_CLASS_SSSTATEEN_AND_H, /* S[ms]stateen only (with H) */
8587
CSR_CLASS_SSSTATEEN_AND_H_32, /* S[ms]stateen RV32 only (with H) */
86-
CSR_CLASS_SSCOFPMF, /* Sscofpmf only */
87-
CSR_CLASS_SSCOFPMF_32, /* Sscofpmf RV32 only */
8888
CSR_CLASS_SSTC, /* Sstc only */
8989
CSR_CLASS_SSTC_AND_H, /* Sstc only (with H) */
9090
CSR_CLASS_SSTC_32, /* Sstc RV32 only */
@@ -1068,6 +1068,12 @@ riscv_csr_address (const char *csr_name,
10681068
|| csr_class == CSR_CLASS_SSAIA_AND_H_32);
10691069
extension = "ssaia";
10701070
break;
1071+
case CSR_CLASS_SSCOFPMF_32:
1072+
is_rv32_only = true;
1073+
/* Fall through. */
1074+
case CSR_CLASS_SSCOFPMF:
1075+
extension = "sscofpmf";
1076+
break;
10711077
case CSR_CLASS_SSSTATEEN_AND_H_32:
10721078
is_rv32_only = true;
10731079
/* Fall through. */
@@ -1077,12 +1083,6 @@ riscv_csr_address (const char *csr_name,
10771083
case CSR_CLASS_SSSTATEEN:
10781084
extension = "ssstateen";
10791085
break;
1080-
case CSR_CLASS_SSCOFPMF_32:
1081-
is_rv32_only = true;
1082-
/* Fall through. */
1083-
case CSR_CLASS_SSCOFPMF:
1084-
extension = "sscofpmf";
1085-
break;
10861086
case CSR_CLASS_SSTC:
10871087
case CSR_CLASS_SSTC_AND_H:
10881088
case CSR_CLASS_SSTC_32:

0 commit comments

Comments
 (0)