diff options
Diffstat (limited to 'scripts/generate_rust_target.rs')
| -rw-r--r-- | scripts/generate_rust_target.rs | 15 | 
1 files changed, 8 insertions, 7 deletions
diff --git a/scripts/generate_rust_target.rs b/scripts/generate_rust_target.rs index 54919cf48621..641b713a033a 100644 --- a/scripts/generate_rust_target.rs +++ b/scripts/generate_rust_target.rs @@ -150,11 +150,17 @@ fn main() {      // `llvm-target`s are taken from `scripts/Makefile.clang`.      if cfg.has("ARM64") {          panic!("arm64 uses the builtin rustc aarch64-unknown-none target"); +    } else if cfg.has("RISCV") { +        if cfg.has("64BIT") { +            panic!("64-bit RISC-V uses the builtin rustc riscv64-unknown-none-elf target"); +        } else { +            panic!("32-bit RISC-V is an unsupported architecture"); +        }      } else if cfg.has("X86_64") {          ts.push("arch", "x86_64");          ts.push(              "data-layout", -            "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", +            "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128",          );          let mut features = "-3dnow,-3dnowa,-mmx,+soft-float".to_string();          if cfg.has("MITIGATION_RETPOLINE") { @@ -164,12 +170,7 @@ fn main() {          ts.push("llvm-target", "x86_64-linux-gnu");          ts.push("target-pointer-width", "64");      } else if cfg.has("LOONGARCH") { -        ts.push("arch", "loongarch64"); -        ts.push("data-layout", "e-m:e-p:64:64-i64:64-i128:128-n64-S128"); -        ts.push("features", "-f,-d"); -        ts.push("llvm-target", "loongarch64-linux-gnusf"); -        ts.push("llvm-abiname", "lp64s"); -        ts.push("target-pointer-width", "64"); +        panic!("loongarch uses the builtin rustc loongarch64-unknown-none-softfloat target");      } else {          panic!("Unsupported architecture");      }  | 
