Skip to content

Commit 0168102

Browse files
committed
---
yaml --- r: 108283 b: refs/heads/dist-snap c: 28fa81a h: refs/heads/master i: 108281: 703a94a 108279: 1a313a1 v: v3
1 parent 860bfb7 commit 0168102

File tree

7 files changed

+32
-7
lines changed

7 files changed

+32
-7
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ refs/heads/try: f64fdf524a434f0e5cd0bc91d09c144723f3c90d
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c
9-
refs/heads/dist-snap: 92c5738aae54a15717005e84499a522d173a4a09
9+
refs/heads/dist-snap: 28fa81a954a5722eedc838f413eb7b8ed04a8e95
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1212
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0

branches/dist-snap/mk/platform.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ CFG_GCCISH_DEF_FLAG_arm-apple-darwin := -Wl,-exported_symbols_list,
208208
CFG_GCCISH_PRE_LIB_FLAGS_arm-apple-darwin :=
209209
CFG_GCCISH_POST_LIB_FLAGS_arm-apple-darwin :=
210210
CFG_DEF_SUFFIX_arm-apple-darwin := .darwin.def
211-
CFG_LLC_FLAGS_arm-apple-darwin :=
211+
CFG_LLC_FLAGS_arm-apple-darwin := -arm-enable-ehabi -arm-enable-ehabi-descriptors
212212
CFG_INSTALL_NAME_arm-apple-darwin = -Wl,-install_name,@rpath/$(1)
213213
CFG_LIBUV_LINK_FLAGS_arm-apple-darwin =
214214
CFG_EXE_SUFFIX_arm-apple-darwin :=
@@ -290,7 +290,7 @@ CFG_GCCISH_DEF_FLAG_arm-linux-androideabi := -Wl,--export-dynamic,--dynamic-list
290290
CFG_GCCISH_PRE_LIB_FLAGS_arm-linux-androideabi := -Wl,-whole-archive
291291
CFG_GCCISH_POST_LIB_FLAGS_arm-linux-androideabi := -Wl,-no-whole-archive
292292
CFG_DEF_SUFFIX_arm-linux-androideabi := .android.def
293-
CFG_LLC_FLAGS_arm-linux-androideabi :=
293+
CFG_LLC_FLAGS_arm-linux-androideabi := -arm-enable-ehabi -arm-enable-ehabi-descriptors
294294
CFG_INSTALL_NAME_arm-linux-androideabi =
295295
CFG_LIBUV_LINK_FLAGS_arm-linux-androideabi =
296296
CFG_EXE_SUFFIX_arm-linux-androideabi :=
@@ -320,7 +320,7 @@ CFG_GCCISH_DEF_FLAG_arm-unknown-linux-gnueabihf := -Wl,--export-dynamic,--dynami
320320
CFG_GCCISH_PRE_LIB_FLAGS_arm-unknown-linux-gnueabihf := -Wl,-whole-archive
321321
CFG_GCCISH_POST_LIB_FLAGS_arm-unknown-linux-gnueabihf := -Wl,-no-whole-archive
322322
CFG_DEF_SUFFIX_arm-unknown-linux-gnueabihf := .linux.def
323-
CFG_LLC_FLAGS_arm-unknown-linux-gnueabihf :=
323+
CFG_LLC_FLAGS_arm-unknown-linux-gnueabihf := -arm-enable-ehabi -arm-enable-ehabi-descriptors
324324
CFG_INSTALL_NAME_ar,-unknown-linux-gnueabihf =
325325
CFG_LIBUV_LINK_FLAGS_arm-unknown-linux-gnueabihf =
326326
CFG_EXE_SUFFIX_arm-unknown-linux-gnueabihf :=

branches/dist-snap/src/librustc/back/link.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,8 @@ pub mod write {
369369
llvm_c_strs.push(s);
370370
};
371371
add("rustc"); // fake program name
372+
add("-arm-enable-ehabi");
373+
add("-arm-enable-ehabi-descriptors");
372374
if vectorize_loop { add("-vectorize-loops"); }
373375
if vectorize_slp { add("-vectorize-slp"); }
374376
if sess.time_llvm_passes() { add("-time-passes"); }
@@ -1082,6 +1084,17 @@ fn link_args(sess: Session,
10821084
args.push(metadata.as_str().unwrap().to_owned());
10831085
}
10841086

1087+
// We want to prevent the compiler from accidentally leaking in any system
1088+
// libraries, so we explicitly ask gcc to not link to any libraries by
1089+
// default. Note that this does not happen for windows because windows pulls
1090+
// in some large number of libraries and I couldn't quite figure out which
1091+
// subset we wanted.
1092+
//
1093+
// FIXME(#11937) we should invoke the system linker directly
1094+
if sess.targ_cfg.os != abi::OsWin32 {
1095+
args.push(~"-nodefaultlibs");
1096+
}
1097+
10851098
if sess.targ_cfg.os == abi::OsLinux {
10861099
// GNU-style linkers will use this to omit linking to libraries which
10871100
// don't actually fulfill any relocations, but only for libraries which

branches/dist-snap/src/libstd/rt/unwind.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,16 @@ mod libunwind {
143143
pub type _Unwind_Exception_Cleanup_Fn = extern "C" fn(unwind_code: _Unwind_Reason_Code,
144144
exception: *_Unwind_Exception);
145145

146+
#[cfg(target_os = "linux")]
147+
#[cfg(target_os = "freebsd")]
148+
#[cfg(target_os = "win32")]
149+
#[link(name = "gcc_s")]
150+
extern {}
151+
152+
#[cfg(target_os = "android")]
153+
#[link(name = "gcc")]
154+
extern {}
155+
146156
extern "C" {
147157
pub fn _Unwind_RaiseException(exception: *_Unwind_Exception) -> _Unwind_Reason_Code;
148158
pub fn _Unwind_DeleteException(exception: *_Unwind_Exception);

branches/dist-snap/src/libstd/rtdeps.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ extern {}
2222
// On linux librt and libdl are indirect dependencies via rustrt,
2323
// and binutils 2.22+ won't add them automatically
2424
#[cfg(target_os = "linux")]
25+
#[link(name = "c")]
2526
#[link(name = "dl")]
2627
#[link(name = "m")]
2728
#[link(name = "pthread")]
@@ -31,6 +32,7 @@ extern {}
3132
#[link(name = "dl")]
3233
#[link(name = "log")]
3334
#[link(name = "m")]
35+
#[link(name = "c")]
3436
extern {}
3537

3638
#[cfg(target_os = "freebsd")]
@@ -39,5 +41,5 @@ extern {}
3941
extern {}
4042

4143
#[cfg(target_os = "macos")]
42-
#[link(name = "pthread")]
44+
#[link(name = "System")]
4345
extern {}

branches/dist-snap/src/llvm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Subproject commit f5f1ffea207b6b380127ff34f14015ae005d1413
1+
Subproject commit e1dabb48f0f898d1a808b3de3a26f5ee3735c7dd
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# If this file is modified, then llvm will be forcibly cleaned and then rebuilt.
22
# The actual contents of this file do not matter, but to trigger a change on the
33
# build bots then the contents should be changed so git updates the mtime.
4-
2014-02-11
4+
2014-01-27

0 commit comments

Comments
 (0)