Commit Graph

59690 Commits

Author SHA1 Message Date
Mark-Simulacrum
bc0b172f3b Remove BlockAndBuilder.funclet 2016-12-20 20:02:53 -07:00
Mark-Simulacrum
28f511cfbd Remove global Builder 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
e0ccc81bbf Remove needless allows 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
da23332b65 Remove remaining traces of block_arena 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
5bdcc22b79 Remove FIXME 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
dda6c8cf2f Inline base::malloc_raw_dyn.
Move comment about not unwinding into liballoc.
2016-12-20 20:02:52 -07:00
Mark-Simulacrum
14ae76d96b Unbox FunctionDebugContextData.
It is only a pointer and a Cell, which is quite small.
2016-12-20 20:02:51 -07:00
Mark-Simulacrum
b10d89a096 Move around code in cleanup for a more logical ordering, and fix comments 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
c7f8b0cd81 Eagerly evaluate landing pads for cleanup scopes 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
31691692a2 Deduplicate store_operand_direct and store_operand 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
6710af3580 Slightly simplify tvec::slice_for_each 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
6441c977cb Remove push_ctxt 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
3265afa08f Inline and simplify Callee::call duplicates. 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
cd57bbe27a Refactor get_landing_pad to take a CleanupScope
It unwrapped the Option anyway, so this more closely resembles the
reality of what's happening.
2016-12-20 20:02:50 -07:00
Mark-Simulacrum
28d00e781b Remove cleanup scope from FunctionContext 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
51dfba1185 Refactor Vec<CleanupScope> into Option<CleanupScope>. 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
91707dc991 Merge need_invoke and needs_invoke 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
6412f3128d Propagate CleanupScope::needs_invoke being always true 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
85ef02d404 Only one DropValue per CleanupScope 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
da971b7652 Pull out get_or_create landing pad to avoid issues with dynamic borrowck. 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
48715a15ff Reformatting 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
2842912583 Remove DropValue.is_immediate 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
ec518a0069 Remove EarlyExitLabel, it only has one variant and is as such useless 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
5a36f88feb Remove debug_loc from CleanupScope and privatize various helpers 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
ed989d39a1 Simple cleanups/inlines in cleanup 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
86b2bdb435 Rename LandingPad to Funclet
Changes internal storage to direct field values instead of Options,
since both fields are always either set or not set.
2016-12-20 20:02:48 -07:00
Mark-Simulacrum
8f3d824cc7 Remove common::Block. 2016-12-20 20:02:46 -07:00
Mark-Simulacrum
3dbd141b8c Remove unused map_block 2016-12-20 20:01:41 -07:00
Mark-Simulacrum
fec59c5f73 Replace lpad().and_then(..) with None 2016-12-20 20:01:41 -07:00
Mark-Simulacrum
ad0a901d37 Remove *_builder 2016-12-20 20:01:40 -07:00
Mark-Simulacrum
e77d928990 Add notes regarding malloc_raw_dyn being unwind incompatible 2016-12-20 20:01:40 -07:00
Mark-Simulacrum
59ef51c12a Replace build.rs with calling functions on builder directly 2016-12-20 20:01:40 -07:00
Mark-Simulacrum
3f17ab9618 Remove unreachable and terminated from Block 2016-12-20 20:01:40 -07:00
Mark-Simulacrum
bf7d4534a7 Refactor Block into BlockAndBuilder 2016-12-20 20:01:40 -07:00
bors
164619a8cf Auto merge of #38499 - alexcrichton:rollup, r=alexcrichton
Rollup of 29 pull requests

- Successful merges: #37761, #38006, #38131, #38150, #38158, #38171, #38208, #38215, #38236, #38245, #38289, #38302, #38315, #38346, #38388, #38395, #38398, #38418, #38432, #38451, #38463, #38468, #38470, #38471, #38472, #38478, #38486, #38493, #38498
- Failed merges: #38271, #38483
2016-12-20 22:21:53 +00:00
Alex Crichton
d5f1c6e67c Merge remote-tracking branch 'origin/master' into rollup 2016-12-20 14:20:44 -08:00
Alex Crichton
214a6c6166 Fix compile errors and such 2016-12-20 14:09:50 -08:00
Alex Crichton
0cf7d5dcae Merge branch 'rfc_1560_warning_cycle' of https://github.com/jseyfried/rust into rollup
Conflicts:
	src/librustc_resolve/lib.rs
	src/librustc_resolve/resolve_imports.rs
