Skip to content

Commit 1dd53f7

Browse files
committed
Add aarch64-unknown-netbsd target
1 parent b011b09 commit 1dd53f7

File tree

3 files changed

+36
-2
lines changed

3 files changed

+36
-2
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
2+
// file at the top-level directory of this distribution and at
3+
// http://rust-lang.org/COPYRIGHT.
4+
//
5+
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+
// option. This file may not be copied, modified, or distributed
9+
// except according to those terms.
10+
11+
use spec::{LinkerFlavor, Target, TargetResult};
12+
13+
pub fn target() -> TargetResult {
14+
let mut base = super::netbsd_base::opts();
15+
base.max_atomic_width = Some(128);
16+
base.abi_blacklist = super::arm_base::abi_blacklist();
17+
18+
Ok(Target {
19+
llvm_target: "aarch64-unknown-netbsd".to_string(),
20+
target_endian: "little".to_string(),
21+
target_pointer_width: "64".to_string(),
22+
target_c_int_width: "32".to_string(),
23+
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".to_string(),
24+
arch: "aarch64".to_string(),
25+
target_os: "netbsd".to_string(),
26+
target_env: "".to_string(),
27+
target_vendor: "unknown".to_string(),
28+
linker_flavor: LinkerFlavor::Gcc,
29+
options: base,
30+
})
31+
}

src/librustc_target/spec/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,7 @@ supported_targets! {
319319
("i686-unknown-openbsd", i686_unknown_openbsd),
320320
("x86_64-unknown-openbsd", x86_64_unknown_openbsd),
321321

322+
("aarch64-unknown-netbsd", aarch64_unknown_netbsd),
322323
("armv6-unknown-netbsd-eabihf", armv6_unknown_netbsd_eabihf),
323324
("armv7-unknown-netbsd-eabihf", armv7_unknown_netbsd_eabihf),
324325
("i686-unknown-netbsd", i686_unknown_netbsd),

src/libstd/os/raw/mod.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ use fmt;
2929
all(target_os = "android", any(target_arch = "aarch64",
3030
target_arch = "arm")),
3131
all(target_os = "l4re", target_arch = "x86_64"),
32-
all(target_os = "netbsd", any(target_arch = "arm",
32+
all(target_os = "netbsd", any(target_arch = "aarch64",
33+
target_arch = "arm",
3334
target_arch = "powerpc")),
3435
all(target_os = "openbsd", target_arch = "aarch64"),
3536
all(target_os = "fuchsia", target_arch = "aarch64")))]
@@ -43,7 +44,8 @@ use fmt;
4344
all(target_os = "android", any(target_arch = "aarch64",
4445
target_arch = "arm")),
4546
all(target_os = "l4re", target_arch = "x86_64"),
46-
all(target_os = "netbsd", any(target_arch = "arm",
47+
all(target_os = "netbsd", any(target_arch = "aarch64",
48+
target_arch = "arm",
4749
target_arch = "powerpc")),
4850
all(target_os = "openbsd", target_arch = "aarch64"),
4951
all(target_os = "fuchsia", target_arch = "aarch64"))))]

0 commit comments

Comments
 (0)