Skip to content

Commit 96ac605

Browse files
committed
---
yaml --- r: 211703 b: refs/heads/auto c: 909cbbe h: refs/heads/master i: 211701: 3482d10 211699: e81c628 211695: b0d9a62 v: v3
1 parent 1e5196b commit 96ac605

File tree

283 files changed

+4029
-3596
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

283 files changed

+4029
-3596
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1010
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1111
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1212
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
13-
refs/heads/auto: f3819f063c93bd95bc0ca16153855dd800d3ae2f
13+
refs/heads/auto: 909cbbeda81f64fe9d92e2d4fe5325cc9a4a327a
1414
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167
1515
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
1616
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336

branches/auto/configure

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/sh
22

33
msg() {
4-
echo "configure: $*"
4+
echo "configure: $1"
55
}
66

77
step_msg() {
@@ -33,8 +33,8 @@ need_ok() {
3333

3434
need_cmd() {
3535
if command -v $1 >/dev/null 2>&1
36-
then msg "found program '$1'"
37-
else err "program '$1' is missing, please install it"
36+
then msg "found program $1"
37+
else err "need program $1"
3838
fi
3939
}
4040

@@ -863,6 +863,11 @@ then
863863
CFG_DISABLE_JEMALLOC=1
864864
fi
865865

866+
if [ -z "$CFG_ENABLE_CLANG" -a -z "$CFG_GCC" ]
867+
then
868+
err "either clang or gcc is required"
869+
fi
870+
866871
# OS X 10.9, gcc is actually clang. This can cause some confusion in the build
867872
# system, so if we find that gcc is clang, we should just use clang directly.
868873
if [ $CFG_OSTYPE = apple-darwin -a -z "$CFG_ENABLE_CLANG" ]
@@ -981,7 +986,7 @@ then
981986
| cut -d ' ' -f 2)
982987

983988
case $CFG_CLANG_VERSION in
984-
(3.2* | 3.3* | 3.4* | 3.5* | 3.6* | 3.7*)
989+
(3.2* | 3.3* | 3.4* | 3.5* | 3.6*)
985990
step_msg "found ok version of CLANG: $CFG_CLANG_VERSION"
986991
if [ -z "$CC" ]
987992
then

branches/auto/man/rustc.1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
.TH RUSTC "1" "August 2015" "rustc 1.2.0" "User Commands"
1+
.TH RUSTC "1" "March 2014" "rustc 0.13.0" "User Commands"
22
.SH NAME
33
rustc \- The Rust compiler
44
.SH SYNOPSIS
@@ -160,7 +160,7 @@ If the value is 'help', then a list of available CPUs is printed.
160160
\fBtarget\-feature\fR='\fI+feature1\fR,\fI\-feature2\fR'
161161
A comma\[hy]separated list of features to enable or disable for the target.
162162
A preceding '+' enables a feature while a preceding '\-' disables it.
163-
Available features can be discovered through \fIllc -mcpu=help\fR.
163+
Available features can be discovered through \fItarget\-cpu=help\fR.
164164
.TP
165165
\fBpasses\fR=\fIval\fR
166166
A space\[hy]separated list of extra LLVM passes to run.

branches/auto/man/rustdoc.1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
.TH RUSTDOC "1" "August 2015" "rustdoc 1.2.0" "User Commands"
1+
.TH RUSTDOC "1" "March 2014" "rustdoc 0.13.0" "User Commands"
22
.SH NAME
33
rustdoc \- generate documentation from Rust source code
44
.SH SYNOPSIS

branches/auto/mk/cfg/aarch64-linux-android.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# aarch64-linux-android configuration
22
# CROSS_PREFIX_aarch64-linux-android-
33
CC_aarch64-linux-android=$(CFG_ANDROID_CROSS_PATH)/bin/aarch64-linux-android-gcc
4+
LINK_aarch64-linux-android=$(CFG_ANDROID_CROSS_PATH)/bin/aarch64-linux-android-gcc
45
CXX_aarch64-linux-android=$(CFG_ANDROID_CROSS_PATH)/bin/aarch64-linux-android-g++
56
CPP_aarch64-linux-android=$(CFG_ANDROID_CROSS_PATH)/bin/aarch64-linux-android-gcc -E
67
AR_aarch64-linux-android=$(CFG_ANDROID_CROSS_PATH)/bin/aarch64-linux-android-ar

branches/auto/mk/cfg/aarch64-unknown-linux-gnu.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# aarch64-unknown-linux-gnu configuration
22
CROSS_PREFIX_aarch64-unknown-linux-gnu=aarch64-linux-gnu-
33
CC_aarch64-unknown-linux-gnu=gcc
4+
LINK_aarch64-unknown-linux-gnu=gcc
45
CXX_aarch64-unknown-linux-gnu=g++
56
CPP_aarch64-unknown-linux-gnu=gcc -E
67
AR_aarch64-unknown-linux-gnu=ar

branches/auto/mk/cfg/arm-linux-androideabi.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# arm-linux-androideabi configuration
2+
LINK_arm-linux-androideabi=$(CFG_ANDROID_CROSS_PATH)/bin/arm-linux-androideabi-gcc
23
CC_arm-linux-androideabi=$(CFG_ANDROID_CROSS_PATH)/bin/arm-linux-androideabi-gcc
34
CXX_arm-linux-androideabi=$(CFG_ANDROID_CROSS_PATH)/bin/arm-linux-androideabi-g++
45
CPP_arm-linux-androideabi=$(CFG_ANDROID_CROSS_PATH)/bin/arm-linux-androideabi-gcc -E

branches/auto/mk/cfg/x86_64-pc-windows-gnu.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# x86_64-pc-windows-gnu configuration
22
CROSS_PREFIX_x86_64-pc-windows-gnu=x86_64-w64-mingw32-
33
CC_x86_64-pc-windows-gnu=gcc
4+
LINK_x86_64-pc-windows-gnu=gcc
45
CXX_x86_64-pc-windows-gnu=g++
56
CPP_x86_64-pc-windows-gnu=gcc -E
67
AR_x86_64-pc-windows-gnu=ar

branches/auto/mk/dist.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ dist-install-dir-$(1): PREPARE_BIN_CMD=$(DEFAULT_PREPARE_BIN_CMD)
123123
dist-install-dir-$(1): PREPARE_LIB_CMD=$(DEFAULT_PREPARE_LIB_CMD)
124124
dist-install-dir-$(1): PREPARE_MAN_CMD=$(DEFAULT_PREPARE_MAN_CMD)
125125
dist-install-dir-$(1): PREPARE_CLEAN=true
126-
dist-install-dir-$(1): prepare-base-dir-$(1) docs
126+
dist-install-dir-$(1): prepare-base-dir-$(1) docs compiler-docs
127127
$$(Q)mkdir -p $$(PREPARE_DEST_DIR)/share/doc/rust
128128
$$(Q)$$(PREPARE_MAN_CMD) $$(S)COPYRIGHT $$(PREPARE_DEST_DIR)/share/doc/rust
129129
$$(Q)$$(PREPARE_MAN_CMD) $$(S)LICENSE-APACHE $$(PREPARE_DEST_DIR)/share/doc/rust
@@ -163,7 +163,7 @@ endif
163163
--legacy-manifest-dirs=rustlib,cargo
164164
$$(Q)rm -R tmp/dist/$$(PKG_NAME)-$(1)-image
165165

166-
dist-doc-install-dir-$(1): docs
166+
dist-doc-install-dir-$(1): docs compiler-docs
167167
$$(Q)mkdir -p tmp/dist/$$(DOC_PKG_NAME)-$(1)-image/share/doc/rust
168168
$$(Q)cp -r doc tmp/dist/$$(DOC_PKG_NAME)-$(1)-image/share/doc/rust/html
169169

@@ -251,7 +251,7 @@ distcheck-tar-bins: dist-tar-bins
251251

252252
# Just copy the docs to a folder under dist with the appropriate name
253253
# for uploading to S3
254-
dist-docs: docs
254+
dist-docs: docs compiler-docs
255255
$(Q) rm -Rf dist/doc
256256
$(Q) mkdir -p dist/doc/
257257
$(Q) cp -r doc dist/doc/$(CFG_PACKAGE_VERS)

branches/auto/mk/docs.mk

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,7 @@ ERR_IDX_GEN = $(RPATH_VAR2_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $(ERR_IDX_GEN_EXE)
7777

7878
D := $(S)src/doc
7979

80-
# FIXME (#25705) eventually may want to put error-index target back here.
81-
DOC_TARGETS := trpl style
80+
DOC_TARGETS := trpl style error-index
8281
COMPILER_DOC_TARGETS :=
8382
DOC_L10N_TARGETS :=
8483

branches/auto/mk/platform.mk

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -120,15 +120,6 @@ endef
120120
$(foreach target,$(CFG_TARGET), \
121121
$(eval $(call ADD_INSTALLED_OBJECTS,$(target))))
122122

123-
define DEFINE_LINKER
124-
ifndef LINK_$(1)
125-
LINK_$(1) := $$(CC_$(1))
126-
endif
127-
endef
128-
129-
$(foreach target,$(CFG_TARGET), \
130-
$(eval $(call DEFINE_LINKER,$(target))))
131-
132123
# The -Qunused-arguments sidesteps spurious warnings from clang
133124
define FILTER_FLAGS
134125
ifeq ($$(CFG_USING_CLANG),1)

branches/auto/mk/tests.mk

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -581,6 +581,10 @@ ifeq ($(CFG_LLDB),)
581581
CTEST_DISABLE_debuginfo-lldb = "no lldb found"
582582
endif
583583

584+
ifeq ($(CFG_CLANG),)
585+
CTEST_DISABLE_codegen = "no clang found"
586+
endif
587+
584588
ifneq ($(CFG_OSTYPE),apple-darwin)
585589
CTEST_DISABLE_debuginfo-lldb = "lldb tests are only run on darwin"
586590
endif
@@ -641,6 +645,7 @@ CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) := \
641645
--run-lib-path $$(TLIB$(1)_T_$(2)_H_$(3)) \
642646
--rustc-path $$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) \
643647
--rustdoc-path $$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3)) \
648+
--clang-path $(if $(CFG_CLANG),$(CFG_CLANG),clang) \
644649
--llvm-bin-path $(CFG_LLVM_INST_DIR_$(CFG_BUILD))/bin \
645650
--aux-base $$(S)src/test/auxiliary/ \
646651
--stage-id stage$(1)-$(2) \

