Commit Graph

11 Commits

Author SHA1 Message Date
Maybe Waffle
1d42936b18 Prefer doc comments over //-comments in compiler 2022-11-27 11:19:04 +00:00
Ralf Jung
fe00573324 make use of symbolic vtables in interpreter 2022-07-20 17:12:04 -04:00
Ralf Jung
0ec3269db8 interpret: rename Tag/PointerTag to Prov/Provenance
Let's avoid using two different terms for the same thing -- let's just call it "provenance" everywhere.
In Miri, provenance consists of an AllocId and an SbTag (Stacked Borrows tag), which made this even more confusing.
2022-07-19 15:38:32 -04:00
bors
29c5a028b0 Auto merge of #99309 - RalfJung:no-large-copies, r=oli-obk
interpret: make some large types not Copy

Also remove some unused trait impls (mostly HashStable).

This didn't find any unnecessary copies that I managed to avoid, but it might still be better to require explicit clone for these types? Not sure.

r? `@oli-obk`
2022-07-19 16:33:45 +00:00
Ralf Jung
213a25d975 interpret: make some large types not Copy 2022-07-18 13:57:35 -04:00
Ralf Jung
e6be52bbbd interpret/visitor: add missing early return 2022-07-17 10:47:34 -04:00
Ralf Jung
c4cb043f06 interpret/visitor: support visiting with a PlaceTy 2022-07-15 11:54:20 -04:00
Ralf Jung
ab225ade1e interpret: refactor projection handling code
Moves our projection handling code into a common file, and avoids the use of a
general mplace-based fallback function by have more specialized implementations.

mplace_index (and the other slice-related functions) could be more efficient by
copy-pasting the body of operand_index. Or we could do some trait magic to share
the code between them. But for now this is probably fine.
2022-07-11 22:50:46 -04:00
Ralf Jung
d7edf66a5a move Box mess handling into general visitor 2022-07-03 22:55:25 -04:00
Ralf Jung
f60ec83779 interpret: add From<&MplaceTy> for PlaceTy 2022-06-29 17:13:13 -04:00
Camille GILLOT
c5fc2609f0 Rename rustc_mir to rustc_const_eval. 2021-09-07 20:46:26 +02:00