]> git.lizzy.rs Git - rust.git/log
rust.git
7 years agoAuto merge of #38427 - brson:relnotes, r=alexcrichton
bors [Wed, 21 Dec 2016 19:46:27 +0000 (19:46 +0000)]
Auto merge of #38427 - brson:relnotes, r=alexcrichton

1.14 release notes

[Rendered](https://github.com/brson/rust/blob/relnotes/RELEASES.md).

Is there anything I'm missing? Were there any library stabilizations?

The most interesting thing this time seems to be rustup, then compile time opts, `..` matches, cargo exposing `cfg` values to build scripts. This release also has wasm support, but it's pretty rough. Might be worth hyping up all the same. ARM MUSL targets.

There are a large number of compatibility notes. Might be worth talking about that.

Relevant prlo links: goo.gl/PGz2Ds, goo.gl/KV23Qv, goo.gl/g7ku6D.

7 years agoAuto merge of #38488 - srinivasreddy:rf_collections, r=aturon
bors [Wed, 21 Dec 2016 15:30:20 +0000 (15:30 +0000)]
Auto merge of #38488 - srinivasreddy:rf_collections, r=aturon

run rustfmt on libcollections folder

7 years agoAuto merge of #38302 - Mark-Simulacrum:trans-cleanup, r=eddyb
bors [Wed, 21 Dec 2016 10:38:22 +0000 (10:38 +0000)]
Auto merge of #38302 - Mark-Simulacrum:trans-cleanup, r=eddyb

Cleanup old trans

This is a cleanup of old trans, with the following main points:
 - Remove the `build.rs` API (prefer using `Builder` directly, which is now passed where needed through `BlockAndBuilder`).
 - Remove `Block` (inlining it into `BlockAndBuilder`)
 - Remove `Callee::call`, primarily through inlining and simplification of code.
 - Thinned `FunctionContext`:
   - `mir`, `debug_scopes`, `scopes`, and `fn_ty` are moved to `MirContext`.
   - `param_env` is moved to `SharedCrateContext` and renamed to `empty_param_env`.
   - `llretslotptr` is removed, replaced with more careful management of the return values in calls.
   - `landingpad_alloca` is inlined into cleanup.
   - `param_substs` are moved to `MirContext`.
   - `span` is removed, it was never set to anything but `None`.
   - `block_arena` and `lpad_arena` are removed, since neither was necessary (landing pads and block are quite small, and neither needs arena allocation).
 - Fixed `drop_in_place` not running other destructors in the same function.

Fixes #35566 (thanks to @est31 for confirming).

7 years agoAuto merge of #38099 - GuillaumeGomez:cast_suggestions, r=nikomatsakis
bors [Wed, 21 Dec 2016 07:28:16 +0000 (07:28 +0000)]
Auto merge of #38099 - GuillaumeGomez:cast_suggestions, r=nikomatsakis

Cast suggestions

r? @nikomatsakis

7 years agoFix rebase errors.
Mark Simulacrum [Wed, 21 Dec 2016 03:37:19 +0000 (20:37 -0700)]
Fix rebase errors.

7 years agoAuto merge of #38506 - alexcrichton:fix-makefiles, r=brson
bors [Wed, 21 Dec 2016 03:09:14 +0000 (03:09 +0000)]
Auto merge of #38506 - alexcrichton:fix-makefiles, r=brson

mk: Fix compile with makefiles

A tweak was made to dependencies in #38451 but the makefiles weren't updated to
accompany this. Instead of trying to integerate the `build_helper` crate into
the makefiles (which currently isn't present) this commit takes the approach of
just duplicating the required logic, which should be small enough for now.

7 years agoReuse cleanup pad declared at start of block.
Mark Simulacrum [Tue, 20 Dec 2016 21:14:30 +0000 (14:14 -0700)]
Reuse cleanup pad declared at start of block.

7 years agoImprove cache quality for eh_personality.
Mark Simulacrum [Tue, 20 Dec 2016 04:41:03 +0000 (21:41 -0700)]
Improve cache quality for eh_personality.

7 years agoMove eh_unwind_resume into CrateContext
Mark Simulacrum [Tue, 20 Dec 2016 04:26:49 +0000 (21:26 -0700)]
Move eh_unwind_resume into CrateContext

Also improves cache quality.

7 years agoSimplify get_landing_pad by inlining UnwindKind.
Mark Simulacrum [Tue, 20 Dec 2016 04:16:58 +0000 (21:16 -0700)]
Simplify get_landing_pad by inlining UnwindKind.

7 years agoAdd unreachable() after calls to eh_unwind_resume.
Mark Simulacrum [Tue, 20 Dec 2016 03:09:51 +0000 (20:09 -0700)]
Add unreachable() after calls to eh_unwind_resume.

7 years agoSimplify callee by removing is_indirect branch.
Mark Simulacrum [Tue, 20 Dec 2016 02:57:39 +0000 (19:57 -0700)]
Simplify callee by removing is_indirect branch.

7 years agoMove eh_personality() onto CrateContext
Mark Simulacrum [Tue, 20 Dec 2016 02:32:50 +0000 (19:32 -0700)]
Move eh_personality() onto CrateContext

7 years agoRemove outdated comment
Mark Simulacrum [Tue, 20 Dec 2016 02:17:03 +0000 (19:17 -0700)]
Remove outdated comment

7 years agoRemove fn_ty from FunctionContext
Mark Simulacrum [Tue, 20 Dec 2016 02:16:36 +0000 (19:16 -0700)]
Remove fn_ty from FunctionContext

7 years agoslice_for_each gives a reference already
Mark Simulacrum [Tue, 20 Dec 2016 01:51:10 +0000 (18:51 -0700)]
slice_for_each gives a reference already

7 years agoReduce coerce_unsized_into to one call
Mark Simulacrum [Tue, 20 Dec 2016 01:47:30 +0000 (18:47 -0700)]
Reduce coerce_unsized_into to one call

We cannot inline due to it being recursive.

7 years agoRemove outdated comment
Mark Simulacrum [Tue, 20 Dec 2016 01:34:42 +0000 (18:34 -0700)]
Remove outdated comment

7 years agoInline make_drop_glue
Mark Simulacrum [Tue, 20 Dec 2016 01:34:07 +0000 (18:34 -0700)]
Inline make_drop_glue

7 years agoRemove needless check
Mark Simulacrum [Tue, 20 Dec 2016 01:25:56 +0000 (18:25 -0700)]
Remove needless check

7 years agoMove get_landing_pad onto DropVal.
Mark Simulacrum [Tue, 20 Dec 2016 01:19:19 +0000 (18:19 -0700)]
Move get_landing_pad onto DropVal.

7 years agoUse fn_ty directly
Mark Simulacrum [Tue, 20 Dec 2016 01:07:19 +0000 (18:07 -0700)]
Use fn_ty directly

7 years agoDo not use BAB after calling unreachable.
Mark Simulacrum [Tue, 20 Dec 2016 00:59:26 +0000 (17:59 -0700)]
Do not use BAB after calling unreachable.

This does not make unreachable and other terminators take self by-value
because it is deemed too difficult. We would need to create by-value
methods on BAB that call into Builder, due to the Deref to builder.

7 years agoChange *.fcx.ccx to *.ccx
Mark Simulacrum [Tue, 20 Dec 2016 00:48:41 +0000 (17:48 -0700)]
Change *.fcx.ccx to *.ccx

7 years agoMutate llargs instead of reconstructing it.
Mark Simulacrum [Tue, 20 Dec 2016 00:39:14 +0000 (17:39 -0700)]
Mutate llargs instead of reconstructing it.

7 years agoReplace bcx.ccx() with bcx.ccx
Mark Simulacrum [Mon, 19 Dec 2016 23:25:00 +0000 (16:25 -0700)]
Replace bcx.ccx() with bcx.ccx

7 years agoRemove unecessary logic.
Mark Simulacrum [Mon, 19 Dec 2016 23:16:22 +0000 (16:16 -0700)]
Remove unecessary logic.

7 years agoAdd helper function to set debug locations
Mark Simulacrum [Mon, 19 Dec 2016 21:38:16 +0000 (14:38 -0700)]
Add helper function to set debug locations

7 years agoClean up uses of set_personality_fn.
Mark Simulacrum [Mon, 19 Dec 2016 21:10:48 +0000 (14:10 -0700)]
Clean up uses of set_personality_fn.

Remove gnu/msvc constructors for Funclet; these are worse for
readability than explicit Some/None.

7 years agoChange param_env to empty_param_env
Mark Simulacrum [Mon, 19 Dec 2016 15:09:03 +0000 (08:09 -0700)]
Change param_env to empty_param_env

7 years agoSimplify funclets creation.
Mark Simulacrum [Mon, 19 Dec 2016 15:00:46 +0000 (08:00 -0700)]
Simplify funclets creation.

7 years agoRemove unused bcx from LocalAnalyzer.
Mark Simulacrum [Mon, 19 Dec 2016 14:47:09 +0000 (07:47 -0700)]
Remove unused bcx from LocalAnalyzer.

7 years agoMove debug info check into create_function_debug_context
Mark Simulacrum [Mon, 19 Dec 2016 14:33:35 +0000 (07:33 -0700)]
Move debug info check into create_function_debug_context

7 years agoRemove public ccx function on MirContext
Mark Simulacrum [Mon, 19 Dec 2016 14:15:00 +0000 (07:15 -0700)]
Remove public ccx function on MirContext

7 years agoMake debuginfo take debug_context instead of MirContext
Mark Simulacrum [Mon, 19 Dec 2016 06:04:25 +0000 (23:04 -0700)]
Make debuginfo take debug_context instead of MirContext

7 years agoRemove unreachable call to unreachable
Mark Simulacrum [Mon, 19 Dec 2016 06:01:06 +0000 (23:01 -0700)]
Remove unreachable call to unreachable

7 years agoFix and cleanup callee shims
Mark Simulacrum [Mon, 19 Dec 2016 05:24:42 +0000 (22:24 -0700)]
Fix and cleanup callee shims

7 years agoRebase fixes
Mark Simulacrum [Mon, 19 Dec 2016 00:31:54 +0000 (17:31 -0700)]
Rebase fixes

7 years agoMake add_incoming_to_phi call slightly less confusing.
Mark Simulacrum [Mon, 19 Dec 2016 00:13:09 +0000 (17:13 -0700)]
Make add_incoming_to_phi call slightly less confusing.

7 years agoInline and simplify init_cpad
Mark Simulacrum [Mon, 19 Dec 2016 00:04:00 +0000 (17:04 -0700)]
Inline and simplify init_cpad

7 years agoDon't special case abort/unreachable intrinsics
Mark Simulacrum [Sun, 18 Dec 2016 23:25:37 +0000 (16:25 -0700)]
Don't special case abort/unreachable intrinsics

7 years agoRemove llretslotptr from FunctionContext
Mark Simulacrum [Sun, 18 Dec 2016 23:06:41 +0000 (16:06 -0700)]
Remove llretslotptr from FunctionContext

7 years agoMove param_substs onto MirContext
Mark Simulacrum [Sun, 18 Dec 2016 23:05:40 +0000 (16:05 -0700)]
Move param_substs onto MirContext

7 years agoMove param_env onto SharedCrateContext, and move functions which need the ParamEnv...
Mark Simulacrum [Sun, 18 Dec 2016 18:50:07 +0000 (11:50 -0700)]
Move param_env onto SharedCrateContext, and move functions which need the ParamEnv onto it.

7 years agoMove debug_context to MirContext from FunctionContext
Mark Simulacrum [Sun, 18 Dec 2016 18:08:57 +0000 (11:08 -0700)]
Move debug_context to MirContext from FunctionContext

7 years agoRemove lifetime parameter
Mark Simulacrum [Sun, 18 Dec 2016 17:18:47 +0000 (10:18 -0700)]
Remove lifetime parameter

7 years agoInline get_funclet
Mark Simulacrum [Sun, 18 Dec 2016 16:46:11 +0000 (09:46 -0700)]
Inline get_funclet

7 years agoInline last remaining use of Callee::call and delete unused code
Mark Simulacrum [Sun, 18 Dec 2016 16:42:50 +0000 (09:42 -0700)]
Inline last remaining use of Callee::call and delete unused code

7 years agoInline and cleanup build_return_block
Mark Simulacrum [Sun, 18 Dec 2016 16:07:35 +0000 (09:07 -0700)]
Inline and cleanup build_return_block

7 years agoInline/Replace finish with build_return_block
Mark Simulacrum [Sun, 18 Dec 2016 03:19:34 +0000 (20:19 -0700)]
Inline/Replace finish with build_return_block

7 years agoRename 'blk and 'bcx to 'a
Mark Simulacrum [Sun, 18 Dec 2016 02:54:32 +0000 (19:54 -0700)]
Rename 'blk and 'bcx to 'a

7 years agoFurther simplify intrinsic matching
Mark Simulacrum [Sun, 18 Dec 2016 01:25:32 +0000 (18:25 -0700)]
Further simplify intrinsic matching

7 years agoSimplify intrinsic match statement
Mark Simulacrum [Sat, 17 Dec 2016 23:42:16 +0000 (16:42 -0700)]
Simplify intrinsic match statement

7 years agoInline memfill and merge with memset_intrinsic.
Mark Simulacrum [Sat, 17 Dec 2016 22:52:29 +0000 (15:52 -0700)]
Inline memfill and merge with memset_intrinsic.

7 years agoReduce extensions to FunctionContext in cleanup.
Mark Simulacrum [Sat, 17 Dec 2016 22:34:38 +0000 (15:34 -0700)]
Reduce extensions to FunctionContext in cleanup.

7 years agoRemove Ref::clone for MirContext mir
Mark-Simulacrum [Sat, 17 Dec 2016 19:56:33 +0000 (12:56 -0700)]
Remove Ref::clone for MirContext mir

7 years agoRefactor Callee::call to take bcx by-reference.
Mark-Simulacrum [Sat, 17 Dec 2016 19:27:48 +0000 (12:27 -0700)]
Refactor Callee::call to take bcx by-reference.

Also change to not return anything; nothing used the return ValueRef.

Inlines with_cond.

7 years agoRemove unused imports
Mark-Simulacrum [Sat, 17 Dec 2016 19:02:09 +0000 (12:02 -0700)]
Remove unused imports

7 years agoRemove unused functions in abi
Mark-Simulacrum [Sat, 17 Dec 2016 19:01:51 +0000 (12:01 -0700)]
Remove unused functions in abi

7 years agoCleanup instruction counting
Mark-Simulacrum [Sat, 17 Dec 2016 17:21:15 +0000 (10:21 -0700)]
Cleanup instruction counting

7 years agoSimplify basic_block.rs
Mark-Simulacrum [Sat, 17 Dec 2016 15:24:17 +0000 (08:24 -0700)]
Simplify basic_block.rs

7 years agoInline trans_exchange_free
Mark-Simulacrum [Sat, 17 Dec 2016 04:14:23 +0000 (21:14 -0700)]
Inline trans_exchange_free

7 years agoInline FunctionContext.mir
Mark-Simulacrum [Sat, 17 Dec 2016 03:52:20 +0000 (20:52 -0700)]
Inline FunctionContext.mir

7 years agoRemove FunctionContext.landingpad_alloca.
Mark-Simulacrum [Sat, 17 Dec 2016 03:36:42 +0000 (20:36 -0700)]
Remove FunctionContext.landingpad_alloca.

7 years agoInline validate_substs
Mark-Simulacrum [Sat, 17 Dec 2016 02:39:35 +0000 (19:39 -0700)]
Inline validate_substs

7 years agoRemove global builder
Mark-Simulacrum [Sat, 17 Dec 2016 01:48:25 +0000 (18:48 -0700)]
Remove global builder

7 years agoMerge OwnedBuilder and Builder
Mark-Simulacrum [Sat, 17 Dec 2016 00:39:35 +0000 (17:39 -0700)]
Merge OwnedBuilder and Builder

7 years agoMinor cleanup to context
Mark-Simulacrum [Fri, 16 Dec 2016 23:50:53 +0000 (16:50 -0700)]
Minor cleanup to context

7 years agoReplace init with get_entry_block.
Mark-Simulacrum [Fri, 16 Dec 2016 23:45:52 +0000 (16:45 -0700)]
Replace init with get_entry_block.

7 years agoRemove FunctionContext::cleanup, replacing it with a Drop impl.
Mark-Simulacrum [Fri, 16 Dec 2016 23:00:17 +0000 (16:00 -0700)]
Remove FunctionContext::cleanup, replacing it with a Drop impl.

Move alloca and initial entry block creation into FunctionContext::new.

7 years agoRename Builder::alloca to dynamic_alloca
Mark-Simulacrum [Fri, 16 Dec 2016 21:11:17 +0000 (14:11 -0700)]
Rename Builder::alloca to dynamic_alloca

7 years agoRemove fcx.span
Mark-Simulacrum [Fri, 16 Dec 2016 21:10:32 +0000 (14:10 -0700)]
Remove fcx.span

7 years agoRemove DebugLoc.
Mark-Simulacrum [Fri, 16 Dec 2016 20:25:18 +0000 (13:25 -0700)]
Remove DebugLoc.

7 years agoStart FunctionContext privatization and reduction
Mark-Simulacrum [Fri, 16 Dec 2016 18:32:59 +0000 (11:32 -0700)]
Start FunctionContext privatization and reduction

7 years agoRemove BlockAndBuilder.funclet
Mark-Simulacrum [Fri, 16 Dec 2016 17:48:46 +0000 (10:48 -0700)]
Remove BlockAndBuilder.funclet

7 years agoRemove global Builder
Mark-Simulacrum [Fri, 16 Dec 2016 15:28:20 +0000 (08:28 -0700)]
Remove global Builder

7 years agoRemove needless allows
Mark-Simulacrum [Fri, 16 Dec 2016 01:22:55 +0000 (18:22 -0700)]
Remove needless allows

7 years agoRemove remaining traces of block_arena
Mark-Simulacrum [Fri, 16 Dec 2016 01:05:05 +0000 (18:05 -0700)]
Remove remaining traces of block_arena

7 years agoRemove FIXME
Mark-Simulacrum [Fri, 16 Dec 2016 01:01:51 +0000 (18:01 -0700)]
Remove FIXME

7 years agoInline base::malloc_raw_dyn.
Mark-Simulacrum [Fri, 16 Dec 2016 01:00:19 +0000 (18:00 -0700)]
Inline base::malloc_raw_dyn.

Move comment about not unwinding into liballoc.

7 years agoUnbox FunctionDebugContextData.
Mark-Simulacrum [Thu, 15 Dec 2016 22:08:18 +0000 (15:08 -0700)]
Unbox FunctionDebugContextData.

It is only a pointer and a Cell, which is quite small.

7 years agoMove around code in cleanup for a more logical ordering, and fix comments
Mark-Simulacrum [Thu, 15 Dec 2016 21:43:15 +0000 (14:43 -0700)]
Move around code in cleanup for a more logical ordering, and fix comments

7 years agoEagerly evaluate landing pads for cleanup scopes
Mark-Simulacrum [Thu, 15 Dec 2016 21:42:21 +0000 (14:42 -0700)]
Eagerly evaluate landing pads for cleanup scopes

7 years agoDeduplicate store_operand_direct and store_operand
Mark-Simulacrum [Thu, 15 Dec 2016 17:39:29 +0000 (10:39 -0700)]
Deduplicate store_operand_direct and store_operand

7 years agoSlightly simplify tvec::slice_for_each
Mark-Simulacrum [Thu, 15 Dec 2016 17:32:12 +0000 (10:32 -0700)]
Slightly simplify tvec::slice_for_each

7 years agoRemove push_ctxt
Mark-Simulacrum [Thu, 15 Dec 2016 17:11:49 +0000 (10:11 -0700)]
Remove push_ctxt

7 years agoInline and simplify Callee::call duplicates.
Mark-Simulacrum [Wed, 14 Dec 2016 23:41:00 +0000 (16:41 -0700)]
Inline and simplify Callee::call duplicates.

7 years agoRefactor get_landing_pad to take a CleanupScope
Mark-Simulacrum [Wed, 14 Dec 2016 16:26:27 +0000 (09:26 -0700)]
Refactor get_landing_pad to take a CleanupScope

It unwrapped the Option anyway, so this more closely resembles the
reality of what's happening.

7 years agoRemove cleanup scope from FunctionContext
Mark-Simulacrum [Wed, 14 Dec 2016 14:27:59 +0000 (07:27 -0700)]
Remove cleanup scope from FunctionContext

7 years agoRefactor Vec<CleanupScope> into Option<CleanupScope>.
Mark-Simulacrum [Tue, 13 Dec 2016 23:45:09 +0000 (16:45 -0700)]
Refactor Vec<CleanupScope> into Option<CleanupScope>.

7 years agoMerge need_invoke and needs_invoke
Mark-Simulacrum [Tue, 13 Dec 2016 05:43:53 +0000 (22:43 -0700)]
Merge need_invoke and needs_invoke

7 years agoPropagate CleanupScope::needs_invoke being always true
Mark-Simulacrum [Tue, 13 Dec 2016 01:29:49 +0000 (18:29 -0700)]
Propagate CleanupScope::needs_invoke being always true

7 years agoOnly one DropValue per CleanupScope
Mark-Simulacrum [Tue, 13 Dec 2016 01:00:42 +0000 (18:00 -0700)]
Only one DropValue per CleanupScope

7 years agoPull out get_or_create landing pad to avoid issues with dynamic borrowck.
Mark-Simulacrum [Mon, 12 Dec 2016 22:08:12 +0000 (15:08 -0700)]
Pull out get_or_create landing pad to avoid issues with dynamic borrowck.

7 years agoReformatting
Mark-Simulacrum [Mon, 12 Dec 2016 19:40:39 +0000 (12:40 -0700)]
Reformatting

7 years agoRemove DropValue.is_immediate
Mark-Simulacrum [Mon, 12 Dec 2016 19:32:16 +0000 (12:32 -0700)]
Remove DropValue.is_immediate

7 years agoRemove EarlyExitLabel, it only has one variant and is as such useless
Mark-Simulacrum [Mon, 12 Dec 2016 19:26:01 +0000 (12:26 -0700)]
Remove EarlyExitLabel, it only has one variant and is as such useless

7 years agoRemove debug_loc from CleanupScope and privatize various helpers
Mark-Simulacrum [Mon, 12 Dec 2016 18:58:55 +0000 (11:58 -0700)]
Remove debug_loc from CleanupScope and privatize various helpers

7 years agoSimple cleanups/inlines in cleanup
Mark-Simulacrum [Mon, 12 Dec 2016 16:52:33 +0000 (09:52 -0700)]
Simple cleanups/inlines in cleanup

7 years agoRename LandingPad to Funclet
Mark-Simulacrum [Mon, 12 Dec 2016 13:48:39 +0000 (06:48 -0700)]
Rename LandingPad to Funclet

Changes internal storage to direct field values instead of Options,
since both fields are always either set or not set.