1
Fork 0

Rollup merge of #92300 - Itus-Shield:mips64-openwrt, r=nagisa

mips64-openwrt-linux-musl: Add Tier 3 target

Tier 3 tuple for Mips64 OpenWrt toolchain.

This add first-time support for OpenWrt.  Future Tier3 targets will be added as I test them.

Signed-off-by: Donald Hoskins <grommish@gmail.com>
This commit is contained in:
Matthias Krüger 2022-02-06 04:13:29 +01:00 committed by GitHub
commit 0eda3fa761
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 57 additions and 0 deletions

View file

@ -0,0 +1,26 @@
/// A target tuple for OpenWrt MIPS64 targets
///
use crate::abi::Endian;
use crate::spec::{Target, TargetOptions};
pub fn target() -> Target {
let mut base = super::linux_musl_base::opts();
base.cpu = "mips64r2".to_string();
base.features = "+mips64r2".to_string();
base.max_atomic_width = Some(64);
base.crt_static_default = false;
Target {
// LLVM doesn't recognize "muslabi64" yet.
llvm_target: "mips64-unknown-linux-musl".to_string(),
pointer_width: 64,
data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128".to_string(),
arch: "mips64".to_string(),
options: TargetOptions {
abi: "abi64".to_string(),
endian: Endian::Big,
mcount: "_mcount".to_string(),
..base
},
}
}

View file

@ -1016,6 +1016,8 @@ supported_targets! {
("armv7-unknown-linux-uclibceabihf", armv7_unknown_linux_uclibceabihf),
("x86_64-unknown-none", x86_64_unknown_none),
("mips64-openwrt-linux-musl", mips64_openwrt_linux_musl),
}
/// Warnings encountered when parsing the target `json`.