bors
d935f62172
Auto merge of #1157 - divergentdave:shim-pthread-try-lock, r=RalfJung
...
Add shims for RwLock::try_read/RwLock::try_write
This implements proper locking so that we can check for reentrancy and implement the `try_*` methods.
Fixes https://github.com/rust-lang/miri/issues/781
2020-04-06 13:55:53 +00:00
David Cook
80497e5d3c
Clean up conditional compilation
2020-04-06 07:23:58 -05:00
Ralf Jung
ac3a24673c
wording
2020-04-06 09:37:15 +02:00
Ralf Jung
3554f54173
make just ./miri print help text without 'unknown command'
2020-04-06 09:34:27 +02:00
Ralf Jung
86c57a8490
mention ./miri build
2020-04-06 09:33:36 +02:00
David Cook
0f5f0e1520
Fix spelling typo
2020-04-05 20:55:39 -05:00
David Cook
bc54c7628d
Eagerly compute i32 and u32 layouts
2020-04-05 16:03:44 -05:00
David Cook
134d6a2faa
Add tests, improve test coverage
2020-04-05 14:55:57 -05:00
David Cook
f9dc942cfd
Changes to error handling
2020-04-05 13:53:03 -05:00
David Cook
d5d5a56926
Add tests
2020-04-05 13:25:49 -05:00
David Cook
e7944419d4
Use Deadlock machine stop uniformly
2020-04-05 12:44:23 -05:00
David Cook
100141f57c
Remove null checks, fall through to UB upon deref
2020-04-05 12:32:09 -05:00
bors
d25589f0bd
Auto merge of #1307 - RalfJung:vec-extend, r=RalfJung
...
also test push_str ptr stability (the original report)
2020-04-05 17:14:49 +00:00
Ralf Jung
177c0d3baa
also test push_str ptr stability (the original report)
2020-04-05 19:13:52 +02:00
David Cook
79f3307f30
Update comments, rearrange code
2020-04-05 12:09:31 -05:00
bors
350004fe75
Auto merge of #1253 - RalfJung:vec-extend, r=RalfJung
...
test Vec::extend
Currently fails, until https://github.com/rust-lang/rust/issues/70301 gets fixed.
2020-04-05 16:28:41 +00:00
Ralf Jung
3eb76f4a77
rustup
2020-04-05 18:28:05 +02:00
Ralf Jung
41abcdb422
for consistency also rename floats.rs
2020-04-05 18:26:51 +02:00
Ralf Jung
ab32084ddb
use mutable reference
2020-04-05 18:26:51 +02:00
Ralf Jung
9159b1eef8
test some more vec ptr invalidation
2020-04-05 18:26:51 +02:00
Ralf Jung
b8444deb64
test Vec::extend
2020-04-05 18:26:51 +02:00
bors
ae2a811eee
Auto merge of #1305 - ssomers:map_first_last_vs_miri, r=RalfJung
...
Replace last_entry with last_key_value
Wondering why `last_entry` was introduced (in #1156 ) while the alternative is shorter and seems clearer to me.
Also, as the perpetrator of map_first_last, I now think that `first_entry`/`last_entry` are silly methods because they're supposed to be constant time (as opposed to `entry`), so there's no money to be made by doing multiple things with the entry.
2020-04-05 15:47:28 +00:00
David Cook
ac8c98da8e
Store layouts of i32 and u32 inside Evaluator
2020-04-05 10:37:57 -05:00
David Cook
8293d80b53
Set explicit return value size for windows shim
2020-04-05 10:36:14 -05:00
David Cook
e1a1592991
Set some explicit return value sizes
2020-04-05 10:35:08 -05:00
David Cook
37ddde9f70
Implement TryEnterCriticalSection
2020-04-05 10:33:32 -05:00
David Cook
bb06a0cf0e
Restrict mutex static initializer test to Linux
...
On macOS, libc does not have a static initializer for recursive mutexes
2020-04-05 10:33:09 -05:00
David Cook
7f6df15aa2
Rearrange functions
2020-04-05 10:32:06 -05:00
David Cook
c7466c9531
Add TerminationInfo::Deadlock, use in mutex shim
2020-04-05 10:32:01 -05:00
David Cook
de29546414
Add and rearrange mutex tests
2020-04-05 10:27:39 -05:00
David Cook
735fc12e1a
Handle variation in layout of pthread_mutex_t
2020-04-05 10:27:31 -05:00
David Cook
e5e3256b59
Address review comments
2020-04-05 10:10:35 -05:00
David Cook
ba3884dae6
Use checked addition/subtraction on lock counts
2020-04-05 10:08:39 -05:00
David Cook
141319a412
Refactor sync shims with setters and getters
2020-04-05 10:07:39 -05:00
David Cook
fd94255b9d
Add comments explaining asserts
2020-04-05 10:06:37 -05:00
David Cook
d11315ebfb
Fix misleading function names
2020-04-05 10:05:34 -05:00
David Cook
5cc091bc6e
Add test of recursive mutex using libc FFI
2020-04-05 10:05:14 -05:00
David Cook
c773ca8614
Style fixes
2020-04-05 10:04:53 -05:00
David Cook
dca83d73cb
Add test that exercises ReentrantMutex
2020-04-05 10:04:33 -05:00
David Cook
765050f302
Revise mutex/rwlock memory layout for macOS compat
2020-04-05 10:03:29 -05:00
David Cook
dd9896b0f8
Implement mutex and rwlock functions
2020-04-05 10:03:22 -05:00
David Cook
c2683dad34
Clean up test case
2020-04-05 09:25:21 -05:00
David Cook
88f319fb4c
Add failing tests for mutex and rwlock
2020-04-05 09:25:21 -05:00
David Cook
46679bc9ef
Add shims for RwLock::try_read/RwLock::try_write
2020-04-05 09:25:21 -05:00
Stein Somers
e7fafa1904
Replace last_entry with last_key_value
2020-04-05 15:21:15 +02:00
Ralf Jung
95ea03c124
add empty line before backtrace, to separate it from help text
2020-04-05 10:20:12 +02:00
Ralf Jung
0eccf1d9aa
update Windows leak comment
2020-04-05 09:42:39 +02:00
bors
b1f053764f
Auto merge of #1303 - RalfJung:readme, r=RalfJung
...
tweak README
Cc @Firstyear
I realized the README has an example of unsupported code, so I changed the error to match that example.
2020-04-05 06:35:55 +00:00
Ralf Jung
73210be73b
tweak README
2020-04-04 19:35:46 +02:00
bors
5e7180bf46
Auto merge of #1293 - Firstyear:1289-miri-readme, r=RalfJung
...
Update readme to make supported code clearer
Fixes https://github.com/rust-lang/miri/issues/1289
This makes it clearer in the readme how miri will warn of supported or unsupported code in a program under test/run.
Thanks!
2020-04-04 16:27:16 +00:00