Commit Graph

79060 Commits

Author SHA1 Message Date
Oliver Schneider
9cc5d927c9 Add constant for Size::from_bytes(0) 2018-05-24 20:46:07 +02:00
Guillaume Gomez
fe9a19580c Add documentation about env! second argument 2018-05-24 20:08:10 +02:00
Esteban Küber
f36c643d4f Fix impl Trait suggestion 2018-05-24 10:01:13 -07:00
bors
07465222ca Auto merge of #50909 - oli-obk:unstable_const_fn_promotion, r=eddyb
Enforce stability of const fn in promoteds

r? @eddyb

fixes #50901

what's going on here? Why do we have two promoted computation algorithms?
2018-05-24 16:43:22 +00:00
Niko Matsakis
8fd316f5b5 pacify the mercilous tidy 2018-05-24 12:01:28 -04:00
Niko Matsakis
3b1a170914 extend the crate whitelist to include rustc-hash, chalk 2018-05-24 12:01:27 -04:00
Niko Matsakis
9c548bf26d get rustc_hash from external crate 2018-05-24 12:01:27 -04:00
Niko Matsakis
6f425a9201 implement the chalk traits, albeit with many placeholders 2018-05-24 12:01:27 -04:00
Oliver Schneider
a11f7856f4 Always mark unstable const fn as not const 2018-05-24 17:22:31 +02:00
Oliver Schneider
383a5df58c Enforce stability of const fn in promoteds 2018-05-24 17:22:31 +02:00
Oliver Schneider
dcbe09e2b5 Don't ICE if crate has no valid crate types left 2018-05-24 17:05:16 +02:00
bors
a41dd6fce2 Auto merge of #50930 - toidiu:ak-ordOutlivesPredicate, r=nikomatsakis
implement Ord for OutlivesPredicate and other types

It became necessary while implementing https://github.com/rust-lang/rust/pull/50070 to have `Ord` implemented for `OutlivesPredicate`.

This PR implements `Ord` for `OutlivesPredicate` as well as other types needed for the implementation.
2018-05-24 14:30:58 +00:00
gnzlbg
de60483e6d more reverts 2018-05-24 16:22:58 +02:00
gnzlbg
ac6cf04468 rever tool changes 2018-05-24 16:21:23 +02:00
gnzlbg
1a5bc39b1c add comment explaining ignore android 2018-05-24 16:08:27 +02:00
gnzlbg
9477a6bcc0 just ignore android 2018-05-24 16:08:27 +02:00
gnzlbg
7bbbc79c48 ignore arm-android 2018-05-24 16:04:39 +02:00
gnzlbg
c803ee455b refactor 2018-05-24 16:04:39 +02:00
gnzlbg
3b28ad654c force more builds 2018-05-24 16:04:39 +02:00
gnzlbg
1bd9573c1f enable fast-math flags 2018-05-24 16:04:39 +02:00
gnzlbg
180342df0b add gather/scatter tests for pointers of pointers 2018-05-24 16:04:39 +02:00
gnzlbg
1ffc30a459 add gather/scatter run-time test 2018-05-24 16:04:39 +02:00
gnzlbg
2809b0155a add run-time test and missing codegen test 2018-05-24 16:04:39 +02:00
gnzlbg
7a6a23d818 fix tidy 2018-05-24 16:04:39 +02:00
gnzlbg
f8f204c0bf add simd float intrinsics and gather/scatter 2018-05-24 16:04:39 +02:00
gnzlbg
729c22e797 move simd-minmax-test to run-pass; require llvm 7 2018-05-24 16:04:38 +02:00
Oliver Schneider
6a0806b75a Remove unused lowering field and method 2018-05-24 14:57:03 +02:00
Nicolas Koch
3f392abdfb Implement suggestions from the PR
- Move loading of atomic bool outside the loop
  - Add comment about TryFrom for future improvement
2018-05-24 14:51:59 +02:00
Tobias Bucher
2a900e2b84 Update the Once docs to use Once::new 2018-05-24 14:09:42 +02:00
Tobias Bucher
1c2abda671 Add Once::new as a way of constructing a Once 2018-05-24 14:08:47 +02:00
bors
d022dd48cc Auto merge of #51023 - kennytm:rollup, r=kennytm
Rollup of 9 pull requests

Successful merges:

 - #50864 (Add NetBSD/arm target specs)
 - #50956 (rust-gdb: work around the re-used -d argument in cgdb)
 - #50964 (Make sure that queries have predictable symbol names.)
 - #50965 (Update LLVM to pull in another wasm fix)
 - #50972 (Add -Z no-parallel-llvm flag)
 - #50979 (Fix span for type-only arguments)
 - #50981 (Shrink `LiveNode`.)
 - #50995 (move type out of unsafe block)
 - #51011 ( rustdoc: hide macro export statements from docs)

