Commit Graph

68161 Commits

Author SHA1 Message Date
Josh Stone
a9bb599fb1 powerpc64: improve extern struct ABI
These fixes all have to do with the 64-bit PowerPC ELF ABI for big-endian
targets.  The ELF v2 ABI for powerpc64le already worked well.

- Return after marking return aggregates indirect. Fixes #42757.
- Pass one-member float aggregates as direct argument values.
- Aggregate arguments less than 64-bit must be written in the least-
  significant bits of the parameter space.
- Larger aggregates are instead padded at the tail.
  (i.e. filling MSBs, padding the remaining LSBs.)

New tests were also added for the single-float aggregate, and a 3-byte
aggregate to check that it's filled into LSBs.  Overall, at least these
formerly-failing tests now pass on powerpc64:

- run-make/extern-fn-struct-passing-abi
- run-make/extern-fn-with-packed-struct
- run-pass/extern-pass-TwoU16s.rs
- run-pass/extern-pass-TwoU8s.rs
- run-pass/struct-return.rs
2017-09-01 18:21:29 -07:00
Eduard-Mihai Burtescu
02ec0ae066 rustc_mir: always emit StorageLive even without a matching StorageDead. 2017-09-02 02:17:38 +03:00
Eduard-Mihai Burtescu
dc563efd98 rustc_mir: actually "promote" constants' MIR to 'static by removing StorageDead's. 2017-09-02 02:17:28 +03:00
Guillaume Gomez
7befbbc020 Update html-diff-rs version 2017-09-02 00:16:55 +02:00
Matt Ickstadt
22ca03bde6 Fix unstable book example 2017-09-01 16:16:36 -05:00
Eduard-Mihai Burtescu
8bdfd8a003 rustc: rename CodeExtent to Scope and RegionMaps to ScopeTree. 2017-09-01 23:27:48 +03:00
Guillaume Gomez
ccc31ce3d5 set compile_fail flag stable 2017-09-01 22:09:20 +02:00
Matt Ickstadt
eb143c344e Fix arm visitor 2017-09-01 14:39:46 -05:00
kennytm
7169fe57d6
Fallback to dladdr-based resolve_symbol if backtrace failed.
This programs compiled without -g on macOS still provide the resolve to
actual symbols, instead of `<unknown>` everywhere.
2017-09-02 03:24:17 +08:00
John Colanduoni
09f572b7dc
Use env::current_exe for libbacktrace on macOS 2017-09-02 03:24:17 +08:00
John Colanduoni
e3de40e72f
Add upstream pull request link for libbacktrace 2017-09-02 03:24:16 +08:00
John Colanduoni
cd24162667
Enable backtrace tests for macOS and iOS 2017-09-02 03:24:16 +08:00
John Colanduoni
e8121b3d16
Add libbacktrace support for Apple platforms 2017-09-02 03:24:15 +08:00
Matt Ickstadt
f866152991 Implement RFC 1925 2017-09-01 12:46:37 -05:00
bors
f861b6ee46 Auto merge of #44154 - alexcrichton:bump-bootstrap, r=Mark-Simulacrum
Bump to 1.22.0 and update boostrap compiler

Time to get a new nightly!
2017-09-01 16:39:31 +00:00
Alex Crichton
271c63c189 Update git2-rs to fix cross compiles 2017-09-01 07:56:44 -07:00
bors
ed532c0d93 Auto merge of #44238 - nrc:pulldown-warn, r=@QuietMisdreavus
Improve the Pulldown/hoedown warnings

cc #44229

r? @QuietMisdreavus
2017-09-01 13:56:22 +00:00
bors
a59a6d8a56 Auto merge of #44171 - eddyb:scope, r=nikomatsakis
Use hir::ItemLocalId instead of ast::NodeId in rustc::middle::region::CodeExtent.

This is an alternative to @michaelwoerister's #43887, changing `CodeExtent` instead of `ReScope`.

The benefit here is that the same `Region`s are used same-crate and cross-crate, while preserving the incremental recompilation properties of the stable `hir::ItemLocalId`.