branches/auto/src/compiletest/common.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,9 @@ pub struct Config {
8080
// The python executable
8181
pub python: String,
8282

83+
// The clang executable
84+
pub clang_path: Option<PathBuf>,
85+
8386
// The llvm binaries path
8487
pub llvm_bin_path: Option<PathBuf>,
8588

branches/auto/src/compiletest/compiletest.rs

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ use std::fs;
3333
use std::path::{Path, PathBuf};
3434
use getopts::{optopt, optflag, reqopt};
3535
use common::Config;
36-
use common::{Pretty, DebugInfoGdb, DebugInfoLldb};
36+
use common::{Pretty, DebugInfoGdb, DebugInfoLldb, Codegen};
3737
use util::logv;
3838

3939
pub mod procsrv;
@@ -63,6 +63,7 @@ pub fn parse_config(args: Vec<String> ) -> Config {
6363
reqopt("", "rustc-path", "path to rustc to use for compiling", "PATH"),
6464
reqopt("", "rustdoc-path", "path to rustdoc to use for compiling", "PATH"),
6565
reqopt("", "python", "path to python to use for doc tests", "PATH"),
66+
optopt("", "clang-path", "path to executable for codegen tests", "PATH"),
6667
optopt("", "valgrind-path", "path to Valgrind executable for Valgrind tests", "PROGRAM"),
6768
optflag("", "force-valgrind", "fail if Valgrind tests cannot be run under Valgrind"),
6869
optopt("", "llvm-bin-path", "path to directory holding llvm binaries", "DIR"),
@@ -132,6 +133,7 @@ pub fn parse_config(args: Vec<String> ) -> Config {
132133
rustc_path: opt_path(matches, "rustc-path"),
133134
rustdoc_path: opt_path(matches, "rustdoc-path"),
134135
python: matches.opt_str("python").unwrap(),
136+
clang_path: matches.opt_str("clang-path").map(|s| PathBuf::from(&s)),
135137
valgrind_path: matches.opt_str("valgrind-path"),
136138
force_valgrind: matches.opt_present("force-valgrind"),
137139
llvm_bin_path: matches.opt_str("llvm-bin-path").map(|s| PathBuf::from(&s)),
@@ -282,7 +284,13 @@ pub fn make_tests(config: &Config) -> Vec<test::TestDescAndFn> {
282284
let file = file.unwrap().path();
283285
debug!("inspecting file {:?}", file.display());
284286
if is_test(config, &file) {
285-
tests.push(make_test(config, &file))
287+
let t = make_test(config, &file, || {
288+
match config.mode {
289+
Codegen => make_metrics_test_closure(config, &file),
290+
_ => make_test_closure(config, &file)
291+
}
292+
});
293+
tests.push(t)
286294
}
287295
}
288296
tests
@@ -315,15 +323,16 @@ pub fn is_test(config: &Config, testfile: &Path) -> bool {
315323
return valid;
316324
}
317325

318-
pub fn make_test(config: &Config, testfile: &Path) -> test::TestDescAndFn
326+
pub fn make_test<F>(config: &Config, testfile: &Path, f: F) -> test::TestDescAndFn where
327+
F: FnOnce() -> test::TestFn,
319328
{
320329
test::TestDescAndFn {
321330
desc: test::TestDesc {
322331
name: make_test_name(config, testfile),
323332
ignore: header::is_test_ignored(config, testfile),
324333
should_panic: test::ShouldPanic::No,
325334
},
326-
testfn: make_test_closure(config, &testfile),
335+
testfn: f(),
327336
}
328337
}
329338

@@ -348,6 +357,14 @@ pub fn make_test_closure(config: &Config, testfile: &Path) -> test::TestFn {
348357
}))
349358
}
350359

360+
pub fn make_metrics_test_closure(config: &Config, testfile: &Path) -> test::TestFn {
361+
let config = (*config).clone();
362+
let testfile = testfile.to_path_buf();
363+
test::DynMetricFn(box move |mm: &mut test::MetricMap| {
364+
runtest::run_metrics(config, &testfile, mm)
365+
})
366+
}
367+
351368
fn extract_gdb_version(full_version_line: Option<String>) -> Option<String> {
352369
match full_version_line {
353370
Some(ref full_version_line)

0 commit comments

Comments
 (0)