beta test

This commit is contained in:
Josh Stone 2017-09-12 11:35:47 -07:00
parent 44e5fa40db
commit 688aed533e
6 changed files with 79 additions and 85 deletions

View File

@ -1,38 +0,0 @@
From 253ff9c24f0e11323ae4f173cc620721fb322beb Mon Sep 17 00:00:00 2001
From: Ximin Luo <infinity0@pwned.gg>
Date: Mon, 17 Jul 2017 22:29:09 +0200
Subject: [PATCH] configure: allow distros to disable debuginfo-only-std
---
configure | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/configure b/configure
index af59d5b0bb88..084f5bfdedbc 100755
--- a/configure
+++ b/configure
@@ -558,8 +558,8 @@ case "$CFG_RELEASE_CHANNEL" in
*-pc-windows-gnu)
;;
*)
- CFG_ENABLE_DEBUGINFO_LINES=1
- CFG_ENABLE_DEBUGINFO_ONLY_STD=1
+ enable_if_not_disabled debuginfo-lines
+ enable_if_not_disabled debuginfo-only-std
;;
esac
@@ -570,8 +570,8 @@ case "$CFG_RELEASE_CHANNEL" in
*-pc-windows-gnu)
;;
*)
- CFG_ENABLE_DEBUGINFO_LINES=1
- CFG_ENABLE_DEBUGINFO_ONLY_STD=1
+ enable_if_not_disabled debuginfo-lines
+ enable_if_not_disabled debuginfo-only-std
;;
esac
;;
--
2.13.3

View File

