Commit Graph

119629 Commits

Author SHA1 Message Date
Félix Fischer
d0dea9f588 Added MIR constant propagation of Scalars into function call arguments
- Documented rationale of current solution
- Polished documentation
2020-05-02 00:40:03 -04:00
Donough Liu
9a212c1625 Replace convenient function remove_prefix() with replace_prefix() 2020-05-02 12:04:03 +08:00
Donough Liu
089d4bbfd7 Suggestion for immutable reference -> mutable pointer should be emitted
as `Applicability::Unspecified`
2020-05-02 12:04:03 +08:00
Donough Liu
80d04cc1ba Add comments for deref_steps() 2020-05-02 12:04:03 +08:00
Donough Liu
60d62bee36 Suggest deref when coercing ty::Ref to ty::RawPtr with arbitrary
mutability
2020-05-02 12:04:03 +08:00
bors
dae90c1959 Auto merge of #71716 - alexcrichton:bitcode-follow-up, r=nnethercote
Rename `bitcode-in-rlib` option to `embed-bitcode`

This commit finishes work first pioneered in #70458 and started in #71528.
The `-C bitcode-in-rlib` option, which has not yet reached stable, is
renamed to `-C embed-bitcode` since that more accurately reflects what
it does now anyway. Various tests and such are updated along the way as
well.

This'll also need to be backported to the beta channel to ensure we
don't accidentally stabilize `-Cbitcode-in-rlib` as well.
2020-05-02 03:39:04 +00:00
Jacob Kiesel
b5c1f45273
Remove recommendation for unmaintained crate 2020-05-01 20:51:20 -06:00
bors
19ae74d0d0 Auto merge of #71776 - Dylan-DPC:rollup-k1iuuow, r=Dylan-DPC
Rollup of 5 pull requests

Successful merges:

 - #71018 (handle ConstValue::ByRef in relate)
 - #71758 (Remove leftover chalk types)
 - #71760 (Document unsafety for `*const T` and `*mut T`)
 - #71761 (doc: reference does not exist, probably a typo)
 - #71762 (doc: this resulted in a link pointing to a non-existent target)

Failed merges:

 - #71726 (Suggest deref when coercing `ty::Ref` to `ty::RawPtr` with arbitrary mutability)

r? @ghost
2020-05-02 00:21:39 +00:00
Esteban Küber
b3a8f212f8 Uncomment test code for failure to use Box::pin
Close #69083.
2020-05-01 16:53:20 -07:00
Josh Stone
fbd3fbdb24 Use a non-existent test path instead of clobbering /dev/null 2020-05-01 16:50:10 -07:00
Dylan DPC
f2fddd35af
Rollup merge of #71762 - tshepang:typo, r=jonas-schievink
doc: this resulted in a link pointing to a non-existent target
2020-05-01 23:16:40 +02:00
Dylan DPC
50f212e4d5
Rollup merge of #71761 - tshepang:missing-target, r=jonas-schievink
doc: reference does not exist, probably a typo
2020-05-01 23:16:38 +02:00
Dylan DPC
05b1991e76
Rollup merge of #71760 - LeSeulArtichaut:document-unsafety, r=Mark-Simulacrum
Document unsafety for `*const T` and `*mut T`

Helps with #66219
r? @Mark-Simulacrum
2020-05-01 23:16:36 +02:00
Dylan DPC
8aad12b87d
Rollup merge of #71758 - jackh726:chalk-remove, r=jackh726
Remove leftover chalk types

Split out from #69406

Since the other PR is having memory problems with `parallel-compiler = true`, figured I should split this out. Surprisingly, this actually changes some errors, and I'm not quite sure why.

r? @nikomatsakis
2020-05-01 23:16:35 +02:00
Dylan DPC
14c3ee906b
Rollup merge of #71018 - lcnr:custom-const-param, r=eddyb
handle ConstValue::ByRef in relate

fixes #68615

r? @eddyb
2020-05-01 23:16:32 +02:00
bors
dba944a6b7 Auto merge of #69808 - cjgillot:vtbl, r=pnkfelix
Avoid duplicating code for each query

There are at the moment roughly 170 queries in librustc.
The way `ty::query` is structured, a lot of code is duplicated for each query.
I suspect this to be responsible for a part of librustc'c compile time.

The first part of this PR reduces the amount of code generic on the query,
replacing it by code generic on the key-value types. I can split it out if needed.

In a second part, the non-inlined methods in the `QueryAccessors` and `QueryDescription` traits
are made into a virtual dispatch table. This allows to reduce even more the number of generated
functions.

This allows to save 1.5s on check build, and 10% on the size of the librustc.rlib.
(Attributed roughly half and half).
My computer is not good enough to measure properly compiling time.
I have no idea of the effect on performance. A perf run may be required.

cc #65031
2020-05-01 21:08:23 +00:00
Tshepang Lekhonkhobe
5314f0126c doc: misc rustdoc things 2020-05-01 22:32:33 +02:00
Tshepang Lekhonkhobe
ad460446c9 doc: make Stack and StackElement a little pretty
Also, fix rustdoc warnings.
2020-05-01 21:40:10 +02:00
Jack Huey
ef0da3ba4e Remove leftover chalk types 2020-05-01 14:39:05 -04:00
Tshepang Lekhonkhobe
28f8586698 doc: this resulted in a link pointing to a non-existent target 2020-05-01 20:37:34 +02:00
Tshepang Lekhonkhobe
e0db42b32f doc: reference does not exist, probably a typo 2020-05-01 20:25:50 +02:00
bors
7f65393b9a Auto merge of #71759 - Dylan-DPC:rollup-5hncork, r=Dylan-DPC
Rollup of 5 pull requests

