Ralf Jung
309413717f
cargo-miri debugging improvements
2022-07-21 14:08:07 -04:00
bors
69a4eaa187
Auto merge of #2410 - rust-lang:miri_auto_ops, r=RalfJung
...
Some cleanups and docs around the auto ops
2022-07-21 15:31:40 +00:00
Oli Scherer
9e7f3cdc36
Document MIRI_AUTO_OPS
2022-07-21 15:07:07 +00:00
Oli Scherer
bfa2ff646c
Use a MIRI namespaced env var name for auto ops
2022-07-21 15:04:02 +00:00
Oli Scherer
392342fcaf
Avoid rustformatting on autosave
2022-07-21 15:03:54 +00:00
bors
46d309f424
Auto merge of #2408 - RalfJung:deps, r=oli-obk
...
make test-cargo-miri only about cargo
Move the things that actually test dependency behavior into the regular test suite, now that we can do that. :)
2022-07-21 15:00:08 +00:00
Ralf Jung
5e4b646457
aarch inline asm is not stable yet
2022-07-21 10:52:52 -04:00
bors
ed76d20afd
Auto merge of #2409 - RalfJung:cargo-miri-rustc, r=RalfJung
...
cargo-miri: set RUSTC to us
Works around https://github.com/rust-lang/cargo/issues/10885 .
2022-07-21 14:37:10 +00:00
Ralf Jung
bb52965b73
make the find_miri returned path actually exist
2022-07-21 10:36:55 -04:00
Ralf Jung
0a9feb3c9f
some more debug output
2022-07-21 10:04:16 -04:00
Ralf Jung
929712c49c
reduce chance of RUSTC collisions
2022-07-21 09:36:59 -04:00
Ralf Jung
7cd1d78a47
only complain about runtime toolchain mismatch when there actually is a runtime toolchain
2022-07-21 09:30:09 -04:00
Ralf Jung
800273c1d9
cargo-miri: set RUSTC to us
2022-07-21 09:20:46 -04:00
Ralf Jung
b1b368c30e
test page_size via test dependency support
...
and move crate tests to their own folders
2022-07-21 09:04:35 -04:00
Ralf Jung
8fa1542878
make test-cargo-miri only about cargo
...
remove rand (large dependency) and page-size (testing the dependency, not cargo-miri).
keep only byteorder as a "demo" dependency, it is a leaf and builds quickly.
2022-07-21 08:44:34 -04:00
bors
0f973bdf2d
Auto merge of #2405 - RalfJung:pwd, r=RalfJung
...
fix auto-toolchain pwd
`rustup-toolchain` needs to be called in the right directory
2022-07-21 11:20:53 +00:00
Ralf Jung
7c30ba183c
fix auto-toolchain pwd
2022-07-21 07:19:56 -04:00
bors
3800933ff0
Auto merge of #2383 - rust-lang:dot_mode, r=oli-obk
...
Print one . character per test instead of one line
`./miri bless -- --quiet` now prints a dot per test, along with the regular Rust unit tests that listen to this flag
2022-07-21 07:40:32 +00:00
Oli Scherer
ecacc56843
Use names suggestive of channel endpoints
2022-07-21 07:39:54 +00:00
Oli Scherer
68041b42fc
Print one character per test instead of one line
2022-07-21 07:35:49 +00:00
Oli Scherer
30931eeecb
Add a dedicated thread for output printing
2022-07-21 07:35:49 +00:00
bors
084e02fd08
Auto merge of #2398 - sunshowers:nextest-compat, r=RalfJung
...
[cargo-miri] support nextest
Add the ability to run `cargo miri nextest list` and `cargo miri nextest run`.
[cargo-nextest](https://nexte.st ) is a new test runner for Rust maintained mostly by myself. It has several new features, but the most relevant to miri is the fact that it runs [each test in its own process](https://nexte.st/book/how-it-works.html#the-nextest-model ). This gives miri users better leak detection (https://github.com/rust-lang/miri/issues/1481 ) for free, for example.
See https://github.com/nextest-rs/nextest/issues/181 for discussion, including comments by `@eddyb` and `@RalfJung.`
Future work might be to have miri read [the list of tests](https://docs.rs/nextest-metadata/latest/nextest_metadata/struct.TestListSummary.html ) (or [test binaries](https://docs.rs/nextest-metadata/latest/nextest_metadata/struct.BinaryListSummary.html )) generated by `nextest list`. `@eddyb` thinks that might be useful.
I tested `cargo miri nextest run` against smallvec, and it worked great.
Note: Running tests out of archives is currently broken, as the comment in run-test.py explains.
2022-07-21 01:52:14 +00:00
Rain
88ad9ca906
[cargo-miri] support nextest
...
Add the ability to run the `list` and `run` nextest commands, which
enable per-test isolation.
2022-07-20 18:44:20 -07:00
bors
9ecdc9ea61
Auto merge of #2381 - rust-lang:infra, r=RalfJung
...
Add a scheme for always using the default toolchain, running clippy and fmt before running any other command
I keep forgetting to run rustup-toolchain on rebases across toolchain updates
I also keep forgetting to run rustfmt and clippy. The former isn't run by vscode if I don't explicitly save (I have autosave on).
2022-07-21 00:38:37 +00:00
Ralf Jung
4d4eeca8a8
fix miri script
2022-07-20 20:38:08 -04:00
Oli Scherer
517e1d78b8
Add a scheme for always using the default toolchain, running clippy and fmt before running any other command
2022-07-20 20:38:08 -04:00
bors
e8c4c9af9c
Auto merge of #2404 - RalfJung:mix, r=RalfJung
...
check for extern static size mismatches
Also handle get_alloc_extra the same throughout Stacked Borrows. I don't think this `unwrap` can actually cause an ICE since another part of SB will raise an error before, but still, seems strange to do this inconsistently in retagging vs expose_ptr.
2022-07-20 22:32:41 +00:00
Ralf Jung
9f99d10689
some stray tag → prov renames
2022-07-20 18:32:03 -04:00
Ralf Jung
e649a9acfb
check for extern static size mismatches
2022-07-20 18:32:03 -04:00
Ralf Jung
59f9a918ed
handle get_alloc_extra the same throughout Stacked Borrows
2022-07-20 17:57:31 -04:00
bors
167e5dcad3
Auto merge of #2403 - RalfJung:rustup, r=RalfJung
...
rustup
2022-07-20 20:11:10 +00:00
Ralf Jung
ff4666f39c
rustup
2022-07-20 16:02:06 -04:00
bors
7975391808
Auto merge of #2402 - RalfJung:cargo-target, r=RalfJung
...
cargo-miri: reorder --target to after the user-defined commands
This should help with https://github.com/rust-lang/miri/pull/2398 .
2022-07-20 19:47:48 +00:00
Ralf Jung
c81cfe240a
cargo-miri: reorder --target to after the user-defined commands
2022-07-20 15:47:09 -04:00
bors
1366bf6b07
Auto merge of #2373 - rust-lang:test_dependencies, r=RalfJung
...
Allow ui tests to have dependencies in a reliable way
This completely sidesteps the issue that compiletest-rs has where old artifacts of a dependency cause `multiple available crates of name XXX` errors. At this point I think we've reached feature parity for clippy, too, so I'm going to try publishing a version once this is merged.
2022-07-20 15:59:21 +00:00
Oli Scherer
ab6fb9d2aa
Allow tests to have dependencies
2022-07-20 15:54:35 +00:00
bors
d5e199f441
Auto merge of #2401 - RalfJung:dyn, r=RalfJung
...
fix test file name
Would be better to run this test when doing `./miri test dyn`.
2022-07-20 15:27:42 +00:00
Ralf Jung
e0514508b4
fix test file name
2022-07-20 11:27:04 -04:00
bors
0844e46049
Auto merge of #2391 - RalfJung:stderr, r=oli-obk
...
on an error, always print the unnormalized stderr
Currently we skip this if a stderr diff was printed, but the stderr diff is normalized, so e.g. one cannot learn line numbers from it.
Is there a way to get the diff to only print the parts the differ, like a usual `diff -u`? Currently it always seems to print the full output, so with a long stderr we now get doubly long test results even if the diff is actually rather small.
2022-07-20 12:39:21 +00:00
bors
90fbdadade
Auto merge of #2399 - RalfJung:subcommands, r=RalfJung
...
no need for an exhaustive enum of subcommands
2022-07-20 11:43:38 +00:00
Ralf Jung
e12a721d84
no need for an exhaustive enum of subcommands
2022-07-20 07:42:56 -04:00
bors
ebda1deb7b
Auto merge of #2397 - RalfJung:cleanup, r=RalfJung
...
only do env var cleanup if all threads have stopped
Hopefully fixes https://github.com/rust-lang/miri/issues/2396
2022-07-20 02:12:09 +00:00
Ralf Jung
5fbf036670
only do env var cleanup if all threads have stopped
2022-07-19 21:44:45 -04:00
bors
ddde70c121
Auto merge of #2394 - saethlin:unique-range-ice, r=RalfJung
...
Fix bugs where unique_range became invalid
And also expand the cache integrity checks to cover this case.
I'm going to run this over all the ICEs I've gotten out of Miri recently, could be a bit.
Fixes https://github.com/rust-lang/miri/issues/2389
2022-07-20 01:39:40 +00:00
Ben Kimock
4268918a50
Clarify implementation a bit
2022-07-19 20:53:48 -04:00
Ben Kimock
3e93045c87
Add a minimal reproducer of the ICE
...
Co-authored-by: Ralf Jung <post@ralfj.de>
2022-07-19 20:23:30 -04:00
Ben Kimock
db93abe823
Fix bugs where unique_range became invalid
...
And also expand the cache integrity checks to cover this case, and
generally assert a lot more about the unique_range, then tighten up
sloppy implementation scenarios that this uncovered.
2022-07-19 20:02:20 -04:00
bors
9e37c488f3
Auto merge of #2395 - RalfJung:upcast, r=RalfJung
...
add some dyn upcasting tests
Copied from the rustc test suite.
2022-07-19 23:40:30 +00:00
Ralf Jung
4d220c31a4
add some dyn upcasting tests
2022-07-19 19:40:01 -04:00
bors
a7e51ac99e
Auto merge of #2392 - RalfJung:rustup, r=RalfJung
...
rustup
2022-07-19 19:45:27 +00:00