| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-05-19 | update codegen of `discriminant_value` | Bastian Kauschke | -3/+6 | |
| 2020-05-18 | Add asm! to MIR | Amanieu d'Antras | -0/+3 | |
| 2020-05-16 | Auto merge of #71665 - RalfJung:miri-intern-no-ice, r=oli-obk | bors | -153/+180 | |
| Miri interning: replace ICEs by proper errors Fixes https://github.com/rust-lang/rust/issues/71316 I also did some refactoring, as I kept being confused by all the parameters to `intern_shallow`, some of which have invalid combinations (such as a mutable const). So instead `InternMode` now contains all the information that is needed and invalid combinations are ruled out by the type system. Also I removed interpreter errors from interning. We already ignored almost all errors, and the `ValidationFailure` errors that we handled separately actually cannot ever happen here. The only interpreter failure that was actually reachable was the UB on dangling pointers -- and arguably, a dangling raw pointer is not UB, so the error was not even correct. It's just that the rest of the compiler does not like "dangling" `AllocId`. It should be possible to review the 3 commits separately. r? @oli-obk Cc @rust-lang/wg-const-eval | ||||
| 2020-05-15 | InvalidUninitBytes: Track more info about access | David Cook | -6/+8 | |
| 2020-05-14 | Rollup merge of #72150 - jackh726:unnorm_projection, r=nikomatsakis | Ralf Jung | -2/+0 | |
| Remove UnnormalizedProjection This was only used for the old chalk integration with chalk-engine r? @nikomatsakis | ||||
| 2020-05-12 | strings do not have to be valid UTF-8 any more | Ralf Jung | -3/+4 | |
| 2020-05-12 | Remove ty::UnnormalizedProjection | Jack Huey | -2/+0 | |
| 2020-05-10 | Typo | Ralf Jung | -1/+1 | |
| Co-Authored-By: Oliver Scherer <github35764891676564198441@oli-obk.de> | ||||
| 2020-05-10 | fmt | Ralf Jung | -27/+16 | |
| 2020-05-10 | avoid raising interpreter errors from interning | Ralf Jung | -15/+24 | |
| 2020-05-10 | remove some dead code, and assert we do not swallow allocating errors | Ralf Jung | -18/+19 | |
| 2020-05-10 | Miri interning: replace ICEs by proper errors, make intern_shallow type ↵ | Ralf Jung | -119/+147 | |
| signature more precise | ||||
| 2020-05-09 | Rollup merge of #71508 - oli-obk:alloc_map_unlock, r=RalfJung | Ralf Jung | -19/+17 | |
| Simplify the `tcx.alloc_map` API This PR changes all functions that require manually locking the `alloc_map` to functions on `TyCtxt` that lock the map internally. In the same step we make the `TyCtxt::alloc_map` field private. r? @RalfJung | ||||
| 2020-05-08 | Auto merge of #71418 - hbina:rename_miri_undef, r=RalfJung | bors | -24/+24 | |
| Renamed "undef" -> "uninit" 1. InvalidUndefBytes -> InvalidUninitBytes 2. ScalarMaybeUndef -> ScalarMaybeUninit 3. UndefMask -> InitMask Related issue #71193 | ||||
| 2020-05-08 | Create a convenience wrapper for `get_global_alloc(id).unwrap()` | Oliver Scherer | -2/+2 | |
| 2020-05-08 | Move `unwrap_fn` and `unwrap_memory` to `GlobalAlloc` | Oliver Scherer | -1/+1 | |
| 2020-05-08 | Simplify the `tcx.alloc_map` API | Oliver Scherer | -19/+17 | |
| 2020-05-07 | Renamed "undef" stuff to "uninit" | Hanif Bin Ariffin | -24/+24 | |
| 1. InvalidUndefBytes -> InvalidUninitBytes 2. ScalarMaybeUndef -> ScalarMaybeUninit 3. UndefMask -> InitMask Related issue #71193 | ||||
| 2020-05-07 | use hex for pointers in Miri error messages; refine vtable error message | Ralf Jung | -3/+4 | |
| 2020-05-06 | more precise vtable errors | Ralf Jung | -11/+14 | |
| 2020-05-06 | try_validation: handle multi-branching, and use macro for most remaining ↵ | Ralf Jung | -78/+47 | |
| manual throw_validation_failure sites | ||||
| 2020-05-06 | convert throw_validation_failure macro to same syntax as try_validation | Ralf Jung | -56/+51 | |
| 2020-05-06 | properly catch invalid-drop-fn errors | Ralf Jung | -6/+4 | |
| 2020-05-06 | convert remaining try_validation to new macro | Ralf Jung | -27/+25 | |
| 2020-05-06 | validation: port more checks to the pattern-based macro (and give it the ↵ | Ralf Jung | -30/+49 | |
| shorter name) | ||||
| 2020-05-04 | Auto merge of #71751 - oli-obk:const_ice, r=RalfJung | bors | -12/+8 | |
| Move recursion check for zsts back to read site instead of access check site Reverts https://github.com/rust-lang/rust/pull/71140#discussion_r413709446 Fix #71612 Fix #71709 r? @RalfJung | ||||
| 2020-05-03 | Rollup merge of #71663 - jumbatm:caller-handles-validation-error, r=RalfJung | Dylan DPC | -31/+61 | |
| Fix exceeding bitshifts not emitting for assoc. consts (properly this time, I swear!) Fixes #69021 and fixes #71353. As described in https://github.com/rust-lang/rust/issues/71353#issuecomment-617901923, this PR: - adds a variant of `try_validation!` called `try_validation_pat!` that allows specific failures to be turned into validation failures (but returns the rest, unchanged), and - allows `InvalidProgram` to be returned out of validation r? @RalfJung | ||||
| 2020-05-02 | Rollup merge of #71738 - RalfJung:pointer-no-alloc-id, r=oli-obk | Ralf Jung | -24/+22 | |
| remove AllocId generalization of Pointer This was only needed for the "snapshot" machinery, which is gone. r? @oli-obk | ||||
| 2020-05-01 | Remove a comment that made only sense in the original position of this cycle ↵ | Oliver Scherer | -3/+1 | |
| check. | ||||
| 2020-05-01 | Move recursion check for zsts back to read site instead of access check site. | Oliver Scherer | -12/+10 | |
| 2020-05-01 | Note that try_validation_pat can take a format str directly. | jumbatm | -0/+9 | |
| 2020-05-01 | Manually format macro to not go over text width. | jumbatm | -2/+8 | |
| 2020-05-01 | Expect at least one expr for p, what_fmt and expected_fmt. | jumbatm | -2/+2 | |
| 2020-05-01 | Also make expected param wrapped in format_args. | jumbatm | -3/+3 | |
| 2020-05-01 | Wrap try_validation_pat! args in format_args! | jumbatm | -3/+3 | |
| 2020-05-01 | Update try_validation_pat! doc comment. | jumbatm | -2/+13 | |
| 2020-05-01 | Apply suggestions for try_validation_pat!. | jumbatm | -12/+11 | |
| 2020-05-01 | Fix comment to reflect error handling behaviour. | jumbatm | -1/+1 | |
| 2020-05-01 | Allow unreachable_patterns instead of using `if true` | jumbatm | -1/+2 | |
| 2020-05-01 | Match kind in try_validation_pat!. | jumbatm | -3/+3 | |
| Avoids having to repeat InterpErrorInfo { .. } | ||||
| 2020-05-01 | Add FIXME about replacing all usages of try_validation. | jumbatm | -0/+1 | |
| 2020-05-01 | Apply suggestions from code review | jumbatm | -5/+5 | |
| Co-Authored-By: Ralf Jung <post@ralfj.de> Co-Authored-By: Oliver Scherer <github35764891676564198441@oli-obk.de> | ||||
| 2020-05-01 | Throw validation failure for InvalidUndefBytes. | jumbatm | -1/+2 | |
| 2020-05-01 | Don't fail for UndefinedBehaviourInfo in validation. | jumbatm | -2/+5 | |
| 2020-05-01 | Don't duplicate body of try_validation. | jumbatm | -6/+3 | |
| 2020-05-01 | Add try_validation_pat. | jumbatm | -1/+21 | |
| 2020-05-01 | Don't duplicate macro for optional arg. | jumbatm | -24/+6 | |
| 2020-05-01 | fmt | Ralf Jung | -2/+2 | |
| 2020-05-01 | remove AllocId generalization of Pointer | Ralf Jung | -23/+21 | |
| 2020-05-01 | rename InvalidIntPtrUsage | Ralf Jung | -6/+6 | |
