Commit Graph

66476 Commits

Author SHA1 Message Date
bors
504328a31a Auto merge of #43274 - bitshifter:union-align, r=petrochenkov
Support repr alignment on unions.

Requested as part of RFC 1358 https://github.com/rust-lang/rust/issues/33626#issuecomment-309137284.
2017-07-21 23:46:05 +00:00
Perry Fraser
5c10db3f94 More tests 2017-07-21 18:11:44 -04:00
Alex Crichton
38e40ce506 Relax a codegen test to be compatible with LLVM 5.0 2017-07-21 14:15:09 -07:00
bors
15aa15b03f Auto merge of #43319 - SimonSapin:cargoup, r=alexcrichton
Update Cargo to ffab51954ec32d55631c37a8730bb24915fc090b

https://github.com/rust-lang/cargo/pull/4123 added the `[patch]` section of the manifest
2017-07-21 20:57:37 +00:00
Behnam Esfahbod
42f886110a [libstd_unicode] Create UnicodeVersion type
Create named struct `UnicodeVersion` to use instead of tuple type for
`UNICODE_VERSION` value. This allows user to access the fields with
meaningful field names: `major`, `minor`, and `micro`.

Per request, an empty private field is added to the struct, so it can be
extended in the future without API breakage.
2017-07-21 12:09:02 -06:00
Behnam Esfahbod
7ebb6eedca [libstd_unicode] Change UNICODE_VERSION to use u32
Use `u32` for version components, as `u64` is just an overkill, and
`u32` is the default type for integers and the default type used for
regular internal numbers.

There's no expectation for Unicode Versions to even reach one thousand
in the next hundered years. This is different from *package versions*,
which may become something auto-generated and exceed human-friendly
range of integer values.
2017-07-21 11:59:23 -06:00
Alex Crichton
fb217afe86 Fix archive member names on 5.0 2017-07-21 19:09:11 +02:00
Alex Crichton
b022d54641 update attributes API usage 2017-07-21 19:09:10 +02:00
Tim Neumann
1ee87b3765 rustllvm: split DebugLoc in UnpackOptimizationDiagnostic 2017-07-21 19:09:10 +02:00
Alex Crichton
81eea9e431 Thread through the original error when opening archives
This updates the management of opening archives to thread through the original
piece of error information from LLVM over to the end consumer, trans.
2017-07-21 09:44:01 -07:00
bors
6c949655de Auto merge of #43313 - pftbest:fix_asm, r=alexcrichton
[LLVM] Fix an assertion when a weak symbol is defined in global_asm.

This change will fix the issue from
https://github.com/japaric/svd2rust/pull/130

cc @japaric
r? @alexcrichton
2017-07-21 15:42:17 +00:00
Tim Neumann
a53676762b rustllvm: update to SyncScope::ID 2017-07-21 14:32:00 +02:00
Tim Neumann
48424c9749 rustllvm: adjust usage of createNameSpace 2017-07-21 14:31:54 +02:00
Tim Neumann
5f9e432534 rustllvm: adjust usage of createPointerType 2017-07-21 14:31:51 +02:00
Tim Neumann
2c9c8dc5f4 rustllvm: use LLVMMetadataRef 2017-07-21 14:31:46 +02:00
Tim Neumann
c9787296f8 rustllvm: define LLVM_VERSION_LT 2017-07-21 14:31:17 +02:00
Oliver Schneider
401ab612c2 Adjust new suggestions to the suggestion guidelines 2017-07-21 13:59:17 +02:00
Segev Finer
c41ac2e11a rustbuild: Fix the --build argument to bootstrap.py
This makes the --build argument also apply for the downloading of the
stage0 toolchain and building rustbuild.

Fixes #42116
2017-07-21 14:18:35 +03:00
MaulingMonkey
90a7cac8c8 *.natvis: Use s8 postfixes to correctly interpret rust strings as UTF-8. 2017-07-21 03:39:56 -07:00
Simon Sapin
b77ff24060 Update Cargo to ffab51954ec32d55631c37a8730bb24915fc090b
https://github.com/rust-lang/cargo/pull/4123 added the [patch] section of the manifest
2017-07-21 11:13:18 +02:00
Mátyás Mustoha
9ca2fd0d90 Ignore stack probe tests on AArch64 2017-07-21 10:21:42 +02:00
Petr Zemek
3cefd2b1d5 Add a missing verb to the description of std::process::ExitStatus::success().
"Signal termination not considered" -> "Signal termination is not considered"

The first line of the description was rewrapped so it fits into 80 characters.
2017-07-21 08:44:53 +02:00
Joe Ranweiler
e74f611405
Document use of compiler_builtins with no_std binaries
The docs for the `compiler_builtins_lib` library feature were removed
in #42899. But, though the `compiler_builtins` library has been
migrated out-of-tree, the feature remains, and is needed to use the
stand-alone crate. We reintroduce the docs for the feature, and add a
reference to them when describing how to create a `no_std` executable.
2017-07-20 21:51:06 -07:00
Joe Ranweiler
9d0946acd0
Tell tidy about compiler_builtins_lib feature
After the work in #42899, it no longer auto-discovers it.
2017-07-20 21:49:05 -07:00
bors
d361efac26 Auto merge of #43318 - jhjourdan:jh/fix_weak_cound_MAX, r=alexcrichton
Fix in weak_count in Arc in the case the weak count is locked.