Successful merges:

 - #71744 (remove obsolete comment)
 - #71747 (Remove deadcode in eval_mir_constant_to_operand)
 - #71749 (fix Miri error message padding)
 - #71752 (make Stability doc a more readable (and fix rustdoc warning))
 - #71755 (fix doc reference)

Failed merges:

r? @ghost
2020-05-01 18:00:52 +00:00
LeSeulArtichaut
d61debac64 Document unsafety for *const T and *mut T 2020-05-01 19:49:56 +02:00
Dylan DPC
da42f6897e
Rollup merge of #71755 - tshepang:fix-comment, r=jonas-schievink
fix doc reference

Should of been in e0ce9f8c0a,
but that had a typo.
2020-05-01 19:49:18 +02:00
Dylan DPC
2a3c2b335b
Rollup merge of #71752 - tshepang:more-readable, r=jonas-schievink
make Stability doc a more readable (and fix rustdoc warning)
2020-05-01 19:49:16 +02:00
Dylan DPC
8d9912ef49
Rollup merge of #71749 - RalfJung:miri-error-print, r=oli-obk
fix Miri error message padding

I screwed up in the previous PR, and accidentally padded with spaces instead of 0s...

r? @oli-obk
2020-05-01 19:49:14 +02:00
Dylan DPC
d83d8be65d
Rollup merge of #71747 - spastorino:safety-scheme-around-consts-cleanup, r=oli-obk
Remove deadcode in eval_mir_constant_to_operand

r? @oli-obk @RalfJung
2020-05-01 19:49:13 +02:00
Dylan DPC
54013532cd
Rollup merge of #71744 - tshepang:obsolete-comment, r=Dylan-DPC
remove obsolete comment

Referenced was removed in 8770d0f34a
2020-05-01 19:49:11 +02:00
bors
d2708873ef Auto merge of #5548 - matthiaskrgr:traget_os, r=flip1995
mismatched_target_os: link to respective section in rust reference

changelog: none
2020-05-01 16:33:14 +00:00
Alex Crichton
e1832fa4e4 Rename bitcode-in-rlib option to embed-bitcode
This commit finishes work first pioneered in #70458 and started in #71528.
The `-C bitcode-in-rlib` option, which has not yet reached stable, is
renamed to `-C embed-bitcode` since that more accurately reflects what
it does now anyway. Various tests and such are updated along the way as
well.

This'll also need to be backported to the beta channel to ensure we
don't accidentally stabilize `-Cbitcode-in-rlib` as well.
2020-05-01 09:05:13 -07:00
Tshepang Lekhonkhobe
5f4b7a4585 fix doc reference
Should of been in e0ce9f8c0a,
but that had a typo.
2020-05-01 17:53:52 +02:00
Oliver Scherer
c64c776678 Remove a comment that made only sense in the original position of this cycle check. 2020-05-01 17:45:51 +02:00
Camille GILLOT
6cde87def1 Mark query function as must_use. 2020-05-01 17:45:30 +02:00
Oliver Scherer
ba26df0998 Name test appropriately and link to the issues it regress-checks for 2020-05-01 17:45:10 +02:00
LeSeulArtichaut
8d9f73a690 Add new tests and bless old tests 2020-05-01 17:32:06 +02:00
Nicholas Nethercote
d4e5e1bcff Don't copy bytecode files into the incr. comp. cache.
It's no longer necessary now that bitcode is embedded into object files.

This change meant that `WorkProductFileKind::Bytecode` is no longer
necessary, which means that type is no longer necessary, which allowed
several places in the code to become simpler.
2020-05-01 08:14:39 -07:00
Tshepang Lekhonkhobe
7a1a69911b make Stability docs a bit more readable, and fix some rustdoc warnings 2020-05-01 16:41:50 +02:00
LeSeulArtichaut
f9b9ba51d3 Prevent functions with #[target_feature] to be coerced to safe function pointers 2020-05-01 16:37:47 +02:00
LeSeulArtichaut
f2c6cbd98f Prevent calls to functions with #[target_feature] in safe contexts 2020-05-01 16:24:59 +02:00
Oliver Scherer
004208fc46 Move recursion check for zsts back to read site instead of access check site. 2020-05-01 15:52:08 +02:00
Camille GILLOT
e4976d0caf Restrict access. 2020-05-01 15:10:45 +02:00
Camille GILLOT
282d72f6bb Inline a few things. 2020-05-01 15:10:12 +02:00
Camille GILLOT
49e024ee7c Monomorphise the interface. 2020-05-01 14:53:55 +02:00
Camille GILLOT
e15383cce1 Move the DepNode construction to librustc_query_system. 2020-05-01 14:48:14 +02:00
Camille GILLOT
8f3e96d658 Monomorphise try_execute_query. 2020-05-01 14:40:17 +02:00
Ralf Jung
1bab6a4db7 fix Miri error message padding 2020-05-01 14:39:41 +02:00
Camille GILLOT
1c7376e797 Monomorphise try_start. 2020-05-01 14:37:12 +02:00
Camille GILLOT
d56085cbc9 Monomorphise try_execute_anon_query. 2020-05-01 14:32:11 +02:00
Santiago Pastorino
8bdf988be2
Remove deadcode in eval_mir_constant_to_operand 2020-05-01 09:30:55 -03:00
Camille GILLOT
85704a41db Monomorphise load_from_disk_and_cache_in_memory. 2020-05-01 14:29:35 +02:00