Skip to content

Commit 8c6a556

Browse files
committed
---
yaml --- r: 277073 b: refs/heads/try c: 04b7427 h: refs/heads/master i: 277071: 6f00e7d
1 parent 329dc29 commit 8c6a556

File tree

772 files changed

+13368
-9477
lines changed

Some content is hidden

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

772 files changed

+13368
-9477
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: 8cd9c2b2599f37bc5d33ce461fb21c2b70bfbbff
4+
refs/heads/try: 04b7427bb19c6977e308a3523a7d0f3512471c1d
55
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
66
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
77
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@
7878
/stage3/
7979
/test/
8080
/tmp/
81+
/obj/
8182
TAGS
8283
TAGS.emacs
8384
TAGS.vi

branches/try/CONTRIBUTING.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,8 @@ which includes important information about what platform you're on, what
7171
version of Rust you're using, etc.
7272

7373
Sometimes, a backtrace is helpful, and so including that is nice. To get
74-
a backtrace, set the `RUST_BACKTRACE` environment variable. The easiest way
74+
a backtrace, set the `RUST_BACKTRACE` environment variable to a value
75+
other than `0`. The easiest way
7576
to do this is to invoke `rustc` like this:
7677

7778
```bash

branches/try/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,10 +177,11 @@ To contribute to Rust, please see [CONTRIBUTING](CONTRIBUTING.md).
177177
Rust has an [IRC] culture and most real-time collaboration happens in a
178178
variety of channels on Mozilla's IRC network, irc.mozilla.org. The
179179
most popular channel is [#rust], a venue for general discussion about
180-
Rust, and a good place to ask for help.
180+
Rust. And a good place to ask for help would be [#rust-beginners].
181181
182182
[IRC]: https://en.wikipedia.org/wiki/Internet_Relay_Chat
183183
[#rust]: irc://irc.mozilla.org/rust
184+
[#rust-beginners]: irc://irc.mozilla.org/rust-beginners
184185
185186
## License
186187

branches/try/RELEASES.md

Lines changed: 496 additions & 0 deletions
Large diffs are not rendered by default.

branches/try/configure

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -608,6 +608,7 @@ opt inject-std-version 1 "inject the current compiler version of libstd into pro
608608
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"
611+
opt codegen-tests 1 "run the src/test/codegen tests"
611612

612613
# Optimization and debugging options. These may be overridden by the release channel, etc.
613614
opt_nosave optimize 1 "build optimized rust code"
@@ -716,18 +717,6 @@ if [ -n "$CFG_ENABLE_DEBUG_JEMALLOC" ]; then putvar CFG_ENABLE_DEBUG_JEMALLOC; f
716717

717718
if [ -n "$CFG_ENABLE_ORBIT" ]; then putvar CFG_ENABLE_ORBIT; fi
718719

719-
# A magic value that allows the compiler to use unstable features
720-
# during the bootstrap even when doing so would normally be an error
721-
# because of feature staging or because the build turns on
722-
# warnings-as-errors and unstable features default to warnings. The
723-
# build has to match this key in an env var. Meant to be a mild
724-
# deterrent from users just turning on unstable features on the stable
725-
# channel.
726-
# Basing CFG_BOOTSTRAP_KEY on CFG_BOOTSTRAP_KEY lets it get picked up
727-
# during a Makefile reconfig.
728-
CFG_BOOTSTRAP_KEY="${CFG_BOOTSTRAP_KEY-`date +%H:%M:%S`}"
729-
putvar CFG_BOOTSTRAP_KEY
730-
731720
step_msg "looking for build programs"
732721

733722
probe_need CFG_CURLORWGET curl wget
@@ -1497,7 +1486,9 @@ do
14971486
LLVM_INST_DIR=$CFG_LLVM_ROOT
14981487
do_reconfigure=0
14991488
# Check that LLVm FileCheck is available. Needed for the tests
1500-
need_cmd $LLVM_INST_DIR/bin/FileCheck
1489+
if [ -z "$CFG_DISABLE_CODEGEN_TESTS" ]; then
1490+
need_cmd $LLVM_INST_DIR/bin/FileCheck
1491+
fi
15011492
fi
15021493

15031494
if [ ${do_reconfigure} -ne 0 ]

branches/try/man/rustc.1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -268,15 +268,15 @@ the maximum number of threads used for this purpose.
268268

269269
.TP
270270
\fBRUST_TEST_NOCAPTURE\fR
271-
A synonym for the --nocapture flag.
271+
If set to a value other than "0", a synonym for the --nocapture flag.
272272

273273
.TP
274274
\fBRUST_MIN_STACK\fR
275275
Sets the minimum stack size for new threads.
276276

277277
.TP
278278
\fBRUST_BACKTRACE\fR
279-
If set, produces a backtrace in the output of a program which panics.
279+
If set to a value different than "0", produces a backtrace in the output of a program which panics.
280280

281281
.SH "EXAMPLES"
282282
To build an executable from a source file with a main function:

branches/try/mk/crates.mk

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@ TARGET_CRATES := libc std term \
5656
alloc_system alloc_jemalloc
5757
RUSTC_CRATES := rustc rustc_typeck rustc_mir rustc_borrowck rustc_resolve rustc_driver \
5858
rustc_trans rustc_back rustc_llvm rustc_privacy rustc_lint \
59-
rustc_data_structures rustc_front rustc_platform_intrinsics \
59+
rustc_data_structures rustc_platform_intrinsics \
6060
rustc_plugin rustc_metadata rustc_passes rustc_save_analysis \
61-
rustc_const_eval rustc_const_math
61+
rustc_const_eval rustc_const_math rustc_incremental
6262
HOST_CRATES := syntax syntax_ext $(RUSTC_CRATES) rustdoc fmt_macros \
6363
flate arena graphviz rbml log serialize
6464
TOOLS := compiletest rustdoc rustc rustbook error_index_generator
@@ -93,38 +93,39 @@ DEPS_syntax := std term serialize log arena libc rustc_bitflags rustc_unicode
9393
DEPS_syntax_ext := syntax fmt_macros
9494

9595
DEPS_rustc_const_math := std syntax log serialize
96-
DEPS_rustc_const_eval := rustc_const_math rustc syntax log serialize rustc_front \
96+
DEPS_rustc_const_eval := rustc_const_math rustc syntax log serialize \
9797
rustc_back graphviz
9898

99-
DEPS_rustc := syntax fmt_macros flate arena serialize getopts rbml rustc_front\
99+
DEPS_rustc := syntax fmt_macros flate arena serialize getopts rbml \
100100
log graphviz rustc_back rustc_data_structures\
101101
rustc_const_math
102-
DEPS_rustc_back := std syntax rustc_front flate log libc
103-
DEPS_rustc_borrowck := rustc rustc_front rustc_mir log graphviz syntax
102+
DEPS_rustc_back := std syntax flate log libc
103+
DEPS_rustc_borrowck := rustc rustc_mir log graphviz syntax
104104
DEPS_rustc_data_structures := std log serialize
105105
DEPS_rustc_driver := arena flate getopts graphviz libc rustc rustc_back rustc_borrowck \
106106
rustc_typeck rustc_mir rustc_resolve log syntax serialize rustc_llvm \
107-
rustc_trans rustc_privacy rustc_lint rustc_front rustc_plugin \
108-
rustc_metadata syntax_ext rustc_passes rustc_save_analysis rustc_const_eval
109-
DEPS_rustc_front := std syntax log serialize
107+
rustc_trans rustc_privacy rustc_lint rustc_plugin \
108+
rustc_metadata syntax_ext rustc_passes rustc_save_analysis rustc_const_eval \
109+
rustc_incremental
110110
DEPS_rustc_lint := rustc log syntax rustc_const_eval
111111
DEPS_rustc_llvm := native:rustllvm libc std rustc_bitflags
112-
DEPS_rustc_metadata := rustc rustc_front syntax rbml rustc_const_math
113-
DEPS_rustc_passes := syntax rustc core rustc_front rustc_const_eval
114-
DEPS_rustc_mir := rustc rustc_front syntax rustc_const_math rustc_const_eval
115-
DEPS_rustc_resolve := arena rustc rustc_front log syntax
112+
DEPS_rustc_metadata := rustc syntax rbml rustc_const_math
113+
DEPS_rustc_passes := syntax rustc core rustc_const_eval
114+
DEPS_rustc_mir := rustc syntax rustc_const_math rustc_const_eval
115+
DEPS_rustc_resolve := arena rustc log syntax
116116
DEPS_rustc_platform_intrinsics := std
117117
DEPS_rustc_plugin := rustc rustc_metadata syntax rustc_mir
118-
DEPS_rustc_privacy := rustc rustc_front log syntax
118+
DEPS_rustc_privacy := rustc log syntax
119119
DEPS_rustc_trans := arena flate getopts graphviz libc rustc rustc_back rustc_mir \
120-
log syntax serialize rustc_llvm rustc_front rustc_platform_intrinsics \
121-
rustc_const_math rustc_const_eval
122-
DEPS_rustc_save_analysis := rustc log syntax rustc_front
123-
DEPS_rustc_typeck := rustc syntax rustc_front rustc_platform_intrinsics rustc_const_math \
120+
log syntax serialize rustc_llvm rustc_platform_intrinsics \
121+
rustc_const_math rustc_const_eval rustc_incremental
122+
DEPS_rustc_incremental := rbml rustc serialize rustc_data_structures
123+
DEPS_rustc_save_analysis := rustc log syntax
124+
DEPS_rustc_typeck := rustc syntax rustc_platform_intrinsics rustc_const_math \
124125
rustc_const_eval
125126

126127
DEPS_rustdoc := rustc rustc_driver native:hoedown serialize getopts \
127-
test rustc_lint rustc_front rustc_const_eval
128+
test rustc_lint rustc_const_eval
128129

129130

130131
TOOL_DEPS_compiletest := test getopts log

branches/try/mk/main.mk

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,17 @@ CFG_PRERELEASE_VERSION=.1
2424
# versions in the same place
2525
CFG_FILENAME_EXTRA=$(shell printf '%s' $(CFG_RELEASE)$(CFG_EXTRA_FILENAME) | $(CFG_HASH_COMMAND))
2626

27+
# A magic value that allows the compiler to use unstable features during the
28+
# bootstrap even when doing so would normally be an error because of feature
29+
# staging or because the build turns on warnings-as-errors and unstable features
30+
# default to warnings. The build has to match this key in an env var.
31+
#
32+
# This value is keyed off the release to ensure that all compilers for one
33+
# particular release have the same bootstrap key. Note that this is
34+
# intentionally not "secure" by any definition, this is largely just a deterrent
35+
# from users enabling unstable features on the stable compiler.
36+
CFG_BOOTSTRAP_KEY=$(CFG_FILENAME_EXTRA)
37+
2738
ifeq ($(CFG_RELEASE_CHANNEL),stable)
2839
# This is the normal semver version string, e.g. "0.12.0", "0.12.0-nightly"
2940
CFG_RELEASE=$(CFG_RELEASE_NUM)

branches/try/mk/rt.mk

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,8 @@ else ifeq ($(findstring android, $(OSTYPE_$(1))), android)
157157
# If the test suite passes, however, without symbol prefixes then we should be
158158
# good to go!
159159
JEMALLOC_ARGS_$(1) := --disable-tls --with-jemalloc-prefix=je_
160+
else ifeq ($(findstring dragonfly, $(OSTYPE_$(1))), dragonfly)
161+
JEMALLOC_ARGS_$(1) := --with-jemalloc-prefix=je_
160162
endif
161163

162164
ifdef CFG_ENABLE_DEBUG_JEMALLOC

branches/try/mk/tests.mk

Lines changed: 25 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -240,52 +240,16 @@ cleantestlibs:
240240
# Tidy
241241
######################################################################
242242

243-
ifdef CFG_NOTIDY
244243
.PHONY: tidy
245-
tidy:
246-
else
247-
248-
# Run the tidy script in multiple parts to avoid huge 'echo' commands
249-
.PHONY: tidy
250-
tidy: tidy-basic tidy-binaries tidy-errors tidy-features
251-
252-
endif
253-
254-
.PHONY: tidy-basic
255-
tidy-basic:
256-
@$(call E, check: formatting)
257-
$(Q) $(CFG_PYTHON) $(S)src/etc/tidy.py $(S)src/
258-
259-
.PHONY: tidy-binaries
260-
tidy-binaries:
261-
@$(call E, check: binaries)
262-
$(Q)find $(S)src -type f \
263-
\( -perm -u+x -or -perm -g+x -or -perm -o+x \) \
264-
-not -name '*.rs' -and -not -name '*.py' \
265-
-and -not -name '*.sh' -and -not -name '*.pp' \
266-
| grep '^$(S)src/jemalloc' -v \
267-
| grep '^$(S)src/libuv' -v \
268-
| grep '^$(S)src/llvm' -v \
269-
| grep '^$(S)src/rt/hoedown' -v \
270-
| grep '^$(S)src/gyp' -v \
271-
| grep '^$(S)src/etc' -v \
272-
| grep '^$(S)src/doc' -v \
273-
| grep '^$(S)src/compiler-rt' -v \
274-
| grep '^$(S)src/libbacktrace' -v \
275-
| grep '^$(S)src/rust-installer' -v \
276-
| grep '^$(S)src/liblibc' -v \
277-
| xargs $(CFG_PYTHON) $(S)src/etc/check-binaries.py
278-
279-
.PHONY: tidy-errors
280-
tidy-errors:
281-
@$(call E, check: extended errors)
282-
$(Q) $(CFG_PYTHON) $(S)src/etc/errorck.py $(S)src/
283-
284-
.PHONY: tidy-features
285-
tidy-features:
286-
@$(call E, check: feature sanity)
287-
$(Q) $(CFG_PYTHON) $(S)src/etc/featureck.py $(S)src/
244+
tidy: $(HBIN0_H_$(CFG_BUILD))/tidy$(X_$(CFG_BUILD))
245+
$(TARGET_RPATH_VAR0_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $< $(S)src
288246

247+
$(HBIN0_H_$(CFG_BUILD))/tidy$(X_$(CFG_BUILD)): \
248+
$(TSREQ0_T_$(CFG_BUILD)_H_$(CFG_BUILD)) \
249+
$(TLIB0_T_$(CFG_BUILD)_H_$(CFG_BUILD))/stamp.std \
250+
$(call rwildcard,$(S)src/tools/tidy/src,*.rs)
251+
$(STAGE0_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $(S)src/tools/tidy/src/main.rs \
252+
--out-dir $(@D) --crate-name tidy
289253

290254
######################################################################
291255
# Sets of tests
@@ -305,11 +269,16 @@ check-stage$(1)-T-$(2)-H-$(3)-exec: \
305269
check-stage$(1)-T-$(2)-H-$(3)-doc-crates-exec \
306270
check-stage$(1)-T-$(2)-H-$(3)-debuginfo-gdb-exec \
307271
check-stage$(1)-T-$(2)-H-$(3)-debuginfo-lldb-exec \
308-
check-stage$(1)-T-$(2)-H-$(3)-codegen-exec \
309-
check-stage$(1)-T-$(2)-H-$(3)-codegen-units-exec \
272+
check-stage$(1)-T-$(2)-H-$(3)-incremental-exec \
310273
check-stage$(1)-T-$(2)-H-$(3)-doc-exec \
311274
check-stage$(1)-T-$(2)-H-$(3)-pretty-exec
312275

276+
ifndef CFG_DISABLE_CODEGEN_TESTS
277+
check-stage$(1)-T-$(2)-H-$(3)-exec: \
278+
check-stage$(1)-T-$(2)-H-$(3)-codegen-exec \
279+
check-stage$(1)-T-$(2)-H-$(3)-codegen-units-exec
280+
endif
281+
313282
# Only test the compiler-dependent crates when the target is
314283
# able to build a compiler (when the target triple is in the set of host triples)
315284
ifneq ($$(findstring $(2),$$(CFG_HOST)),)
@@ -477,6 +446,7 @@ DEBUGINFO_LLDB_RS := $(call rwildcard,$(S)src/test/debuginfo/,*.rs)
477446
CODEGEN_RS := $(call rwildcard,$(S)src/test/codegen/,*.rs)
478447
CODEGEN_CC := $(call rwildcard,$(S)src/test/codegen/,*.cc)
479448
CODEGEN_UNITS_RS := $(call rwildcard,$(S)src/test/codegen-units/,*.rs)
449+
INCREMENTAL_RS := $(call rwildcard,$(S)src/test/incremental/,*.rs)
480450
RUSTDOCCK_RS := $(call rwildcard,$(S)src/test/rustdoc/,*.rs)
481451

482452
RPASS_TESTS := $(RPASS_RS)
@@ -492,6 +462,7 @@ DEBUGINFO_GDB_TESTS := $(DEBUGINFO_GDB_RS)
492462
DEBUGINFO_LLDB_TESTS := $(DEBUGINFO_LLDB_RS)
493463
CODEGEN_TESTS := $(CODEGEN_RS) $(CODEGEN_CC)
494464
CODEGEN_UNITS_TESTS := $(CODEGEN_UNITS_RS)
465+
INCREMENTAL_TESTS := $(INCREMENTAL_RS)
495466
RUSTDOCCK_TESTS := $(RUSTDOCCK_RS)
496467

497468
CTEST_SRC_BASE_rpass = run-pass
@@ -554,6 +525,11 @@ CTEST_BUILD_BASE_codegen-units = codegen-units
554525
CTEST_MODE_codegen-units = codegen-units
555526
CTEST_RUNTOOL_codegen-units = $(CTEST_RUNTOOL)
556527

528+
CTEST_SRC_BASE_incremental = incremental
529+
CTEST_BUILD_BASE_incremental = incremental
530+
CTEST_MODE_incremental = incremental
531+
CTEST_RUNTOOL_incremental = $(CTEST_RUNTOOL)
532+
557533
CTEST_SRC_BASE_rustdocck = rustdoc
558534
CTEST_BUILD_BASE_rustdocck = rustdoc
559535
CTEST_MODE_rustdocck = rustdoc
@@ -677,6 +653,7 @@ CTEST_DEPS_debuginfo-lldb_$(1)-T-$(2)-H-$(3) = $$(DEBUGINFO_LLDB_TESTS) \
677653
$(S)src/etc/lldb_rust_formatters.py
678654
CTEST_DEPS_codegen_$(1)-T-$(2)-H-$(3) = $$(CODEGEN_TESTS)
679655
CTEST_DEPS_codegen-units_$(1)-T-$(2)-H-$(3) = $$(CODEGEN_UNITS_TESTS)
656+
CTEST_DEPS_incremental_$(1)-T-$(2)-H-$(3) = $$(INCREMENTAL_TESTS)
680657
CTEST_DEPS_rustdocck_$(1)-T-$(2)-H-$(3) = $$(RUSTDOCCK_TESTS) \
681658
$$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3)) \
682659
$(S)src/etc/htmldocck.py
@@ -743,7 +720,7 @@ endif
743720
endef
744721

745722
CTEST_NAMES = rpass rpass-valgrind rpass-full rfail-full cfail-full rfail cfail pfail \
746-
debuginfo-gdb debuginfo-lldb codegen codegen-units rustdocck
723+
debuginfo-gdb debuginfo-lldb codegen codegen-units rustdocck incremental
747724

748725
$(foreach host,$(CFG_HOST), \
749726
$(eval $(foreach target,$(CFG_TARGET), \
@@ -941,6 +918,7 @@ TEST_GROUPS = \
941918
debuginfo-lldb \
942919
codegen \
943920
codegen-units \
921+
incremental \
944922
doc \
945923
$(foreach docname,$(DOC_NAMES),doc-$(docname)) \
946924
pretty \

0 commit comments

Comments
 (0)