Skip to content

Commit 99ced8a

Browse files
committed
---
yaml --- r: 277438 b: refs/heads/try c: 3c14116 h: refs/heads/master
1 parent 16b93a2 commit 99ced8a

File tree

603 files changed

+17004
-12975
lines changed

Some content is hidden

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

603 files changed

+17004
-12975
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 6dbb0e86aec11050480beb76eade6fb805010ba7
33
refs/heads/snap-stage3: 235d77457d80b549dad3ac36d94f235208a1eafb
4-
refs/heads/try: 10abb666e48abdb747946db6de21317708e18cf5
4+
refs/heads/try: 3c14116f64d3830f1f7d25600867c3e74fa6dbd2
55
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
66
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
77
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ are:
307307
[gsearchdocs]: https://www.google.com/search?q=site:doc.rust-lang.org+your+query+here
308308
[rif]: http://internals.rust-lang.org
309309
[rr]: https://doc.rust-lang.org/book/README.html
310-
[tlgba]: http://tomlee.co/2014/04/03/a-more-detailed-tour-of-the-rust-compiler/
310+
[tlgba]: http://tomlee.co/2014/04/a-more-detailed-tour-of-the-rust-compiler/
311311
[ro]: http://www.rustaceans.org/
312312
[rctd]: ./COMPILER_TESTS.md
313313
[cheatsheet]: http://buildbot.rust-lang.org/homu/

branches/try/Makefile.in

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -214,13 +214,6 @@ include $(CFG_SRC_DIR)mk/debuggers.mk
214214
# Secondary makefiles, conditionalized for speed
215215
######################################################################
216216

