bors
c28a8eeb74
Auto merge of #1532 - divergentdave:thread-panic-payload, r=RalfJung
...
Move panic payload state from Machine to Thread
This PR moves the panic payload storage from the `Machine` state to per-thread state. Prior to this change, if one thread panicked while another was still unwinding, Miri would fail with `thread 'rustc' panicked at 'the panic runtime should avoid double-panics', src/shims/panic.rs:51:9`. I ran into this issue while prototyping a round-robin scheduler, but it's also reachable with the current scheduler and contrived programs that use blocking API calls to cause thread switching during unwinding. I wrote a test case along those lines for this change.
2020-09-03 10:09:34 +00:00
David Cook
a6746ad893
Add comment
2020-09-02 20:58:41 -05:00
David Cook
7a2c6812b9
Per-thread errno storage
2020-09-02 20:57:20 -05:00
bors
0a4ecfc225
Auto merge of #1533 - RalfJung:rustup, r=RalfJung
...
rustup, fix test
Cc https://github.com/rust-lang/rust/issues/76190
2020-09-01 08:58:35 +00:00
Ralf Jung
3466462306
rustup, fix test
2020-09-01 10:55:09 +02:00
David Cook
da2f268443
Review comments
2020-08-31 19:32:14 -05:00
David Cook
3ba7f46058
Move panic payload state from Machine to Thread
2020-08-29 21:38:37 -05:00
bors
9123f0e01e
Auto merge of #1531 - divergentdave:cargo-miri-targets-test, r=RalfJung
...
Test cargo miri target selection
This is a followup to #1525 , adding a few test invocations with targets specified in the cargo arguments.
2020-08-29 11:22:05 +00:00
David Cook
5d9d75fc1f
Test cargo miri target selection
2020-08-28 23:12:11 -05:00
bors
c2a2e25d0b
Auto merge of #1525 - divergentdave:cargo-miri-targets, r=RalfJung
...
Support --test/--bin/--lib in cargo-miri
This PR addresses a FIXME in cargo-miri, and filters the targets to be checked when any of the `--bin`, '--test`, or `--lib` flags are passed.
2020-08-28 07:05:12 +00:00
David Cook
64e2d3e2d0
Review comments
2020-08-27 05:00:56 -05:00
bors
13ea74549f
Auto merge of #1530 - RalfJung:rustup, r=RalfJung
...
rustup
Another day, another `AllocRef` API change.
2020-08-27 07:28:38 +00:00
Ralf Jung
39e6baeb91
rustup
2020-08-27 09:27:58 +02:00
bors
2be4052ab0
Auto merge of #1528 - RalfJung:readme, r=RalfJung
...
add encoding_rs OOB arithmetic to trophy case
2020-08-27 06:37:55 +00:00
Ralf Jung
4608341ca0
add encoding_rs OOB arithmetic
2020-08-27 08:37:11 +02:00
David Cook
40847abd5f
Review comments
2020-08-26 18:41:01 -05:00
David Cook
3bc8302a54
Support --test/--bin/--lib in cargo-miri
2020-08-25 19:00:46 -05:00
bors
9f3e7cf2c2
Auto merge of #1524 - RalfJung:rustup, r=RalfJung
...
rustup; account for ptr_offset_from stabilization
@bors r+
2020-08-24 08:07:41 +00:00
Ralf Jung
2f9de18f88
rustup; account for ptr_offset_from stabilization
2020-08-24 10:06:44 +02:00
bors
222093e815
Auto merge of #1523 - RalfJung:test-matrix, r=RalfJung
...
tweak test matrix
* test big-endian architecture
* test less on macOS host (it is slow)
2020-08-22 16:09:48 +00:00
Ralf Jung
df9b2127ce
fix a test for big-endian targets
2020-08-22 18:07:43 +02:00
Ralf Jung
8da9d23e5e
tweak test matrix: test big-endian, and test less on macOS host (it is slow)
2020-08-22 18:03:34 +02:00
bors
6b96b17470
Auto merge of #1522 - RalfJung:readme, r=RalfJung
...
emphasize that some flags are unsound to use
2020-08-22 12:32:35 +00:00
Ralf Jung
3b7f36ef8d
emphasize that some flags are unsound to use
2020-08-22 14:31:46 +02:00
bors
e739b81669
Auto merge of #1521 - workingjubilee:bump-cargo-metadata, r=RalfJung
...
Bump cargo_metadata to 0.11
2020-08-21 16:58:33 +00:00
Jubilee Young
2619b4fa18
Bump cargo_metadata to 0.11
2020-08-21 01:37:56 -07:00
bors
eb08007fe8
Auto merge of #1518 - workingjubilee:remove-byteorder, r=RalfJung
...
Remove byteorder dependency
miri hasn't actually depended on byteorder directly for a while.
Let's remove this dependency so Rust also depends less on it.
2020-08-21 07:03:14 +00:00
Jubilee Young
f3747b635e
Update lockfile
2020-08-20 16:48:35 -07:00
bors
9570008c0b
Auto merge of #1520 - RalfJung:rustup, r=RalfJung
...
avoid promotion in alignment test to get different alignment on each try
2020-08-20 08:14:34 +00:00
Ralf Jung
237bea2c17
avoid promotion in alignment test to get different alignment on each try
2020-08-20 10:14:13 +02:00
Jubilee Young
20942fb3a7
Remove byteorder dependency
...
miri hasn't actually depended on byteorder directly for a while.
Let's remove this dependency so Rust also depends less on it.
2020-08-19 22:19:32 -07:00
bors
2d6d73fafe
Auto merge of #1517 - RalfJung:align-test, r=RalfJung
...
forgot to add alignment test loop in one test
As expected, checking the physical integer address made alignment tests fragile, and I forgot to add the retry loop for this one.
2020-08-18 08:21:15 +00:00
Ralf Jung
d5b15297ac
forgot to add alignment test loop in one test
2020-08-18 10:19:29 +02:00
bors
066fa629f2
Auto merge of #1513 - RalfJung:int-align, r=RalfJung
...
add option to use force_int for alignment check
Fixes https://github.com/rust-lang/miri/issues/1074 . Depends on https://github.com/rust-lang/rust/pull/75592 .
2020-08-17 16:23:07 +00:00
Ralf Jung
5b1bc4ba94
make another test more robust against random alignment
2020-08-17 18:22:46 +02:00
Ralf Jung
db159b8709
rustup
2020-08-17 16:51:48 +02:00
Ralf Jung
f691e573b2
tweak alignment check docs
2020-08-17 11:51:18 +02:00
Ralf Jung
0913653e06
make sure we test panic of interpreter-impelemted align_offset
2020-08-16 18:31:48 +02:00
Ralf Jung
d4e5943259
use real align_offset unless we symbolic alignment check is enabled
2020-08-16 18:26:04 +02:00
Ralf Jung
664706662f
adjust diagnostics to alignment check mode
2020-08-16 17:16:53 +02:00
Ralf Jung
5a579f281d
document -Zmiri-symbolic-alignment-check
2020-08-16 17:12:32 +02:00
Ralf Jung
cb985670c1
make alignment check integer-based by default, and add an option to make it symbolic
2020-08-16 17:08:38 +02:00
bors
ca9e988bdb
Auto merge of #1510 - RalfJung:stderr, r=RalfJung
...
fix Stderr::as_file_handle error message
2020-08-13 12:27:24 +00:00
Ralf Jung
df311293e2
fix Stderr::as_file_handle error message
2020-08-13 14:27:03 +02:00
bors
99a57a3f9e
Auto merge of #1509 - samrat:fd-trait-fixes, r=RalfJung
...
Remove lifetime from FileDescriptor trait
Also:
- Type annotate `handles` declaration, instead of annotating every insert.
- Add note about flush being unnecessary when writing to stderr
Addresses comments in #1495 and #1497
2020-08-13 11:57:46 +00:00
Samrat Man Singh
0c25064117
Remove unnecessary whitespace
...
Co-authored-by: Ralf Jung <post@ralfj.de>
2020-08-13 16:18:08 +05:30
Samrat Man Singh
46852d736e
Remove lifetime from FileDescriptor trait
...
Also:
- Remove type annotate `handles` declaration instead of every insert.
- Add note about flush being unnecessary when writing to stderr
2020-08-13 15:01:52 +05:30
bors
1bfb26d6ca
Auto merge of #1504 - RalfJung:ill-formed-const, r=RalfJung
...
add test for unused ill-formed constant
Once https://github.com/rust-lang/rust/pull/75339 lands, this test should pass.
Fixes https://github.com/rust-lang/miri/issues/1382 .
2020-08-13 06:44:00 +00:00
Ralf Jung
925d60760e
rustup
2020-08-13 08:43:28 +02:00
Ralf Jung
80929e17ae
add test for unused ill-formed constant
...
also use better span in TopFrameInfo
2020-08-13 08:33:36 +02:00