Commit graph

324 commits

Author SHA1 Message Date
John Kåre Alsaker
185dcebbff Limit dylib symbols 2019-06-12 23:07:12 +02:00
Eduard-Mihai Burtescu
fff08cb043 Run rustfmt --file-lines ... for changes from previous commits. 2019-06-12 13:38:28 +03:00
Eduard-Mihai Burtescu
17cdd356da rustc: replace TyCtxt<'tcx, 'gcx, 'tcx> with TyCtxt<'gcx, 'tcx>. 2019-06-12 13:38:27 +03:00
Eduard-Mihai Burtescu
2441253508 Fix fallout from deny(unused_lifetimes). 2019-06-12 13:38:27 +03:00
Eduard-Mihai Burtescu
37799a5552 rustc: replace TyCtxt<'a, 'gcx, 'tcx> with TyCtxt<'tcx, 'gcx, 'tcx>. 2019-06-12 13:38:27 +03:00
Mazdak Farrokhzad
ba5b04ac46
Rollup merge of #61688 - RalfJung:is-floating-point, r=cramertj
is_fp and is_floating_point do the same thing, remove the former

also consistently mark all these `is_*` methods for inlining
2019-06-12 04:22:53 +02:00
Ralf Jung
87d5fe0e53 is_fp and is_floating_point do the same thing, remove the former
also consistently mark all these is_* methods for inlining
2019-06-11 19:46:16 +02:00
Eduard-Mihai Burtescu
1d720ec27c Run rustfmt --file-lines ... for changes from previous commits. 2019-06-11 14:11:59 +03:00
Eduard-Mihai Burtescu
8ee1814062 rustc_codegen_*: deny(unused_lifetimes). 2019-06-11 14:11:58 +03:00
Vadim Petrochenkov
8049e6199b Remove unused #![feature(custom_attribute)]s 2019-06-08 23:55:24 +03:00
Santiago Pastorino
4c326174d2 Revert "Make LocalAnalizer visitor iterate instead of recurse"
This reverts commit 0cfaa28bc5.
2019-06-07 23:43:19 +02:00
Mazdak Farrokhzad
3fd632aa7e
Rollup merge of #61559 - spastorino:make-visitors-iterate, r=oli-obk
Make visitors iterate

r? @oli-obk

The second commit is not completely equivalent, unsure if the code is wrong or not. Tests pass though, otherwise we would need to iterate in the opposite direction as it happened in other parts of the code.
2019-06-06 22:39:12 +02:00
Santiago Pastorino
0cfaa28bc5 Make LocalAnalizer visitor iterate instead of recurse 2019-06-06 05:17:26 +02:00
Alexander Regueiro
35585c499f Aggregation of drive-by cosmetic changes. 2019-06-05 21:09:26 +01:00
Nicholas Nethercote
dc807a9f7e Add walk_chain.
This combines multiple `HygieneData::with` calls on a hot path.
2019-06-05 07:43:15 +10:00
bors
e22b7a3eef Auto merge of #59148 - lcnr:unchecked_maths, r=eddyb
add support for unchecked math

add compiler support for
```rust
/// Returns the result of an unchecked addition, resulting in
/// undefined behavior when `x + y > T::max_value()` or `x + y < T::min_value()`.
pub fn unchecked_add<T>(x: T, y: T) -> T;

/// Returns the result of an unchecked substraction, resulting in
/// undefined behavior when `x - y > T::max_value()` or `x - y < T::min_value()`.
pub fn unchecked_sub<T>(x: T, y: T) -> T;

/// Returns the result of an unchecked multiplication, resulting in
/// undefined behavior when `x * y > T::max_value()` or `x * y < T::min_value()`.
pub fn unchecked_mul<T>(x: T, y: T) -> T;
```

cc https://github.com/rust-lang/rfcs/issues/2508
2019-06-03 22:05:55 +00:00
lcnr/Bastian Kauschke
d6266a7666 add support for unchecked math 2019-06-03 12:59:17 +02:00
Mark Mansi
b7f5eab11c remove last dependency of codegen on rustc_mir 2019-06-02 23:04:17 -05:00
Mark Mansi
74919df3a9 query-ify const_field 2019-06-02 23:03:58 -05:00
Mark Mansi
c747f31ffc remove unneeded deps 2019-06-02 22:56:37 -05:00
Mark Mansi
b20d96f97f remove as_mono_item 2019-06-02 22:55:29 -05:00
Mark Mansi
e21d002bd2 move codegenunitext to rustc::mir::mono 2019-06-02 22:55:29 -05:00
Mark Mansi
621bf0da80 move monoitemext to inherent methods 2019-06-02 22:55:29 -05:00
Mark Mansi
f2b9b2d13b move DefPathBasedNames to ty::print::obsolete 2019-06-02 22:50:03 -05:00
Mark Mansi
3287ddf937 remove reexports of mir::mono::{MonoItem,CodegenUnit} 2019-06-02 22:50:03 -05:00
Mark Mansi
58bd0ea732 deduplicate ty::Instance constructors 2019-06-02 22:44:51 -05:00
Mark Mansi
8af151b30a remove reexport of rustc::ty::Instance 2019-06-02 22:32:42 -05:00
bors
afaf976371 Auto merge of #61350 - RalfJung:alloc, r=oli-obk
light refactoring of global AllocMap

* rename AllocKind -> GlobalAlloc. This stores the allocation itself, not just its kind.
* rename the methods that allocate stuff to have consistent names.

Cc @oli-obk
2019-06-01 16:06:11 +00:00
bors
84f729d0d4 Auto merge of #61394 - pietroalbini:rollup-lzugnb4, r=pietroalbini
Rollup of 11 pull requests

