Skip to content

Commit 466b9b4

Browse files
committed
codegen-ssa: add more risc-v isa sets as features
Based on discussion at: rust-lang/stdarch#1263 (review) Extension 'e' is renamed to 'rv32e'.
1 parent f624427 commit 466b9b4

File tree

1 file changed

+45
-2
lines changed

1 file changed

+45
-2
lines changed

compiler/rustc_codegen_ssa/src/target_features.rs

Lines changed: 45 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,12 +207,55 @@ const MIPS_ALLOWED_FEATURES: &[(&str, Option<Symbol>)] =
207207
&[("fp64", Some(sym::mips_target_feature)), ("msa", Some(sym::mips_target_feature))];
208208

209209
const RISCV_ALLOWED_FEATURES: &[(&str, Option<Symbol>)] = &[
210+
("rv32i", Some(sym::riscv_target_feature)),
211+
("zifencei", Some(sym::riscv_target_feature)),
212+
("zihintpause", Some(sym::riscv_target_feature)),
213+
("rv64i", Some(sym::riscv_target_feature)),
210214
("m", Some(sym::riscv_target_feature)),
211215
("a", Some(sym::riscv_target_feature)),
212-
("c", Some(sym::riscv_target_feature)),
216+
("zicsr", Some(sym::riscv_target_feature)),
217+
("zicntr", Some(sym::riscv_target_feature)),
218+
("zihpm", Some(sym::riscv_target_feature)),
213219
("f", Some(sym::riscv_target_feature)),
214220
("d", Some(sym::riscv_target_feature)),
215-
("e", Some(sym::riscv_target_feature)),
221+
("q", Some(sym::riscv_target_feature)),
222+
("c", Some(sym::riscv_target_feature)),
223+
("zfinx", Some(sym::riscv_target_feature)),
224+
("zdinx", Some(sym::riscv_target_feature)),
225+
("zhinx", Some(sym::riscv_target_feature)),
226+
("zhinxmin", Some(sym::riscv_target_feature)),
227+
("ztso", Some(sym::riscv_target_feature)),
228+
("rv32e", Some(sym::riscv_target_feature)),
229+
("rv128i", Some(sym::riscv_target_feature)),
230+
("zfh", Some(sym::riscv_target_feature)),
231+
("zfhmin", Some(sym::riscv_target_feature)),
232+
("b", Some(sym::riscv_target_feature)),
233+
("j", Some(sym::riscv_target_feature)),
234+
("p", Some(sym::riscv_target_feature)),
235+
("v", Some(sym::riscv_target_feature)),
236+
("zam", Some(sym::riscv_target_feature)),
237+
("s", Some(sym::riscv_target_feature)),
238+
("svnapot", Some(sym::riscv_target_feature)),
239+
("svpbmt", Some(sym::riscv_target_feature)),
240+
("svinval", Some(sym::riscv_target_feature)),
241+
("h", Some(sym::riscv_target_feature)),
242+
("zba", Some(sym::riscv_target_feature)),
243+
("zbb", Some(sym::riscv_target_feature)),
244+
("zbc", Some(sym::riscv_target_feature)),
245+
("zbs", Some(sym::riscv_target_feature)),
246+
("zbkb", Some(sym::riscv_target_feature)),
247+
("zbkc", Some(sym::riscv_target_feature)),
248+
("zbkx", Some(sym::riscv_target_feature)),
249+
("zknd", Some(sym::riscv_target_feature)),
250+
("zkne", Some(sym::riscv_target_feature)),
251+
("zknh", Some(sym::riscv_target_feature)),
252+
("zksed", Some(sym::riscv_target_feature)),
253+
("zksh", Some(sym::riscv_target_feature)),
254+
("zkr", Some(sym::riscv_target_feature)),
255+
("zkn", Some(sym::riscv_target_feature)),
256+
("zks", Some(sym::riscv_target_feature)),
257+
("zk", Some(sym::riscv_target_feature)),
258+
("zkt", Some(sym::riscv_target_feature)),
216259
];
217260

218261
const WASM_ALLOWED_FEATURES: &[(&str, Option<Symbol>)] = &[

0 commit comments

Comments
 (0)