aboutsummaryrefslogtreecommitdiff
path: root/lang/rust_host/patches/04-add_mipsel.patch
diff options
context:
space:
mode:
Diffstat (limited to 'lang/rust_host/patches/04-add_mipsel.patch')
-rw-r--r--lang/rust_host/patches/04-add_mipsel.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/lang/rust_host/patches/04-add_mipsel.patch b/lang/rust_host/patches/04-add_mipsel.patch
new file mode 100644
index 0000000..b64f1ea
--- /dev/null
+++ b/lang/rust_host/patches/04-add_mipsel.patch
@@ -0,0 +1,29 @@
+--- /dev/null
++++ b/compiler/rustc_target/src/spec/mipsel_openwrt_linux_musl.rs
+@@ -0,0 +1,16 @@
++use crate::spec::{Target, TargetOptions};
++
++pub fn target() -> Target {
++ let mut base = super::linux_musl_base::opts();
++ base.cpu = "mips32r2".into();
++ base.features = "+mips32r2,+soft-float".into();
++ base.max_atomic_width = Some(32);
++ base.crt_static_default = false;
++ Target {
++ llvm_target: "mipsel-unknown-linux-musl".into(),
++ pointer_width: 32,
++ data_layout: "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64".into(),
++ arch: "mips".into(),
++ options: TargetOptions { mcount: "_mcount".into(), ..base },
++ }
++}
+--- a/compiler/rustc_target/src/spec/mod.rs
++++ b/compiler/rustc_target/src/spec/mod.rs
+@@ -1015,6 +1015,7 @@
+
+ ("mips64-openwrt-linux-musl", mips64_openwrt_linux_musl),
+ ("mips-openwrt-linux-musl", mips_openwrt_linux_musl),
++ ("mipsel-openwrt-linux-musl", mipsel_openwrt_linux_musl),
+ }
+
+ /// Warnings encountered when parsing the target `json`.