Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
0bb7335c
R
Rust
项目概览
int
/
Rust
大约 1 年 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
Rust
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
0bb7335c
编写于
5月 24, 2018
作者:
K
kennytm
提交者:
GitHub
5月 24, 2018
浏览文件
操作
浏览文件
下载
差异文件
Rollup merge of #50864 - jakllsch:add-netbsd-arm-target-specs, r=alexcrichton
Add NetBSD/arm target specs
上级
b4463d78
ec779b9f
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
76 addition
and
3 deletion
+76
-3
src/bootstrap/native.rs
src/bootstrap/native.rs
+2
-0
src/libpanic_unwind/gcc.rs
src/libpanic_unwind/gcc.rs
+2
-2
src/librustc_target/spec/armv6_unknown_netbsd_eabihf.rs
src/librustc_target/spec/armv6_unknown_netbsd_eabihf.rs
+34
-0
src/librustc_target/spec/armv7_unknown_netbsd_eabihf.rs
src/librustc_target/spec/armv7_unknown_netbsd_eabihf.rs
+35
-0
src/librustc_target/spec/mod.rs
src/librustc_target/spec/mod.rs
+2
-0
src/libunwind/libunwind.rs
src/libunwind/libunwind.rs
+1
-1
未找到文件。
src/bootstrap/native.rs
浏览文件 @
0bb7335c
...
...
@@ -596,8 +596,10 @@ fn run(self, builder: &Builder) {
"arm-linux-androideabi"
=>
"android"
,
"arm-unknown-linux-gnueabi"
=>
"linux-armv4"
,
"arm-unknown-linux-gnueabihf"
=>
"linux-armv4"
,
"armv6-unknown-netbsd-eabihf"
=>
"BSD-generic32"
,
"armv7-linux-androideabi"
=>
"android-armv7"
,
"armv7-unknown-linux-gnueabihf"
=>
"linux-armv4"
,
"armv7-unknown-netbsd-eabihf"
=>
"BSD-generic32"
,
"i586-unknown-linux-gnu"
=>
"linux-elf"
,
"i586-unknown-linux-musl"
=>
"linux-elf"
,
"i686-apple-darwin"
=>
"darwin-i386-cc"
,
...
...
src/libpanic_unwind/gcc.rs
浏览文件 @
0bb7335c
...
...
@@ -143,7 +143,7 @@ fn rust_exception_class() -> uw::_Unwind_Exception_Class {
// The personality routine for most of our targets, except ARM, which has a slightly different ABI
// (however, iOS goes here as it uses SjLj unwinding). Also, the 64-bit Windows implementation
// lives in seh64_gnu.rs
#[cfg(all(any(target_os
=
"ios"
,
not(target_arch
=
"arm"
))))]
#[cfg(all(any(target_os
=
"ios"
,
target_os
=
"netbsd"
,
not(target_arch
=
"arm"
))))]
#[lang
=
"eh_personality"
]
#[no_mangle]
#[allow(unused)]
...
...
@@ -184,7 +184,7 @@ fn rust_exception_class() -> uw::_Unwind_Exception_Class {
// ARM EHABI personality routine.
// http://infocenter.arm.com/help/topic/com.arm.doc.ihi0038b/IHI0038B_ehabi.pdf
#[cfg(all(target_arch
=
"arm"
,
not(target_os
=
"ios"
)))]
#[cfg(all(target_arch
=
"arm"
,
not(target_os
=
"ios"
)
,
not(target_os
=
"netbsd"
)
))]
#[lang
=
"eh_personality"
]
#[no_mangle]
unsafe
extern
"C"
fn
rust_eh_personality
(
state
:
uw
::
_
Unwind_State
,
...
...
src/librustc_target/spec/armv6_unknown_netbsd_eabihf.rs
0 → 100644
浏览文件 @
0bb7335c
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
use
spec
::{
LinkerFlavor
,
Target
,
TargetOptions
,
TargetResult
};
pub
fn
target
()
->
TargetResult
{
let
mut
base
=
super
::
netbsd_base
::
opts
();
base
.max_atomic_width
=
Some
(
64
);
Ok
(
Target
{
llvm_target
:
"armv6-unknown-netbsdelf-eabihf"
.to_string
(),
target_endian
:
"little"
.to_string
(),
target_pointer_width
:
"32"
.to_string
(),
target_c_int_width
:
"32"
.to_string
(),
data_layout
:
"e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
.to_string
(),
arch
:
"arm"
.to_string
(),
target_os
:
"netbsd"
.to_string
(),
target_env
:
"eabihf"
.to_string
(),
target_vendor
:
"unknown"
.to_string
(),
linker_flavor
:
LinkerFlavor
::
Gcc
,
options
:
TargetOptions
{
features
:
"+v6,+vfp2"
.to_string
(),
abi_blacklist
:
super
::
arm_base
::
abi_blacklist
(),
..
base
}
})
}
src/librustc_target/spec/armv7_unknown_netbsd_eabihf.rs
0 → 100644
浏览文件 @
0bb7335c
// Copyright 2016 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
use
spec
::{
LinkerFlavor
,
Target
,
TargetOptions
,
TargetResult
};
pub
fn
target
()
->
TargetResult
{
let
base
=
super
::
netbsd_base
::
opts
();
Ok
(
Target
{
llvm_target
:
"armv7-unknown-netbsdelf-eabihf"
.to_string
(),
target_endian
:
"little"
.to_string
(),
target_pointer_width
:
"32"
.to_string
(),
target_c_int_width
:
"32"
.to_string
(),
data_layout
:
"e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
.to_string
(),
arch
:
"arm"
.to_string
(),
target_os
:
"netbsd"
.to_string
(),
target_env
:
"eabihf"
.to_string
(),
target_vendor
:
"unknown"
.to_string
(),
linker_flavor
:
LinkerFlavor
::
Gcc
,
options
:
TargetOptions
{
features
:
"+v7,+vfp3,+d16,+thumb2,-neon"
.to_string
(),
cpu
:
"generic"
.to_string
(),
max_atomic_width
:
Some
(
64
),
abi_blacklist
:
super
::
arm_base
::
abi_blacklist
(),
..
base
}
})
}
src/librustc_target/spec/mod.rs
浏览文件 @
0bb7335c
...
...
@@ -317,6 +317,8 @@ fn $module() {
(
"i686-unknown-openbsd"
,
i686_unknown_openbsd
),
(
"x86_64-unknown-openbsd"
,
x86_64_unknown_openbsd
),
(
"armv6-unknown-netbsd-eabihf"
,
armv6_unknown_netbsd_eabihf
),
(
"armv7-unknown-netbsd-eabihf"
,
armv7_unknown_netbsd_eabihf
),
(
"i686-unknown-netbsd"
,
i686_unknown_netbsd
),
(
"powerpc-unknown-netbsd"
,
powerpc_unknown_netbsd
),
(
"sparc64-unknown-netbsd"
,
sparc64_unknown_netbsd
),
...
...
src/libunwind/libunwind.rs
浏览文件 @
0bb7335c
...
...
@@ -93,7 +93,7 @@ pub enum _Unwind_Context {}
}
cfg_if!
{
if
#[cfg(all(any(target_os
=
"ios"
,
not(target_arch
=
"arm"
))))]
{
if
#[cfg(all(any(target_os
=
"ios"
,
target_os
=
"netbsd"
,
not(target_arch
=
"arm"
))))]
{
// Not ARM EHABI
#[repr(C)]
#[derive(Copy,
Clone,
PartialEq)]
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录