| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2018-08-23 | Small style fixes | Bernardo Meurer | -5/+5 | |
| 2018-08-23 | More tidy fixes to CTFE | Bernardo Meurer | -9/+5 | |
| 2018-08-23 | Fix stylistic mistakes | Bernardo Meurer | -6/+13 | |
| 2018-08-23 | Fixup long code lines | Bernardo Meurer | -31/+91 | |
| 2018-08-23 | Reflow and fixup comments | Bernardo Meurer | -30/+47 | |
| 2018-08-23 | Add license header to CTFE/MIRI | Bernardo Meurer | -0/+140 | |
| 2018-08-22 | Auto merge of #52011 - ↵ | bors | -15/+82 | |
| oli-obk:dont_you_hate_it_too_when_everything_panics_constantly, r=eddyb Allow panicking with string literal messages inside constants r? @eddyb cc https://github.com/rust-lang/rust/issues/51999 we can't implement things like `panic!("foo: {}", x)` right now because we can't call trait methods (most notably `Display::fmt`) inside constants. Also most of these impls probably have loops and conditions, so it's messy anyway. But hey `panic!("foo")` works at least. cc @japaric got any test ideas for `#![no_std]`? | ||||
| 2018-08-22 | Allow panicking with string literal messages inside constants | Oliver Schneider | -15/+82 | |
| 2018-08-22 | Fix rebase issues | varkor | -20/+20 | |
| 2018-08-22 | Remove Ty prefix from Ty{Bool|Char|Int|Uint|Float|Str} | varkor | -20/+20 | |
| 2018-08-22 | Remove Ty prefix from ↵ | varkor | -16/+16 | |
| Ty{Adt|Array|Slice|RawPtr|Ref|FnDef|FnPtr|Dynamic|Closure|Generator|GeneratorWitness|Never|Tuple|Projection|Anon|Infer|Error} | ||||
| 2018-08-22 | Rename ty::TyVariants to ty::TyKind | varkor | -4/+4 | |
| 2018-08-22 | fix error reporting in validation | Ralf Jung | -6/+13 | |
| 2018-08-22 | fix validating fat pointers to user-defined unsized types | Ralf Jung | -53/+28 | |
| 2018-08-22 | fix a comment in validity | Ralf Jung | -1/+3 | |
| 2018-08-22 | fix layout sanity check | Ralf Jung | -1/+6 | |
| 2018-08-22 | also avoid recomputing the layout for unary and binary ops, where possible | Ralf Jung | -19/+47 | |
| 2018-08-22 | in a Use statement, exploit the fact that type and hence layout are the same ↵ | Ralf Jung | -15/+44 | |
| for LHS and RHS | ||||
| 2018-08-22 | optimize creating a stack frame | Ralf Jung | -6/+15 | |
| 2018-08-22 | fix validating fat raw pointers | Ralf Jung | -18/+25 | |
| 2018-08-22 | optimize sanity check path printing | Ralf Jung | -82/+97 | |
| During the sanity check, we keep track of the path we are below in a `Vec`. We avoid cloning that `Vec` unless we hit a pointer indirection. The `String` representation is only computed when validation actually fails. | ||||
| 2018-08-22 | avoid some redundant alignment checks | Ralf Jung | -7/+18 | |
| 2018-08-22 | optimize validation iterating over the elements of an array | Ralf Jung | -30/+72 | |
| This is still roughly 45ns slower than the old state, because it now works with an MPlaceTy and uses the appropriate abstractions, instead of working with a ptr-align pair directly. | ||||
| 2018-08-22 | fix formatting nits | Ralf Jung | -7/+7 | |
| 2018-08-22 | move validation to its own file | Ralf Jung | -331/+346 | |
| 2018-08-22 | fix operator handling when using 128bit intrinsics | Ralf Jung | -1/+1 | |
| 2018-08-22 | finally remove all traces of signs from memory | Ralf Jung | -71/+68 | |
| 2018-08-22 | fix computing layout when calling virtual fn | Ralf Jung | -3/+9 | |
| 2018-08-22 | avoid allocating for ZST | Ralf Jung | -1/+4 | |
| 2018-08-22 | fix using copy_op to transmute | Ralf Jung | -8/+10 | |
| 2018-08-22 | try_read_value_from_ptr -> try_read_value_from_mplace | Ralf Jung | -19/+18 | |
| 2018-08-22 | fix dynamically determining size and alignment | Ralf Jung | -17/+20 | |
| 2018-08-22 | fix accessing unsized fields | Ralf Jung | -14/+15 | |
| 2018-08-22 | fix drop typing; use same machinery for validating (sanity checking) dyn ↵ | Ralf Jung | -54/+88 | |
| trait ptrs and slices | ||||
| 2018-08-22 | fix dropping with vtables | Ralf Jung | -6/+14 | |
| 2018-08-22 | Tweak logging | Ralf Jung | -21/+23 | |
| - The logging in step.rs becomes debug! to make it stand out a bit more - Dump value of operands (in `eval_operands`) - Try to log a bit less verbose | ||||
| 2018-08-22 | fix union field access and DST computations and dumping of places | Ralf Jung | -27/+33 | |
| 2018-08-22 | remove cur_frame from memory (validation is gone, new validation will not ↵ | Ralf Jung | -14/+0 | |
| need it) | ||||
| 2018-08-22 | generalize truncate and sign_extend to take a Size | Ralf Jung | -7/+7 | |
| 2018-08-22 | miri/CTFE refactor | Ralf Jung | -1694/+1816 | |
| * Value gets renamed to Operand, so that now interpret::{Place, Operand} are the "dynamic" versions of mir::{Place, Operand}. * Operand and Place share the data for their "stuff is in memory"-base in a new type, MemPlace. This also makes it possible to give some more precise types in other areas. Both Operand and MemPlace have methods available to project into fields (and other kinds of projections) without causing further allocations. * The type for "a Scalar or a ScalarPair" is called Value, and again used to give some more precise types. * All of these have versions with an attached layout, so that we can more often drag the layout along instead of recomputing it. This lets us get rid of `PlaceExtra::Downcast`. MPlaceTy and PlaceTy can only be constructed in place.rs, making sure the layout is handled properly. (The same should eventually be done for ValTy and OpTy.) * All the high-level functions to write typed memory take a Place, and live in place.rs. All the high-level typed functions to read typed memory take an Operand, and live in operands.rs. | ||||
| 2018-08-22 | Move some value-and-memory related things out of eval_context | Ralf Jung | -765/+782 | |
| 2018-08-21 | Rollup merge of #53496 - matthiaskrgr:codespell_08_2018, r=varkor | kennytm | -2/+2 | |
| Fix typos found by codespell. | ||||
| 2018-08-19 | mv (mod) codemap source_map | Donato Sciarra | -8/+8 | |
| 2018-08-19 | Fix typos found by codespell. | Matthias Krüger | -2/+2 | |
| 2018-08-03 | Reintroduce alignment check | Oliver Schneider | -0/+1 | |
| 2018-08-03 | Remove spurious whitespace | Oliver Schneider | -1/+1 | |
| 2018-08-03 | Remove some more unnecessary `mut` | Oliver Schneider | -4/+4 | |
| 2018-08-02 | Second field of ScalarPair can be undef in some cases | Oliver Schneider | -1/+1 | |
| 2018-08-02 | Reading values should not be looking at the variant | Oliver Schneider | -15/+2 | |
| 2018-08-01 | Fallout from fixing `try_read_value` to work with enums | Oliver Schneider | -34/+17 | |