Failed merges:
2018-05-24 12:05:47 +00:00
Cory Sherman
f7c4a33f32 remove collections::range::RangeArgument
was already moved to ops::RangeBounds (see #30877)
2018-05-24 05:01:40 -07:00
Cory Sherman
1440f300d8 stabilize RangeBounds collections_range #30877
rename RangeBounds::start() -> start_bound()
rename RangeBounds::end() -> end_bound()
2018-05-24 05:01:40 -07:00
Esteban Küber
50eefc0d77 Account for negative offsets in suggestions
When suggesting code that has a shorter span than the current code,
account for this by keeping the offset as a signed value.
2018-05-24 04:16:54 -07:00
Esteban Küber
2daa013290 Underline multiple suggested replacements in the same line
Follow up to #50943.

Fix #50977.
2018-05-24 04:16:13 -07:00
kennytm
98606cfe12
Rollup merge of #51011 - QuietMisdreavus:duplicitous-macros, r=ollie27
rustdoc: hide macro export statements from docs

As mentioned in https://github.com/rust-lang/rust/issues/50647, rustdoc now prints both the import statement and the macro itself when re-exporting macros. This is a stopgap solution to clean up the std docs and get something small backported into beta.

What this does: When rustdoc finds an export statement for a macro, instead of printing the export and bailing, now it will instead hide the export and bail. Until we can solve https://github.com/rust-lang/rust/issues/34843 or have a better way to find the attributes on an export statement when inlining macros, this will at least match the current behavior and clean up the re-export statements from the docs.
2018-05-24 17:34:55 +08:00
kennytm
99de8ab38b
Rollup merge of #50995 - fbstj:patch-1, r=cramertj
move type out of unsafe block

from https://github.com/rust-lang/rust/pull/50863#discussion_r190213000

move the union definition outside of the unsafe block as it's definition is not unsafe
2018-05-24 17:34:54 +08:00
bors
a76bff86e6 Auto merge of #50949 - eddyb:debuginfo, r=mw
rustc_codegen_llvm: remove some debuginfo cruft.

(The second commit passes tests locally but might not on older LLVM versions)

r? @nikomatsakis
2018-05-24 09:27:15 +00:00
kennytm
79a2676ce0
Rollup merge of #50981 - nnethercote:shrink-LiveNode, r=nikomatsakis
Shrink `LiveNode`.

`Liveness::users` is a vector that is occasionally enormous. For
example, doing a "clean incremental" check build of `inflate`, there is
one instance that represents 5,499 live nodes and 1087 vars, which
requires 5,977,413 entries. At 24 bytes per entry, that is 143MB.

This patch changes LiveNode from a usize to a u32. On 64-bit machines
that halves the size of these entries, significantly reducing peak
memory usage and memory traffic, and speeding up "clean incremental"
builds of `inflate` by about 10%.
2018-05-24 16:02:44 +08:00
kennytm
6441ebe5a7
Rollup merge of #50979 - Manishearth:type-only, r=estebank
Fix span for type-only arguments

Currently it points to the comma or parenthesis before the type, which is broken

cc @mark-i-m this is what broke #48309

r? @estebank
2018-05-24 16:02:42 +08:00
kennytm
e14bc2d3d4
Rollup merge of #50972 - nikic:no-parallel, r=michaelwoerister
Add -Z no-parallel-llvm flag

Codegen issues commonly only manifest under specific circumstances,
e.g. if multiple codegen units are used and ThinLTO is enabled.
However, these configuration are threaded, making the use of LLVM
debugging facilities hard, as output is interleaved.

This patch adds a -Z no-parallel-llvm flag, which allows disabling
parallelization of codegen and linking, while otherwise preserving
behavior with regard to codegen units and LTO.
2018-05-24 16:02:41 +08:00
kennytm
eb26c9b390
Rollup merge of #50965 - alexcrichton:update-llvm, r=TimNN
Update LLVM to pull in another wasm fix

Closes #50869
2018-05-24 16:02:40 +08:00
kennytm
4db2241212
Rollup merge of #50964 - michaelwoerister:query-symbol-names, r=nikomatsakis
Make sure that queries have predictable symbol names.

Some recent refactorings led to query names not showing up in the corresponding symbol names. [perf-focus](https://github.com/nikomatsakis/perf-focus) and manual profiling have been broken by this. This PR makes sure that query providers always get their own symbol and that that symbol has a predictable name.

Since this adds `#[inline(never)]` to a function that wraps the provider call, let's check if this does not regress performance before merging.

r? @nikomatsakis
2018-05-24 16:02:39 +08:00
kennytm
02d53f2de7
Rollup merge of #50956 - atopia:rust-gdb-with-cdgb, r=nikomatsakis
rust-gdb: work around the re-used -d argument in cgdb

Use --directory= to pass $GDB_PYTHON_MODULE_DIRECTORY instead of -d, because [cgdb](https://github.com/cgdb/cgdb) reuses '-d' to select a debugger, whereas the long option works with both gdb and cgdb.
2018-05-24 16:02:38 +08:00
kennytm
0bb7335cb8
Rollup merge of #50864 - jakllsch:add-netbsd-arm-target-specs, r=alexcrichton
Add NetBSD/arm target specs
2018-05-24 16:02:37 +08:00
bors
7426f5ccf7 Auto merge of #50971 - alexcrichton:no-stringify, r=petrochenkov
rustc: Correctly pretty-print macro delimiters

This commit updates the `Mac_` AST structure to keep track of the delimiters
that it originally had for its invocation. This allows us to faithfully
pretty-print macro invocations not using parentheses (e.g. `vec![...]`). This in
turn helps procedural macros due to #43081.

Closes #50840
2018-05-24 07:14:21 +00:00
toidiu
9a8400c3ff implement Ord for OutlivesPredicate and other types 2018-05-24 00:01:35 -04:00
bors
b4463d788b Auto merge of #50943 - oli-obk:cleanups, r=estebank
impl Trait diagnostic/test cleanups
2018-05-24 03:40:16 +00:00
Esteban Küber
68f5b34b2c Use crate name for reexported extern crate paths 2018-05-23 19:24:57 -07:00
QuietMisdreavus
4cf0c5fa32 fix @!has conditions in pub-use-extern-macros test 2018-05-23 20:53:45 -05:00