Only places which needed to get back to the `ast::NodeId` from `CodeExtent` was its `span` method, used in error reporting - passing the `&RegionMaps` down allowed using `hir_to_node_id`.
`rustc::cfg` and `dataflow` also had to be converted to `hir::ItemLocalId` because of their interactions with `CodeExtent`, especially in `borrowck`, and from that we have 3 more `hir_to_node_id` calls: `cfg::graphviz` node labels, `borrowck` move reporting, and the `unconditional_recursion` lint.

Out of all of those, *only* the lint actually makes a decision (on whether code will compile) based on the result of the conversion, the others only use it to know how to print information to the user.
So I think we're safe to say that the bulk of the code working with a `CodeExtent` is fine with local IDs.

r? @nikomatsakis
2017-09-01 10:40:18 +00:00
Oliver Schneider
f0e7a5b8e5
Prevent suggestions from being emitted if all possible locations are inside expansions 2017-09-01 11:14:04 +02:00
Jimmy Cuadra
93a56cdacd impl From<Infallible> for TryFromIntError. 2017-09-01 01:57:05 -07:00
Eduard-Mihai Burtescu
e4996ec49c rustc: use hir::ItemLocalId instead of ast::NodeId in CodeExtent. 2017-09-01 11:18:31 +03:00
Eduard-Mihai Burtescu
ea6aca7726 rustc: take TyCtxt and RegionMaps in CodeMap::span. 2017-09-01 11:17:03 +03:00
Eduard-Mihai Burtescu
28ddd7a4ef rustc: use hir::ItemLocalId instead of ast::NodeId in CFG. 2017-09-01 11:17:03 +03:00
Nick Cameron
1d6d09fa6d Fix tests
This is just undoing changes from #41991 because we are not running markdown rendering twice.
2017-09-01 20:07:04 +12:00
Jimmy Cuadra
36c0ff8690 Reword docs for Infallible to make them easier to understand. 2017-09-01 00:26:37 -07:00
Simon Sapin
9abc549aa1 Add git-commit-hash in source and extended tarballs too. 2017-09-01 09:08:59 +02:00
Jacob Kiesel
2e34ff7671 Fix documentation and formatting. 2017-09-01 00:07:26 -06:00
bors
45d31e7310 Auto merge of #44233 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
Rollup of 10 pull requests

- Successful merges: #44192, #44199, #44202, #44203, #44205, #44207, #44209, #44223, #44230, #44231
- Failed merges:
2017-09-01 04:50:00 +00:00
Nick Cameron
fbb1612846 Windows line endings 2017-09-01 16:15:25 +12:00
Nick Cameron
abc0530279 Do a better job of eliding whitespace-only differences from warnings 2017-09-01 15:34:44 +12:00
Nick Cameron
1a8aac3f02 Improve the appearance of markdown warnings 2017-09-01 15:34:26 +12:00
Alex Crichton
9e5a7e9472 Bring back stage0 allocator logic on MSVC
I think there may still be bugs preventing its removal..
2017-08-31 18:20:52 -07:00
Nick Cameron
9ab20a3865 rustdoc: collect rendering warnings and print them in one place 2017-09-01 12:24:26 +12:00
Mark Simulacrum
81fc0e1150 Rollup merge of #44231 - lukaramu:patch-1, r=alexcrichton
Fix release notes on associated constants

Associated constants seem to be stable everywhere, not just in traits
2017-08-31 18:07:49 -06:00
Mark Simulacrum
88ee66d3c2 Rollup merge of #44230 - Phlosioneer:patch-1, r=sfackler
Fix typo in 1.20.0 release notes

str::from_boxed_utf8_unchecked rather than ste::
2017-08-31 18:07:48 -06:00
Mark Simulacrum
9c4bdd3b87 Rollup merge of #44223 - eddyb:symbol-from-str, r=jseyfried
Implement From<&str> for Symbol.

This lets us have `fn foo<S: Into<Symbol>>` bounds and accept both `&str` and existing `Symbol`s.