2016-12-20 13:00:16 -08:00
Alex Crichton
5f1ecb0fdc Merge branch 'fix_closure_debuginfo' of https://github.com/camlorn/rust into rollup
Conflicts:
	src/librustc_trans/mir/mod.rs
2016-12-20 12:59:14 -08:00
Alex Crichton
6b8dda5c7e Merge branch 'local-sccache' of https://github.com/alexcrichton/rust into rollup 2016-12-20 12:59:14 -08:00
Alex Crichton
7b8cbbe092 Merge branch 'rustbuild-warnings' of https://github.com/alexcrichton/rust into rollup 2016-12-20 12:59:13 -08:00
Alex Crichton
00fdc0ce84 Rollup merge of #38498 - alexcrichton:actually-test-musl, r=brson
rustbuild: Actually test musl on the musl bot

A typo unfortunately meant that we haven't been testing musl for a bit, so now
it's time to discover if we accidentally introduced a regression!
2016-12-20 12:59:12 -08:00
Alex Crichton
c188635a2a Rollup merge of #38493 - sanxiyn:filecheck, r=alexcrichton
Find FileCheck using llvm-config

This allows using system LLVM from Debian package to run codegen tests.

Fix #36282.

r? @alexcrichton
2016-12-20 12:59:11 -08:00
Alex Crichton
10bb4a4801 Rollup merge of #38486 - est31:master, r=petrochenkov
Add regression test for #38458

Closes #38458
2016-12-20 12:59:11 -08:00
Alex Crichton
802784d89b Rollup merge of #38478 - brson:bump, r=alexcrichton
Bump version to 1.16
2016-12-20 12:59:10 -08:00
Alex Crichton
6737f1abcf Rollup merge of #38472 - alexcrichton:fix-cargotest, r=brson
travis: Fix the cargotest bot

Recently the Cargo revision running on cargotest was updated in #38051, and the
updated version of Cargo pulls in the openssl-sys 0.9 crate instead of the old
openssl-sys 0.7 crate. The 0.9 release of openssl-sys has slightly different
requirements and logic for detecting OpenSSL, namely it requires `pkg-config` to
be present on Linux typically.

This commit fixes this problem by installing pkg-config in the cargotest
container that's running on the bots. This in turn should hopefully fix the
build script and allow it to find the already-installed local OpenSSL libraries.
2016-12-20 12:59:10 -08:00
Alex Crichton
da73b4e40b Rollup merge of #38471 - alexcrichton:run-debuginfo-tests, r=brson
rustbuild: Run debuginfo tests by default

This fixes an accidental regression in rustbuild which stopped running debuginfo
tests by default. Here we flag the test suites as `default(true)` to ensure that
they're run on bots, for example.
2016-12-20 12:59:09 -08:00
Alex Crichton
1509155f4d Rollup merge of #38470 - alexcrichton:really-fix-osx, r=brson
rustbuild: Update Cargo download location

I updated the beta compiler used to bootstrap the master branch in #38438 with
the intention of fixing Travis OSX linkage issues but I mistakenly forgot that
the PR only updated rustc, not Cargo itself. Cargo has a new release process
with downloads in a different location, so this commit updates rustbuild to
download from this new location by tracking revisions instead of Cargo nightly
dates.
2016-12-20 12:59:09 -08:00
Alex Crichton
6e2a901930 Rollup merge of #38468 - xen0n:tarball-wrangling, r=alexcrichton
rustbuild: Eliminate duplication of dist tarballs

Fixes #38365 by not constructing the duplicate steps in the first place, as suggested. The source package step is lacking the check as in other steps, so it is added as well.

Tested locally with the `alexcrichton/rust-slave-linux-cross:2016-11-11` container (with the build slave init replaced with no-op, of course).

r? @alexcrichton
2016-12-20 12:59:08 -08:00
Alex Crichton
cade120da3 Rollup merge of #38463 - japaric:asm-args, r=alexcrichton
target spec: add an asm-args field to pass arguments to the external ..

assembler

The main use case is the (still out of tree) msp430 target. For that target we use an external assembler, `mps430-elf-gcc`, to produce object files from the assembly rustc/llvm outputs. The problem is that by default `msp430-elf-gcc` produces object files for the MSP430**X** ABI but we want to use produce objects using the MSP430 (note: no X) ABI. To do that we have to pass `-mcpu=msp430` to the assembler and that's what this flag is for.

r? @alexcrichton
cc @pftbest
2016-12-20 12:59:07 -08:00