Successful merges:

 - #60897 (error: remove StringError from Debug output)
 - #61304 (Speed up Azure CI installing Windows dependencies)
 - #61319 (Swap order of `unsafe async fn` to `async unsafe fn`)
 - #61342 (Set ellipsis_inclusive_range_patterns lint to warn)
 - #61344 (Add regression test for const generics ICE)
 - #61359 (Fix links in Deref documentation)
 - #61363 (Stabilize iter_nth_back feature)
 - #61369 (Fixed lifetime misspelling)
 - #61372 (Migrate some books to mdbook version 0.2)
 - #61374 (Explicitly suggest 'type_ascription' feature)
 - #61382 (Fixed a typo in core::convert::AsMut)

Failed merges:

r? @ghost
2019-06-01 00:57:37 +00:00
Eduard-Mihai Burtescu
e898905141 Update rustc-demangle version. 2019-05-31 18:23:02 +03:00
Pietro Albini
f20b5ccdaf
Rollup merge of #61369 - Vallentin:patch-1, r=varkor
Fixed lifetime misspelling
2019-05-31 13:34:03 +02:00
bors
db4c783319 Auto merge of #60166 - oli-obk:type_name, r=eddyb
Make the `type_name` intrinsic deterministic

cc @eddyb for the printing infrastructure
cc @Centril for the deterministic (coherent?) output

r? @sfackler
2019-05-31 10:42:31 +00:00
Christian Vallentin
66aa18bb44
Fixed lifetime misspelling 2019-05-30 21:29:32 +02:00
bors
0bfbaa6e8d Auto merge of #61253 - nnethercote:avoid-hygiene_data-lookups, r=petrochenkov
Avoid `hygiene_data` lookups

These commits mostly introduce compound operations that allow two close adjacent `hygiene_data` lookups to be combined.

r? @petrochenkov
2019-05-30 16:54:13 +00:00
Ralf Jung
41c36fabef light refactoring of global AllocMap
* rename AllocKind -> GlobalAlloc. This stores the allocation itself, not just its kind.
* rename the methods that allocate stuff to have consistent names.
2019-05-30 13:05:05 +02:00
Oliver Scherer
5b9848912a Make the type_name intrinsic's output deterministic 2019-05-30 11:19:22 +02:00
Mazdak Farrokhzad
907f4fd4ae
Rollup merge of #61297 - eddyb:forsaken-stats, r=nagisa
Remove LLVM instruction stats and other (obsolete) codegen stats.

Both `-Z count_llvm_insns` and `-Z codegen-stats` are removed, as (AFAIK) they have been of little use in the last few years, especially after the transition to MIR->LLVM codegen.

Other than for the LLVM instruction counts, `-Z codegen-stats` has long been obsoleted anyway.

r? @nagisa cc @rust-lang/compiler
2019-05-29 08:16:06 +02:00
Mazdak Farrokhzad
73530ff80b
Rollup merge of #61291 - spastorino:avoid-unneeded-bug-call, r=estebank
Avoid unneeded bug!() call

r? @oli-obk
2019-05-29 08:16:02 +02:00
Nicholas Nethercote
caea42f6c8 Introduce and use SyntaxContext::outer_expn_info().
It reduces two `hygiene_data` accesses to one on some hot paths.
2019-05-29 09:32:56 +10:00
Eduard-Mihai Burtescu
29b7c0687e rustc_codegen_llvm: remove LLVM instruction count stats. 2019-05-29 01:43:57 +03:00
Mazdak Farrokhzad
ee08261c8c
Rollup merge of #60928 - TheSirC:fix/60229, r=eddyb
Changes the type `mir::Mir` into `mir::Body`

Fixes part 1 of #60229 (previously attempted in #60242).

I stumbled upon the issue and it seems that the previous attempt at solving it was not merged. This is a second try more up-to-date.

The commit should have changed comments as well.
At the time of writting, it passes the tidy and check tool.
2019-05-29 00:19:55 +02:00
Eduard-Mihai Burtescu
03d32905e7 rustc_codegen_ssa: remove obsolete codegen stats. 2019-05-29 01:01:32 +03:00
Santiago Pastorino
0631d19c9a Avoid unneeded bug!() call 2019-05-28 22:46:56 +02:00
Claude-Alban RANÉLY-VERGÉ-DÉPRÉ
6e5e0daff2 Changes the type mir::Mir into mir::Body
The commit should have changed comments as well.
At the time of writting, it passes the tidy and check tool.

Revisions asked by eddyb :
- Renamed of all the occurences of {visit/super}_mir
- Renamed test structures `CachedMir` to `Cached`

Fixing the missing import on `AggregateKind`
2019-05-28 19:17:51 +02:00
Michael Woerister
64ee32e53a Rename PgoGenerate to something more general. 2019-05-28 16:14:34 +02:00
Michael Woerister
e943426045 Use a PathBuf instead of String for representing the pgo-use path internally. 2019-05-27 14:32:03 +02:00
Oliver Scherer
fa17654f79 Make ConstValue::Slice solely take [u8] and str 2019-05-25 10:07:01 +02:00
Oliver Scherer
e694b63cd1 Don't use ty::Const without immediately interning 2019-05-25 10:07:01 +02:00
John Kåre Alsaker
a58999c19e Update dylib_dependency_formats, extern_crate and reachable_non_generics 2019-05-23 18:51:52 +02:00
John Kåre Alsaker
469831f4da Update foreign_modules and dllimport_foreign_items 2019-05-23 18:51:51 +02:00