r? @jseyfried
2017-08-31 18:07:47 -06:00
Mark Simulacrum
3cd4ea3bfa Rollup merge of #44209 - frewsxcv:frewsxcv-addr-other-scenarios, r=alexcrichton
Expand docs of multi-address behavior of some UDP/TCP APIs.

Fixes https://github.com/rust-lang/rust/issues/22569.
2017-08-31 18:07:46 -06:00
Mark Simulacrum
4b2d568e72 Rollup merge of #44207 - durka:define-maps-fn, r=eddyb
add `fn` to syntax of rustc::ty::maps::define_maps

This is not a functional change, it just makes it possible to find a query by grepping without knowing that it's a query rather than a function.

I didn't pursue renaming everything from "map" to "query" because it seems to be a very invasive change. It would be a good test to exercise an IDE's renaming features.

Closes #44161

r? @eddyb
2017-08-31 18:07:45 -06:00
Mark Simulacrum
471f9894c9 Rollup merge of #44205 - frewsxcv:frewsxcv-addr-doc-fix, r=QuietMisdreavus
Fix typo in doc `ToSocketAddrs` example.

None
2017-08-31 18:07:44 -06:00
Mark Simulacrum
b66823fb4d Rollup merge of #44203 - cuviper:compiler-rt-test, r=Mark-Simulacrum
rustbuild: update the rust-src filter for compiler-rt

We wanted `src/compiler-rt/test` filtered from the `rust-src` package,
but that path is now `src/libcompiler_builtins/compiler-rt/test`.  This
saves over half of the installed rust-src size. (50MB -> 22MB)
2017-08-31 18:07:43 -06:00
Mark Simulacrum
f3b7197384 Rollup merge of #44202 - alexcrichton:xcrate-generators, r=arielb1
rustc: Fix reachability with cross-crate generators

Same solution as in f2df1857

Closes #44181
2017-08-31 18:07:42 -06:00
Mark Simulacrum
5f00b10b1c Rollup merge of #44199 - jakllsch:jakllsch-abcc6c4a-0caf-4d30-b336-39629c73d3f5, r=sfackler
bootstrap: add openssl configuration mapping for i686-unknown-netbsd
2017-08-31 18:07:41 -06:00
Mark Simulacrum
fd5a945727 Rollup merge of #44192 - GuillaumeGomez:sub-fields-style, r=QuietMisdreavus
Fix invalid display of enum sub-fields docs

Before:

<img width="1440" alt="screen shot 2017-08-30 at 23 17 00" src="https://user-images.githubusercontent.com/3050060/29895433-61f2bf8c-8dd9-11e7-83e8-cf1dca878100.png">

After:

<img width="1440" alt="screen shot 2017-08-30 at 23 16 48" src="https://user-images.githubusercontent.com/3050060/29895441-66dea042-8dd9-11e7-9576-11b0c770c70b.png">

cc @nox @rust-lang/docs
2017-08-31 18:07:40 -06:00
Luca Barbato
cccf3e7a5c Add support for Vector Multiply Sum Saturated on PowerPC 2017-08-31 23:31:29 +00:00
Luca Barbato
078c3ddbe3 Add support for Vector Multiply Sum on PowerPC 2017-08-31 23:27:23 +00:00
bors
69dbe6602d Auto merge of #43425 - matklad:lambda-restrictions, r=eddyb
Lambda expressions honor no struct literal restriction

This is a fix for #43412 if we decide that it is indeed a bug :)

closes #43412
2017-08-31 23:26:47 +00:00
Nick Cameron
a5f50a9dee Only emit warnings if the user is using Pulldown
Also checks for differences after eliminating whitespace-only diffs.

Renames get_html_diff
2017-09-01 11:22:18 +12:00
Luca Barbato
d308b0bf56 Add support for Vector Multiply Add Saturated on PowerPC 2017-08-31 23:20:35 +00:00
Lukas H
f575185f39 Fix release note on associated constants
Associated constants seem to be stable everywhere, not just in traits
2017-09-01 01:17:08 +02:00
Phlosioneer
945ba85019 Fix typo in 1.20.0 release notes
str::from_boxed_utf8_unchecked rather than ste::
2017-08-31 19:12:07 -04:00