In the case the weak count was locked, the weak_count function could
return usize::MAX. We need to test this condition manually.
2017-07-21 04:49:00 +00:00
Esteban Küber
09c712dae3 Fix test 2017-07-20 21:28:53 -07:00
Esteban Küber
e99d309c56 Use the macro structure spans instead of the invocation 2017-07-20 21:27:22 -07:00
bors
e3c8433ebb Auto merge of #43183 - michaelwoerister:internalize-symbols-without-llvm, r=eddyb
trans: Internalize symbols without relying on LLVM

This PR makes the compiler use the information gather by the trans collector in order to determine which symbols/trans-items can be made internal. This has the advantages:
+ of being LLVM independent,
+ of also working in incremental mode, and
+ of allowing to not keep all LLVM modules in memory at the same time.

This is in preparation for fixing issue #39280.

cc @rust-lang/compiler
2017-07-21 02:24:18 +00:00
Mark Simulacrum
6a67a050c6 Change make_run signature to taking a RunConfig struct for refactorability. 2017-07-20 17:51:07 -06:00
bors
cc800531cc Auto merge of #43368 - Aaronepower:patch-3, r=alexcrichton
Update release notes for 1.19.0

This is just #42503 there is some problems with submodules I can't seem to fix so I just created a new PR.
2017-07-20 23:41:31 +00:00
Mark Simulacrum
b05af49086 Add an optional condition to constrain defaults.
Utilized primarily to not be a default rule unless some configuration is
given (e.g., compiler docs are enabled).
2017-07-20 17:24:11 -06:00
MaulingMonkey
65b7908e10 Handle unicode natvis paths, simplify extension check to a single if. 2017-07-20 16:09:24 -07:00
Stjepan Glavina
9a510553ee Clarify that sort_unstable is deterministic 2017-07-21 00:58:16 +02:00
Mark Simulacrum
d8aecc19d8 Remove step.rs 2017-07-20 16:41:46 -06:00
Mark Simulacrum
e9c2242050 Remove step.rs comments 2017-07-20 16:41:26 -06:00
Mark Simulacrum
8563280bec Check RLS tests 2017-07-20 16:33:49 -06:00
Mark Simulacrum
bcd73c9657 Change default documentation rules to correspond with previous state. 2017-07-20 16:33:49 -06:00
Mark Simulacrum
951616cac6 Don't include lldb/gdb in default tests 2017-07-20 16:33:49 -06:00
Michael Woerister
f6e5416a2f trans: Make the collector search const fn invocations. 2017-07-20 22:10:36 +02:00
Alex Crichton
53d8b1d051 std: Cut down #[inline] annotations where not necessary
This PR cuts down on a large number of `#[inline(always)]` and `#[inline]`
annotations in libcore for various core functions. The `#[inline(always)]`
annotation is almost never needed and is detrimental to debug build times as it
forces LLVM to perform inlining when it otherwise wouldn't need to in debug
builds. Additionally `#[inline]` is an unnecessary annoation on almost all
generic functions because the function will already be monomorphized into other
codegen units and otherwise rarely needs the extra "help" from us to tell LLVM
to inline something.

Overall this PR cut the compile time of a [microbenchmark][1] by 30% from 1s to
0.7s.

[1]: https://gist.github.com/alexcrichton/a7d70319a45aa60cf36a6a7bf540dd3a
2017-07-20 12:01:32 -07:00
Aaron Power
077deadb85 Update release notes for 1.19.0 2017-07-20 19:42:15 +01:00
Evan Cameron
72e8009185 Remove mut where possible 2017-07-20 13:59:44 -04:00
Mark Simulacrum
f1d04a3434 Don't run host-only tests when targeting another platform 2017-07-20 11:24:37 -06:00
Mark Simulacrum
4a21c72fb0 Fix a few issues found by comparing past/present 2017-07-20 11:24:37 -06:00
Mark Simulacrum
5bdec80fe3 Allow iterating over step descriptions.
This simplifies code and allows working mostly with normal Rust instead
of macros.
2017-07-20 11:24:37 -06:00
Mark Simulacrum
56128fb3ac Implement available paths list. 2017-07-20 11:24:37 -06:00
Mark Simulacrum
bca1e2ffd1 Use a single line for serde annotations. 2017-07-20 11:24:37 -06:00
Mark Simulacrum
981afa52f6 Krate -> Crate 2017-07-20 11:24:37 -06:00
Mark Simulacrum
ba1fc82fe4 Remove outdated code.
Relevant sys crates handle this properly.
2017-07-20 11:24:37 -06:00
Mark Simulacrum
7414868853 Remove TypeId from stack in Builder 2017-07-20 11:24:37 -06:00