217-
# Binary snapshots
218-
ifneq ($(strip $(findstring snap,$(MAKECMDGOALS)) \
219-
$(findstring clean,$(MAKECMDGOALS))),)
220-
CFG_INFO := $(info cfg: including snap rules)
221-
include $(CFG_SRC_DIR)mk/snap.mk
222-
endif
223-
224217
# The test suite
225218
ifneq ($(strip $(findstring check,$(MAKECMDGOALS)) \
226219
$(findstring test,$(MAKECMDGOALS)) \

branches/try/RELEASES.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -140,9 +140,9 @@ Cargo
140140
Performance
141141
-----------
142142

143-
* [During type unification, the complexity of comparing variables for
144-
equivalance was reduced from `O(n!)` to `O(n)`][1.9tu]. This leads
145-
to major compile-time improvements in some scenarios.
143+
* [The time complexity of comparing variables for equivalence during type
144+
unification is reduced from _O_(_n_!) to _O_(_n_)][1.9tu]. This leads
145+
to major compilation time improvement in some scenarios.
146146
* [`ToString` is specialized for `str`, giving it the same performance
147147
as `to_owned`][1.9ts].
148148
* [Spawning processes with `Command::output` no longer creates extra

branches/try/configure

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -609,6 +609,7 @@ opt llvm-version-check 1 "check if the LLVM version is supported, build anyway"
609609
opt rustbuild 0 "use the rust and cargo based build system"
610610
opt orbit 0 "get MIR where it belongs - everywhere; most importantly, in orbit"
611611
opt codegen-tests 1 "run the src/test/codegen tests"
612+
opt option-checking 1 "complain about unrecognized options in this configure script"
612613

613614
# Optimization and debugging options. These may be overridden by the release channel, etc.
614615
opt_nosave optimize 1 "build optimized rust code"
@@ -674,8 +675,11 @@ then
674675
fi
675676

676677
# Validate Options
677-
step_msg "validating $CFG_SELF args"
678-
validate_opt
678+
if [ -z "$CFG_DISABLE_OPTION_CHECKING" ]
679+
then
680+
step_msg "validating $CFG_SELF args"
681+
validate_opt
682+
fi
679683

680684
# Validate the release channel, and configure options
681685
case "$CFG_RELEASE_CHANNEL" in
@@ -819,6 +823,19 @@ then
819823
fi
820824
fi
821825

826+
# LLDB tests on OSX require /usr/bin/python, not something like Homebrew's
827+
# /usr/local/bin/python. We're loading a compiled module for LLDB tests which is
828+
# only compatible with the system.
829+
case $CFG_BUILD in
830+
*-apple-darwin)
831+
CFG_LLDB_PYTHON=/usr/bin/python
832+
;;
833+
*)
834+
CFG_LLDB_PYTHON=$CFG_PYTHON
835+
;;
836+
esac
837+
putvar CFG_LLDB_PYTHON
838+
822839
step_msg "looking for target specific programs"
823840

824841
probe CFG_ADB adb

branches/try/mk/crates.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ DEPS_rustc_const_eval := rustc_const_math rustc syntax log serialize \
9797
rustc_back graphviz
9898

9999
DEPS_rustc := syntax fmt_macros flate arena serialize getopts rbml \
100-
log graphviz rustc_back rustc_data_structures\
100+
log graphviz rustc_llvm rustc_back rustc_data_structures\
101101
rustc_const_math
102102
DEPS_rustc_back := std syntax flate log libc
103103
DEPS_rustc_borrowck := rustc rustc_mir log graphviz syntax
@@ -128,12 +128,12 @@ DEPS_rustdoc := rustc rustc_driver native:hoedown serialize getopts \
128128
test rustc_lint rustc_const_eval
129129

130130

131-
TOOL_DEPS_compiletest := test getopts log
131+
TOOL_DEPS_compiletest := test getopts log serialize
132132
TOOL_DEPS_rustdoc := rustdoc
133133
TOOL_DEPS_rustc := rustc_driver
134134
TOOL_DEPS_rustbook := std rustdoc
135135
TOOL_DEPS_error_index_generator := rustdoc syntax serialize
136-
TOOL_SOURCE_compiletest := $(S)src/compiletest/compiletest.rs
136+
TOOL_SOURCE_compiletest := $(S)src/tools/compiletest/src/main.rs
137137
TOOL_SOURCE_rustdoc := $(S)src/driver/driver.rs
138138
TOOL_SOURCE_rustc := $(S)src/driver/driver.rs
139139
TOOL_SOURCE_rustbook := $(S)src/tools/rustbook/main.rs

branches/try/mk/dist.mk

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ PKG_FILES := \
5050
$(addprefix $(S)src/, \
5151
bootstrap \
5252
build_helper \
53-
compiletest \
5453
doc \
5554
driver \
5655
etc \
@@ -62,7 +61,7 @@ PKG_FILES := \
6261
rtstartup \
6362
rustllvm \
6463
rustc \
65-
snapshots.txt \
64+
stage0.txt \
6665
rust-installer \
6766
tools \
6867
test) \

branches/try/mk/main.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ CFG_FILENAME_EXTRA=$(shell printf '%s' $(CFG_RELEASE)$(CFG_EXTRA_FILENAME) | $(C
3434
# intentionally not "secure" by any definition, this is largely just a deterrent
3535
# from users enabling unstable features on the stable compiler.
3636
CFG_BOOTSTRAP_KEY=$(CFG_FILENAME_EXTRA)
37+
CFG_BOOTSTRAP_KEY_STAGE0=$(shell grep 'rustc_key' $(S)src/stage0.txt | sed 's/rustc_key: '//)
3738

3839
ifeq ($(CFG_RELEASE_CHANNEL),stable)
3940
# This is the normal semver version string, e.g. "0.12.0", "0.12.0-nightly"

branches/try/mk/reconfig.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,6 @@ else
3838
SREL_ROOT := $(SREL)
3939
endif
4040

41-
config.stamp: $(S)configure $(S)Makefile.in $(S)src/snapshots.txt
41+
config.stamp: $(S)configure $(S)Makefile.in $(S)src/stage0.txt
4242
@$(call E, cfg: reconfiguring)
4343
$(SREL_ROOT)configure $(CFG_CONFIGURE_ARGS)

branches/try/mk/rustllvm.mk

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ $$(RT_OUTPUT_DIR_$(1))/$$(call CFG_STATIC_LIB_NAME_$(1),rustllvm): \
4343
@$$(call E, link: $$@)
4444
$$(Q)$$(call CFG_CREATE_ARCHIVE_$(1),$$@) $$^
4545

46+
RUSTLLVM_COMPONENTS_$(1) = $$(shell echo $$(LLVM_ALL_COMPONENTS_$(1)) |\
47+
tr 'a-z-' 'A-Z_'| sed -e 's/^ //;s/\([^ ]*\)/\-DLLVM_COMPONENT_\1/g')
48+
4649
# On MSVC we need to double-escape arguments that llvm-config printed which
4750
# start with a '/'. The shell we're running in will auto-translate the argument
4851
# `/foo` to `C:/msys64/foo` but we really want it to be passed through as `/foo`
@@ -51,6 +54,7 @@ $(1)/rustllvm/%.o: $(S)src/rustllvm/%.cpp $$(MKFILE_DEPS) $$(LLVM_CONFIG_$(1))
5154
@$$(call E, compile: $$@)
5255
$$(Q)$$(call CFG_COMPILE_CXX_$(1), $$@,) \
5356
$$(subst /,//,$$(LLVM_CXXFLAGS_$(1))) \
57+
$$(RUSTLLVM_COMPONENTS_$(1)) \
5458
$$(EXTRA_RUSTLLVM_CXXFLAGS_$(1)) \
5559
$$(RUSTLLVM_INCS_$(1)) \
5660
$$<

branches/try/mk/snap.mk

Lines changed: 0 additions & 28 deletions
This file was deleted.

branches/try/mk/stage0.mk

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,14 @@ $(HLIB0_H_$(CFG_BUILD))/:
1010
endif
1111

1212
$(SNAPSHOT_RUSTC_POST_CLEANUP): \
13-
$(S)src/snapshots.txt \
14-
$(S)src/etc/get-snapshot.py $(MKFILE_DEPS) \
13+
$(S)src/stage0.txt \
14+
$(S)src/etc/get-stage0.py $(MKFILE_DEPS) \
1515
| $(HBIN0_H_$(CFG_BUILD))/
16-
1716
@$(call E, fetch: $@)
18-
# Note: the variable "SNAPSHOT_FILE" is generally not set, and so
19-
# we generally only pass one argument to this script.
2017
ifdef CFG_ENABLE_LOCAL_RUST
2118
$(Q)$(S)src/etc/local_stage0.sh $(CFG_BUILD) $(CFG_LOCAL_RUST_ROOT) rustlib
2219
else
23-
$(Q)$(CFG_PYTHON) $(S)src/etc/get-snapshot.py $(CFG_BUILD) $(SNAPSHOT_FILE)
20+
$(Q)$(CFG_PYTHON) $(S)src/etc/get-stage0.py $(CFG_BUILD)
2421
endif
2522
$(Q)if [ -e "$@" ]; then touch "$@"; else echo "ERROR: snapshot $@ not found"; exit 1; fi
2623

branches/try/mk/target.mk

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,11 @@ $(foreach host,$(CFG_HOST), \
6565
# $(4) is the crate name
6666
define RUST_TARGET_STAGE_N
6767

68+
ifeq ($(1),0)
69+
$$(TLIB$(1)_T_$(2)_H_$(3))/stamp.$(4): \
70+
export RUSTC_BOOTSTRAP_KEY := $$(CFG_BOOTSTRAP_KEY_STAGE0)
71+
endif
72+
6873
$$(TLIB$(1)_T_$(2)_H_$(3))/stamp.$(4): CFG_COMPILER_HOST_TRIPLE = $(2)
6974
$$(TLIB$(1)_T_$(2)_H_$(3))/stamp.$(4): \
7075
$$(CRATEFILE_$(4)) \
@@ -113,6 +118,11 @@ endef
113118
# $(4) - name of the tool being built
114119
define TARGET_TOOL
115120

121+
ifeq ($(1),0)
122+
$$(TBIN$(1)_T_$(2)_H_$(3))/$(4)$$(X_$(2)): \
123+
export RUSTC_BOOTSTRAP_KEY := $$(CFG_BOOTSTRAP_KEY_STAGE0)
124+
endif
125+
116126
$$(TBIN$(1)_T_$(2)_H_$(3))/$(4)$$(X_$(2)): \
117127
$$(TOOL_SOURCE_$(4)) \
118128
$$(TOOL_INPUTS_$(4)) \
@@ -167,11 +177,15 @@ SNAPSHOT_RUSTC_POST_CLEANUP=$(HBIN0_H_$(CFG_BUILD))/rustc$(X_$(CFG_BUILD))
167177

168178
define TARGET_HOST_RULES
169179

170-
$$(TLIB$(1)_T_$(2)_H_$(3))/:
180+
$$(TLIB$(1)_T_$(2)_H_$(3))/: $$(SNAPSHOT_RUSTC_POST_CLEANUP)
181+
mkdir -p $$@
182+
183+
$$(TBIN$(1)_T_$(2)_H_$(3))/: $$(SNAPSHOT_RUSTC_POST_CLEANUP)
171184
mkdir -p $$@
172185

173186
$$(TLIB$(1)_T_$(2)_H_$(3))/%: $$(RT_OUTPUT_DIR_$(2))/% \
174-
| $$(TLIB$(1)_T_$(2)_H_$(3))/ $$(SNAPSHOT_RUSTC_POST_CLEANUP)
187+
$$(SNAPSHOT_RUSTC_POST_CLEANUP) \
188+
| $$(TLIB$(1)_T_$(2)_H_$(3))/
175189
@$$(call E, cp: $$@)
176190
$$(Q)cp $$< $$@
177191
endef

branches/try/mk/tests.mk

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -241,13 +241,16 @@ cleantestlibs:
241241
######################################################################
242242

243243
.PHONY: tidy
244-
tidy: $(HBIN0_H_$(CFG_BUILD))/tidy$(X_$(CFG_BUILD))
244+
tidy: $(HBIN0_H_$(CFG_BUILD))/tidy$(X_$(CFG_BUILD)) \
245+
$(SNAPSHOT_RUSTC_POST_CLEANUP)
245246
$(TARGET_RPATH_VAR0_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $< $(S)src
246247

247248
$(HBIN0_H_$(CFG_BUILD))/tidy$(X_$(CFG_BUILD)): \
248249
$(TSREQ0_T_$(CFG_BUILD)_H_$(CFG_BUILD)) \
249250
$(TLIB0_T_$(CFG_BUILD)_H_$(CFG_BUILD))/stamp.std \
250-
$(call rwildcard,$(S)src/tools/tidy/src,*.rs)
251+
$(call rwildcard,$(S)src/tools/tidy/src,*.rs) \
252+
$(SNAPSHOT_RUSTC_POST_CLEANUP) | \
253+
$(TLIB0_T_$(CFG_BUILD)_H_$(CFG_BUILD))
251254
$(STAGE0_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $(S)src/tools/tidy/src/main.rs \
252255
--out-dir $(@D) --crate-name tidy
253256

@@ -611,15 +614,16 @@ CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) := \
611614
--run-lib-path $$(TLIB$(1)_T_$(2)_H_$(3)) \
612615
--rustc-path $$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) \
613616
--rustdoc-path $$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3)) \
614-
--llvm-bin-path $(CFG_LLVM_INST_DIR_$(CFG_BUILD))/bin \
617+
--llvm-filecheck $(CFG_LLVM_INST_DIR_$(CFG_BUILD))/bin/FileCheck \
615618
--aux-base $$(S)src/test/auxiliary/ \
616619
--stage-id stage$(1)-$(2) \
617620
--target $(2) \
618621
--host $(3) \
619-
--python $$(CFG_PYTHON) \
622+
--docck-python $$(CFG_PYTHON) \
623+
--lldb-python $$(CFG_LLDB_PYTHON) \
620624
--gdb-version="$(CFG_GDB_VERSION)" \
621625
--lldb-version="$(CFG_LLDB_VERSION)" \
622-
--android-cross-path=$(CFG_ANDROID_CROSS_PATH) \
626+
--android-cross-path=$(CFG_ARM_LINUX_ANDROIDEABI_NDK) \
623627
--adb-path=$(CFG_ADB) \
624628
--adb-test-dir=$(CFG_ADB_TEST_DIR) \
625629
--host-rustcflags "$(RUSTC_FLAGS_$(3)) $$(CTEST_RUSTC_FLAGS) -L $$(RT_OUTPUT_DIR_$(3))" \

0 commit comments

Comments
 (0)