about summary refs log tree commit diff
path: root/src/tools/miri/tests
AgeCommit message (Collapse)AuthorLines
2023-05-12Pass arguments to the interpreted program via `run-dep`Oli Scherer-44/+39
2023-05-12fmtRalf Jung-1/+3
2023-05-12Merge from rustcRalf Jung-37/+24
2023-05-11miri: Move patterns for simd testsJubilee Young-35/+17
It isn't clear to me why these error patterns do not trigger, but I am not going to waste time analyzing bugs in compiletest.
2023-05-11Remove a misleading part of a function nameOli Scherer-3/+3
2023-05-11Stop ignoring the `--manifest-path`Oli Scherer-2/+2
2023-05-11Bless miri testsbjorn3-6/+6
2023-05-11Fix fs miri test on AArch64bjorn3-1/+1
2023-05-11Add `./miri run-dep` for running a file with test dependencies availableOli Scherer-2/+36
2023-05-11Emit the compiler flags againOli Scherer-0/+2
2023-05-11fix deny_lint testRalf Jung-2/+7
2023-05-10Adjust tests for new drop and forget lintsUrgau-0/+9
2023-05-10fmtRalf Jung-1/+0
2023-05-10Merge from rustcRalf Jung-1/+0
2023-05-09Document some argumentsOli Scherer-0/+2
2023-05-09Separate config building from Miri command buildingOli Scherer-25/+26
2023-05-09Update to latest ui_test crate version.Oli Scherer-48/+99
Also stops using github actions groups that conflict with our groups as github does not nest them
2023-05-08port tests to 2021 editionRalf Jung-33/+109
2023-05-08print how long the measured sleep time actually was on test failureRalf Jung-2/+4
2023-05-08increase timing slack for sync testsRalf Jung-4/+6
2023-05-06Simplify Tree Borrows event filtering by getting the Range from RangeMapNeven Villani-0/+6
Co-authored-by: Ralf Jung <post@ralfj.de>
2023-05-05Stabilize const_ptr_readbors-1/+0
2023-05-05clearer variable names in data_raceRalf Jung-4/+2
2023-05-05ensure that the proc_macro crate exists in the sysrootRalf Jung-0/+9
2023-05-05Merge from rustcRalf Jung-0/+56
2023-05-02Avoid ICEing miri on layout query cyclesOli Scherer-0/+56
2023-05-02Avoid interpreting code that has lint errorsOli Scherer-0/+20
2023-05-01Auto merge of #111010 - scottmcm:mem-replace-simpler, r=WaffleLapkinbors-3/+3
Make `mem::replace` simpler in codegen Since they'd mentioned more intrinsics for simplifying stuff recently, r? `@WaffleLapkin` This is a continuation of me looking at foundational stuff that ends up with more instructions than it really needs. Specifically I noticed this one because `Range::next` isn't MIR-inlining, and one of the largest parts of it is a `replace::<usize>` that's a good dozen instructions instead of the two it could be. So this means that `ptr::write` with a `Copy` type no longer generates worse IR than manually dereferencing (well, at least in LLVM -- MIR still has bonus pointer casts), and in doing so means that we're finally down to just the two essential `memcpy`s when emitting `mem::replace` for a large type, rather than the bonus-`alloca` and three `memcpy`s we emitted before this ([or the 6 we currently emit in 1.69 stable](https://rust.godbolt.org/z/67W8on6nP)). That said, LLVM does _usually_ manage to optimize the extra code away. But it's still nice for it not to have to do as much, thanks to (for example) not going through an `alloca` when `replace`ing a primitive like a `usize`. (This is a new intrinsic, but one that's immediately lowered to existing MIR constructs, so not anything that MIRI or the codegen backends or MIR semantics needs to do work to handle.)
2023-04-30Update MIRI compiletestsScott McMurray-3/+3
2023-04-29blessRalf Jung-2/+2
2023-04-28tweak wordingRalf Jung-68/+71
2023-04-28Tree Borrows: improved diagnosticsNeven Villani-99/+367
2023-04-26port stacked borrows tests to tree borrowsRalf Jung-0/+239
2023-04-26tree borrows: test String::as_mut_ptrRalf Jung-14/+41
2023-04-24Hide backtrace from stderr filesOli Scherer-62/+2
2023-04-24Update miri test.Mara Bos-26/+28
2023-04-24Merge from rustcRalf Jung-0/+28
2023-04-22Auto merge of #104844 - cjgillot:mention-eval-place, r=jackh726,RalfJungbors-0/+28
Evaluate place expression in `PlaceMention` https://github.com/rust-lang/rust/pull/102256 introduces a `PlaceMention(place)` MIR statement which keep trace of `let _ = place` statements from surface rust, but without semantics. This PR proposes to change the behaviour of `let _ =` patterns with respect to the borrow-checker to verify that the bound place is live. Specifically, consider this code: ```rust let _ = { let a = 5; &a }; ``` This passes borrowck without error on stable. Meanwhile, replacing `_` by `_: _` or `_p` errors with "error[E0597]: `a` does not live long enough", [see playground](https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=c448d25a7c205dc95a0967fe96bccce8). This PR *does not* change how `_` patterns behave with respect to initializedness: it remains ok to bind a moved-from place to `_`. The relevant test is `tests/ui/borrowck/let_underscore_temporary.rs`. Crater check found no regression. For consistency, this PR changes miri to evaluate the place found in `PlaceMention`, and report eventual dangling pointers found within it. r? `@RalfJung`
2023-04-22Merge from rustcRalf Jung-0/+20
2023-04-21Actually keep `PlaceMention` if requested.Camille GILLOT-3/+5
2023-04-21Evaluate place expression in `PlaceMention`.Camille GILLOT-0/+26
2023-04-21Bless miri.Camille GILLOT-11/+20
2023-04-21disable preemption in tokio tests againRalf Jung-1/+1
2023-04-19Remove a test that wasn't carrying its weightOli Scherer-11/+0
2023-04-17Merge from rustcOli Scherer-18/+69
2023-04-16Add a flag to disable leak backtracesBen Kimock-0/+17
2023-04-16Report a backtrace for memory leaks under MiriBen Kimock-21/+55
2023-04-14Auto merge of #2843 - jsoref:spelling, r=RalfJungbors-31/+31
Spelling This PR corrects misspellings identified by the [check-spelling action](https://github.com/marketplace/actions/check-spelling). The misspellings have been reported at https://github.com/jsoref/miri/actions/runs/4699927237#summary-12751183650 The action reports that the changes in this PR would make it happy: https://github.com/jsoref/miri/actions/runs/4699927572#summary-12751184493
2023-04-14Fix spellingJosh Soref-31/+31
* additional * addresses * aggregates * always * around * beginning * behaviours * borrows * called * canary * deallocated * determine * division * documentation * empty * endianness * ensures * existing * github * hygiene * individual * initialize * instantiate * library * location * miscellaneous * mitigates * needs * nonexistent * occurred * occurring * overridden * parameter * performable * previous * referential * requires * resolved * scenarios * semantics * spurious * structure * subtracting * suppress * synchronization * this * timestamp * to * transferring * unknown * variable * windows Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-04-14add test for recent unwind UB issueRalf Jung-0/+9