@ -1,4 +1,4 @@
From 6f680d06544edae491d2281d89b0b93efcdd6143 Mon Sep 17 00:00:00 2001
From bc3a71ed00af01855b0ae8908ae271b83eca34f6 Mon Sep 17 00:00:00 2001
From: bors <bors@rust-lang.org>
Date: Sat, 2 Sep 2017 19:46:51 +0000
Subject: [PATCH] Auto merge of #44066 - cuviper:powerpc64-extern-abi,
@ -35,7 +35,7 @@ formerly-failing tests now pass on powerpc64:
6 files changed, 151 insertions(+), 44 deletions(-)
diff --git a/src/librustc_trans/cabi_powerpc64.rs b/src/librustc_trans/cabi_powerpc64.rs
index c4f8d0b4b963..a3780c8cfa92 100644
index 5c695387236f..fb5472eb6ae1 100644
--- a/src/librustc_trans/cabi_powerpc64.rs
+++ b/src/librustc_trans/cabi_powerpc64.rs
@@ -14,14 +14,26 @@
@ -44,7 +44,7 @@ index c4f8d0b4b963..a3780c8cfa92 100644
use context::CrateContext;
+use rustc::ty::layout;
-fn is_homogenous_aggregate<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>, arg: &mut ArgType<'tcx>)
-fn is_homogeneous_aggregate<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>, arg: &mut ArgType<'tcx>)
+#[derive(Debug, Clone, Copy, PartialEq)]
+enum ABI {
+ ELFv1, // original ABI used for powerpc64 (big-endian)
@ -52,11 +52,11 @@ index c4f8d0b4b963..a3780c8cfa92 100644
+}
+use self::ABI::*;
+
+fn is_homogenous_aggregate<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>,
+ arg: &mut ArgType<'tcx>,
+ abi: ABI)
+fn is_homogeneous_aggregate<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>,
+ arg: &mut ArgType<'tcx>,
+ abi: ABI)
-> Option<Uniform> {
arg.layout.homogenous_aggregate(ccx).and_then(|unit| {
arg.layout.homogeneous_aggregate(ccx).and_then(|unit| {
let size = arg.layout.size(ccx);
- // Ensure we have at most eight uniquely addressable members.
@ -68,7 +68,7 @@ index c4f8d0b4b963..a3780c8cfa92 100644
return None;
}
@@ -42,21 +54,23 @@ fn is_homogenous_aggregate<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>, arg: &mut Arg
@@ -42,21 +54,23 @@ fn is_homogeneous_aggregate<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>, arg: &mut Ar
})
}
@ -87,8 +87,8 @@ index c4f8d0b4b963..a3780c8cfa92 100644
+ return;
}
- if let Some(uniform) = is_homogenous_aggregate(ccx, ret) {
+ if let Some(uniform) = is_homogenous_aggregate(ccx, ret, abi) {
- if let Some(uniform) = is_homogeneous_aggregate(ccx, ret) {
+ if let Some(uniform) = is_homogeneous_aggregate(ccx, ret, abi) {
ret.cast_to(ccx, uniform);
return;
}
@ -107,8 +107,8 @@ index c4f8d0b4b963..a3780c8cfa92 100644
return;
}
- if let Some(uniform) = is_homogenous_aggregate(ccx, arg) {
+ if let Some(uniform) = is_homogenous_aggregate(ccx, arg, abi) {
- if let Some(uniform) = is_homogeneous_aggregate(ccx, arg) {
+ if let Some(uniform) = is_homogeneous_aggregate(ccx, arg, abi) {
arg.cast_to(ccx, uniform);
return;
}
@ -159,7 +159,7 @@ index c4f8d0b4b963..a3780c8cfa92 100644
}
}
diff --git a/src/librustc_trans/cabi_x86.rs b/src/librustc_trans/cabi_x86.rs
index 9f5520dabe33..05932ef2de80 100644
index 8b024b8c97fa..49634d6e78ce 100644
--- a/src/librustc_trans/cabi_x86.rs
+++ b/src/librustc_trans/cabi_x86.rs
@@ -11,12 +11,30 @@

View File

@ -14,14 +14,14 @@ diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
index 746f85a9d59d..05d59e7d5956 100644
--- a/src/bootstrap/dist.rs
+++ b/src/bootstrap/dist.rs
@@ -562,7 +562,7 @@ impl Step for Src {
"src/libprofiler_builtins",
];
let std_src_dirs_exclude = [
- "src/compiler-rt/test",
+ "src/libcompiler_builtins/compiler-rt/test",
"src/jemalloc/test/unit",
];
@@ -754,7 +754,7 @@ impl Step for Src {
"src/libprofiler_builtins",
];
let std_src_dirs_exclude = [
- "src/compiler-rt/test",
+ "src/libcompiler_builtins/compiler-rt/test",
"src/jemalloc/test/unit",
];
--
2.13.5

View File

@ -0,0 +1,28 @@
From 110efe25fae60570c00e00d4c6d609f3f9666fb3 Mon Sep 17 00:00:00 2001
From: Josh Stone <jistone@redhat.com>
Date: Tue, 5 Sep 2017 14:19:22 -0700
Subject: [PATCH] Include rustc in the default `./x.py install`
The default install used to include rustc, rust-std, and rust-docs, but
the refactoring in commit 6b3413d825fa6 make rustc only default in
extended builds. This commit makes rustc installed by default again.
---
src/bootstrap/install.rs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/bootstrap/install.rs b/src/bootstrap/install.rs
index 89690e444d1f..608924c9c28d 100644
--- a/src/bootstrap/install.rs
+++ b/src/bootstrap/install.rs
@@ -200,7 +200,7 @@ install!((self, builder, _config),
builder.ensure(dist::Src);
install_src(builder, self.stage);
}, ONLY_BUILD;
- Rustc, "src/librustc", _config.extended, only_hosts: true, {
+ Rustc, "src/librustc", true, only_hosts: true, {
builder.ensure(dist::Rustc {
compiler: builder.compiler(self.stage, self.target),
});
--
2.13.5

View File

@ -1,7 +1,8 @@
From 3ca86983df58daf0242b0618d3beb9ea917193e2 Mon Sep 17 00:00:00 2001
From 0f5ee28213a73733e6811b176c89ecececfe9cbc Mon Sep 17 00:00:00 2001
From: bors <bors@rust-lang.org>
Date: Mon, 11 Sep 2017 12:53:21 +0000
Subject: [PATCH] Auto merge of #44440 - cuviper:min_global_align, r=japaric
Subject: [PATCH] Auto merge of #44440 - cuviper:min_global_align,
r=japaric
Add `TargetOptions::min_global_align`, with s390x at 16-bit
@ -27,10 +28,10 @@ r? @eddyb
create mode 100644 src/test/run-make/min-global-align/min_global_align.rs
diff --git a/src/librustc_back/target/mod.rs b/src/librustc_back/target/mod.rs
index edbbcf6f0b64..f88a3879d6c0 100644
index 130e1b695dbd..301cf3f8c820 100644
--- a/src/librustc_back/target/mod.rs
+++ b/src/librustc_back/target/mod.rs
@@ -414,6 +414,9 @@ pub struct TargetOptions {
@@ -425,6 +425,9 @@ pub struct TargetOptions {
/// Whether or not stack probes (__rust_probestack) are enabled
pub stack_probes: bool,
@ -40,25 +41,25 @@ index edbbcf6f0b64..f88a3879d6c0 100644
}
impl Default for TargetOptions {
@@ -472,6 +475,7 @@ impl Default for TargetOptions {
abi_blacklist: vec![],
@@ -486,6 +489,7 @@ impl Default for TargetOptions {
crt_static_default: false,
crt_static_respected: false,
stack_probes: false,
+ min_global_align: None,
}
}
}
@@ -695,6 +699,7 @@ impl Target {
try!(key!(panic_strategy, PanicStrategy));
@@ -724,6 +728,7 @@ impl Target {
key!(crt_static_default, bool);
key!(crt_static_respected, bool);
key!(stack_probes, bool);
+ key!(min_global_align, Option<u64>);
if let Some(array) = obj.find("abi-blacklist").and_then(Json::as_array) {
for name in array.iter().filter_map(|abi| abi.as_string()) {
@@ -882,6 +887,7 @@ impl ToJson for Target {
target_option_val!(panic_strategy);
@@ -914,6 +919,7 @@ impl ToJson for Target {
target_option_val!(crt_static_default);
target_option_val!(crt_static_respected);
target_option_val!(stack_probes);
+ target_option_val!(min_global_align);
@ -77,7 +78,7 @@ index 78a6bb7933d9..aad9effacd44 100644
Ok(Target {
llvm_target: "s390x-unknown-linux-gnu".to_string(),
diff --git a/src/librustc_trans/consts.rs b/src/librustc_trans/consts.rs
index eac0a0625671..cfb29d848d0f 100644
index 310cd6fe9559..f7f9b9386841 100644
--- a/src/librustc_trans/consts.rs
+++ b/src/librustc_trans/consts.rs
@@ -26,6 +26,7 @@ use rustc::ty;
@ -88,7 +89,7 @@ index eac0a0625671..cfb29d848d0f 100644
use std::ffi::{CStr, CString};
use syntax::ast;
use syntax::attr;
@@ -36,6 +37,25 @@ pub fn ptrcast(val: ValueRef, ty: Type) -> ValueRef {
@@ -42,6 +43,25 @@ pub fn bitcast(val: ValueRef, ty: Type) -> ValueRef {
}
}
@ -114,7 +115,7 @@ index eac0a0625671..cfb29d848d0f 100644
pub fn addr_of_mut(ccx: &CrateContext,
cv: ValueRef,
align: machine::llalign,
@@ -47,7 +67,7 @@ pub fn addr_of_mut(ccx: &CrateContext,
@@ -53,7 +73,7 @@ pub fn addr_of_mut(ccx: &CrateContext,
bug!("symbol `{}` is already defined", name);
});
llvm::LLVMSetInitializer(gv, cv);
@ -123,7 +124,7 @@ index eac0a0625671..cfb29d848d0f 100644
llvm::LLVMRustSetLinkage(gv, llvm::Linkage::InternalLinkage);
SetUnnamedAddr(gv, true);
gv
@@ -251,7 +271,7 @@ pub fn trans_static<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>,
@@ -271,7 +291,7 @@ pub fn trans_static<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>,
ccx.statics_to_rauw().borrow_mut().push((g, new_g));
new_g
};

View File

@ -3,15 +3,15 @@
%global rust_arches x86_64 i686 armv7hl aarch64 ppc64 ppc64le s390x
# The channel can be stable, beta, or nightly
%{!?channel: %global channel stable}
%{!?channel: %global channel beta}
# To bootstrap from scratch, set the channel and date from src/stage0.txt
# e.g. 1.10.0 wants rustc: 1.9.0-2016-05-24
# or nightly wants some beta-YYYY-MM-DD
%global bootstrap_rust 1.19.0
%global bootstrap_cargo 0.20.0
%global bootstrap_rust 1.20.0
%global bootstrap_cargo 0.21.0
%global bootstrap_channel %{bootstrap_rust}
%global bootstrap_date 2017-07-20
%global bootstrap_date 2017-08-31
# Only the specified arches will use bootstrap binaries.
#global bootstrap_arches %%{rust_arches}
@ -47,8 +47,8 @@
Name: rust
Version: 1.20.0
Release: 2%{?dist}
Version: 1.21.0
Release: 0.beta.2%{?dist}
Summary: The Rust Programming Language
License: (ASL 2.0 or MIT) and (BSD and ISC and MIT)
# ^ written as: (rust itself) and (bundled libraries)
@ -62,10 +62,10 @@ ExclusiveArch: %{rust_arches}
%endif
Source0: https://static.rust-lang.org/dist/%{rustc_package}.tar.xz
Patch1: rust-1.19.0-43297-configure-debuginfo.patch
Patch2: rust-1.20.0-44203-exclude-compiler-rt-test.patch
Patch3: rust-1.20.0-44066-ppc64-struct-abi.patch
Patch4: rust-1.20.0-44440-s390x-global-align.patch
Patch1: rust-1.21.0-44203-exclude-compiler-rt-test.patch
Patch2: rust-1.21.0-44353-install-rustc.patch
Patch3: rust-1.21.0-44066-ppc64-struct-abi.patch
Patch4: rust-1.21.0-44440-s390x-global-align.patch
# Get the Rust triple for any arch.
%{lua: function rust_triple(arch)
@ -311,8 +311,8 @@ sed -i.ffi -e '$a #[link(name = "ffi")] extern {}' \
src/librustc_llvm/lib.rs
%endif
%patch1 -p1 -b .debuginfo
%patch2 -p1 -b .compiler-rt
%patch1 -p1 -b .compiler-rt
%patch2 -p1 -b .install-rustc
%patch3 -p1 -b .ppc64-struct-abi
%patch4 -p1 -b .s390x-global-align
@ -473,6 +473,9 @@ rm -f %{buildroot}%{rustlibdir}/etc/lldb_*.py*
%changelog
* Tue Sep 12 2017 Josh Stone <jistone@redhat.com> - 1.21.0-0.beta.2
- beta test
* Mon Sep 11 2017 Josh Stone <jistone@redhat.com> - 1.20.0-2
- ABI fixes for ppc64 and s390x.