csmoe
64f61c7888
remove indexed_vec re-export from rustc_data_structures
2019-09-29 16:48:31 +00:00
Mark Rousskov
14a5aefb01
Switch over all StableHash impls to new format
2019-09-28 11:47:36 -04:00
Andreas Molzer
7388cb4cf8
Fixup remaining direct relocation field references
2019-08-30 04:19:29 +02:00
Andreas Molzer
d8c5bc7ec6
Replace usage of alloc.bytes in interpret
...
There is now a dedicate `len` method which avoids the need to access the
bytes. Access the length as `Size` can also be done by a direct member.
The constructors guarantee that these representations are convertable.
Access which relies on the bytes, such as snapshot, can use direct raw
access by reference as it does not care about undef and relocations or
properly checks them seperately.
2019-08-21 10:55:16 +02:00
Mark Rousskov
43de341f19
Copy ty::Instance instead of passing by reference
...
ty::Instance is small and Copy, we should not be adding additional
indirection.
2019-08-11 10:54:38 -04:00
Mark Rousskov
288b4e9078
Don't store &Span
...
This is just needless indirection.
2019-08-05 10:29:06 -04:00
Saleem Jaffer
152f0d347e
code review fixes
2019-07-31 12:48:54 +05:30
Saleem Jaffer
9f8b099846
code review fixes
2019-07-29 20:17:52 +05:30
Saleem Jaffer
307798aa38
fixing fallout due to InterpError refactor
2019-07-29 13:35:09 +05:30
Eduard-Mihai Burtescu
b25b466a88
rustc: remove 'x: 'y bounds (except from comments/strings).
2019-06-18 18:10:21 +03:00
Eduard-Mihai Burtescu
f3f9d6dfd9
Unify all uses of 'gcx and 'tcx.
2019-06-14 18:58:23 +03: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
Eduard-Mihai Burtescu
d110d309b6
rustc_mir: deny(unused_lifetimes).
2019-06-11 14:11:58 +03:00
Jad Ghalayini
80ff07f30d
Changed usages of `mir` in librustc::mir and librustc_mir to `body`
2019-06-09 16:05:05 -04:00
Ralf Jung
059e7c0c80
rename EvalSnapshot -> InterpSnapshot
2019-06-08 11:39:48 +02:00
Ralf Jung
8f05ff3e33
rename EvalResult -> InterpResult and EvalError -> InterpErrorInfo
2019-06-08 11:39:48 +02:00
Ralf Jung
082da0c698
rename Scalar::Bits to Scalar::Raw and bits field to data
2019-05-26 11:08:03 +02:00
flip1995
e1da67e69c
Fix lint findings in librustc_mir
2019-04-28 21:19:27 +02:00
Ralf Jung
4d79d391b0
avoid reading from ZST locals
2019-04-08 13:40:43 +02:00
Ralf Jung
cb51f872a8
miri engine: lazily allocate memory for locals on first write
2019-04-06 23:58:59 +02:00
Mazdak Farrokhzad
85a82ac334
Rollup merge of #59607 - kenta7777:renames-EvalErrorKind-to-InterpError, r=oli-obk
...
Renames `EvalErrorKind` to `InterpError`
This PR renames `EvalErrorKind` to `InterpError`.
This is related to #54395 .
2019-04-02 13:47:30 +02:00
kenta7777
3c8caaca7d
renames EvalErrorKind to InterpError
2019-04-02 01:02:18 +09:00
kenta7777
656d4c30e9
typo fix
2019-04-01 19:51:12 +09:00
Taiki Endo
6156defd51
librustc_mir: use ? in impl_snapshot_for! macro
2019-02-11 02:24:46 +09:00
Taiki Endo
725af30809
librustc_mir => 2018
2019-02-08 06:28:15 +09:00
Oliver Scherer
8c26c590b4
Failure resistent trait implementing
2019-01-30 19:29:10 +01:00
Oliver Scherer
765fa81a6e
Swap the names of `LocalValue` and `LocalState`
2019-01-30 17:51:59 +01:00
Oliver Scherer
a7a5cb620f
Prefer macro over manual implementation
2019-01-30 17:50:46 +01:00
Oliver Scherer
7cfb05fd23
Merge `locals` and `local_layouts` fields
2019-01-30 14:16:18 +01:00
Björn Steinbrink
98d4f33626
const_eval: Predetermine the layout of all locals when pushing a stack frame
...
Usually the layout of any locals is required at least three times, once
when it becomes live, once when it is written to, and once it is read
from. By adding a cache for them, we can reduce the number of layout
queries speeding up code that is heavy on const_eval.
2019-01-20 19:08:14 +01:00
Ralf Jung
261faf3ce2
machine hooks for stack push and pop, frame machine data
2018-11-25 10:49:43 +01:00
Oliver Scherer
48f6941acf
Move `ScalarMaybeUndef` back to rustc
2018-11-08 14:52:02 +01:00
Oliver Scherer
e8a22b692a
Rename `Value` to `Immediate` for miri
2018-11-02 16:56:59 +01:00
Geoffry Song
4747d83c70
Extend the impl_stable_hash_for! macro for miri.
2018-10-26 01:07:10 -07:00
Ralf Jung
21934c81f4
add support for storing extra data in an allocation
2018-10-18 12:08:22 +02:00
Ralf Jung
f79a22c3d5
validate return value on stack pop
2018-10-13 09:09:02 +02:00
Ralf Jung
75ea7c7fc2
typos and spaces
2018-10-10 09:58:17 +02:00
Ralf Jung
397283dbc3
rename extra -> meta in place
2018-10-10 09:58:17 +02:00
Ralf Jung
4e9f9329e3
miri engine: basic support for pointer provenance tracking
2018-10-10 09:50:06 +02:00
Ralf Jung
d62aa3e085
move ScalarMaybeUndef into the miri engine
2018-09-30 13:09:26 +02:00
Ralf Jung
8e74ee0998
fix comment
2018-09-21 16:25:33 +02:00
Ralf Jung
c16336a014
move loop detector constants to the module that uses them; make lifetime order in ConstPropagator consistent with Memory
2018-09-20 11:57:45 +02:00
Ralf Jung
018d128325
rename evaluator -> interpreter to make eddyb happy
2018-09-20 10:36:25 +02:00
Ralf Jung
169f7911e9
move CTFE engine snapshot state out of miri engine into CTFE machine instance
2018-09-20 10:12:21 +02:00
Ralf Jung
3cb736af75
miri loop detector hashing: fix enum hashing to also consider discriminant; do not hash extra machine state
...
standalone miri is not interested in loop detection
2018-09-09 10:53:36 +02:00
Bruno Dutra
05cdf8dc3d
Document snapshot.rs
2018-09-03 20:03:14 +02:00
Bruno Dutra
61a999a531
Move InfiniteLoopDetector to snapshot.rs
2018-09-03 20:02:35 +02:00