Aaron Hill
8650f02bc9
Add trailing comma
2019-08-04 16:12:24 -04:00
Aaron Hill
6b087d2536
Add test
2019-08-04 16:12:24 -04:00
Aaron Hill
56a9a283e7
Cleanup formatting
2019-08-04 16:12:24 -04:00
Aaron Hill
a2bdb3bb94
Shim 'libc::getrandom' in addition to 'libc::syscall(libc::SYS_getrandom)'
2019-08-04 16:12:23 -04:00
bors
bc82f83298
Auto merge of #884 - Aaron1011:fix/linux-getrandom, r=RalfJung
...
Allowing passing a null pointer to getrandom() when length is 0
The Linux kernel will handle a null pointer passed to 'getrandom'
without error, as long as the length is also 0. The `getrandom` crate
relies on this behavior: ab44edf3c7/src/linux_android.rs (L26)
Since it works fine on the actual kernel (and should continue to, due to
the kernel's backwards-compatibility guarantees), Miri should support it
as well.
2019-08-04 19:50:41 +00:00
Aaron Hill
4d3398fc62
Replace match with expect()
2019-08-04 15:49:14 -04:00
bors
8053288bd0
Auto merge of #887 - RalfJung:readme, r=RalfJung
...
README: add getrandom bug
2019-08-04 17:37:00 +00:00
Aaron Hill
c2f681f005
Add semicolon
...
Co-Authored-By: Ralf Jung <post@ralfj.de>
2019-08-04 10:13:29 -04:00
Aaron Hill
0505868d18
Do nothing when we try to generate random data of length 0
...
This preserves compatibility with programs that pass a null pointer and
a length of zero to getrandom(), or their platform's equivalent.
2019-08-04 09:21:17 -04:00
Ralf Jung
e8d956c4fa
add getrandom bug
2019-08-04 15:09:13 +02:00
bors
d82b24422d
Auto merge of #883 - RalfJung:gen_random, r=RalfJung
...
gen_random helper: move ptr argument to front
This matches, for example, the `getrandom` syscall.
2019-08-04 12:57:16 +00:00
Ralf Jung
0096a0df2a
gen_random helper: move ptr argument to front
2019-08-04 14:49:10 +02:00
bors
ed30152b52
Auto merge of #876 - RalfJung:atomic, r=RalfJung
...
check that atomics are sufficiently aligned
Fixes https://github.com/rust-lang/miri/issues/475
2019-08-04 08:55:18 +00:00
Ralf Jung
a4cc58efc6
one more place -> ptr rename
2019-08-04 10:54:07 +02:00
Ralf Jung
19add0bb75
places and pointers are not the same thing; this is a place
2019-08-04 10:52:09 +02:00
Ralf Jung
f47e58950b
check that atomics are sufficiently aligned, and add test
2019-08-04 10:30:42 +02:00
Ralf Jung
702f63e427
test AtomicU64
2019-08-04 10:30:42 +02:00
Ralf Jung
ca4969d4da
consolidate atomic tests
2019-08-04 10:30:42 +02:00
bors
843691d612
Auto merge of #882 - RalfJung:miri-rustc, r=RalfJung
...
install xargo from git temporarily
This is so that once https://github.com/japaric/xargo/pull/246 landed, we can see if that helps with https://github.com/rust-lang/rust/pull/63162 .
2019-08-04 08:26:51 +00:00
Ralf Jung
162c0ffb1f
use postfix negation instead of prefix
2019-08-04 10:14:51 +02:00
Ralf Jung
874437d717
install xargo from git temporarily
2019-08-04 10:11:45 +02:00
bors
d9d6df93a9
Auto merge of #881 - RalfJung:rustup, r=RalfJung
...
adjust for rustc changes
2019-08-03 18:56:38 +00:00
Ralf Jung
a41ec9aacb
adjust error messages in tests
2019-08-03 20:54:57 +02:00
Ralf Jung
8d99e42f47
test memalign contract (rustc is fixed)
2019-08-03 20:53:42 +02:00
Ralf Jung
f65e7cd2d1
adjust for rustc changes
2019-08-03 20:31:33 +02:00
bors
d0e8850267
Auto merge of #877 - christianpoveda:ldexp-shim, r=RalfJung
...
Add shim for ldexp
Fixes https://github.com/rust-lang/miri/issues/821
r? @RalfJung
2019-08-03 16:14:20 +00:00
Christian Poveda
c4cea035e6
Formatting
2019-08-03 10:51:23 -05:00
bors
a71ebf9066
Auto merge of #880 - RalfJung:miri-rustc, r=RalfJung
...
annotate some unwraps with better messages
2019-08-03 15:22:09 +00:00
Ralf Jung
10f46336af
set RUSTC_DEBUG_ASSERTIONS for when we are in bootstrap
2019-08-03 17:21:30 +02:00
Ralf Jung
ab22da8ce8
annotate some unwraps with better messages
2019-08-03 16:59:30 +02:00
bors
9d3fdeeed7
Auto merge of #856 - RalfJung:type_dispatch_first, r=RalfJung
...
Adjust for ptr_op changes
This is the Miri side of https://github.com/rust-lang/rust/pull/62946 .
2019-08-03 13:15:51 +00:00
Ralf Jung
5efacf636b
bump Rust
2019-08-03 15:15:28 +02:00
Ralf Jung
61d8a4e101
simplify code
2019-08-03 15:01:04 +02:00
Ralf Jung
773f6aeb4c
remove some compile-fail tests that now work
2019-08-03 15:01:04 +02:00
Ralf Jung
82da68c5ca
implement all ptr comparisons through integer casts
2019-08-03 15:01:04 +02:00
Ralf Jung
bb6a91dc94
adjust for ptr_op now being called type-based
2019-08-03 14:38:36 +02:00
bors
247786dba6
Auto merge of #879 - RalfJung:rustc-tests, r=RalfJung
...
also let bootstrap tell us where to find xargo
2019-08-03 11:55:08 +00:00
Ralf Jung
e71ca965b9
also let bootstrap tell us where to find xargo
2019-08-03 13:53:32 +02:00
bors
f463621a90
Auto merge of #878 - RalfJung:rustup, r=RalfJung
...
Rustup for error changes
2019-08-03 08:36:58 +00:00
Ralf Jung
312b546026
bump Rust
2019-08-03 10:26:15 +02:00
Ralf Jung
8071034b93
fix for error refactoring
2019-08-03 10:25:55 +02:00
Christian Poveda
ff2001040f
Add shim for ldexp
2019-08-02 15:46:28 -05:00
bors
079b53e70e
Auto merge of #875 - RalfJung:miri-rustc, r=RalfJung
...
honor CARGO env var (for rustc bootstrap)
2019-08-02 16:04:16 +00:00
Ralf Jung
0dab3d5ee1
honor CARGO env var (for rustc bootstrap)
2019-08-02 18:02:54 +02:00
bors
2f5ef735cf
Auto merge of #874 - RalfJung:zst, r=RalfJung
...
test dangling ZST deref
Fixes https://github.com/rust-lang/miri/issues/582 .
2019-08-02 12:27:55 +00:00
Ralf Jung
2973063fa3
test dangling ZST deref
2019-08-02 14:26:15 +02:00
bors
f0e871785f
Auto merge of #870 - RalfJung:miri-rustc, r=oli-obk
...
Prepare Miri for rustc bootstrap building a separate libstd for it
2019-08-02 08:08:35 +00:00
bors
e00fa966ac
Auto merge of #872 - RalfJung:retag-shallow, r=oli-obk
...
Make Retag shallow
A shallow retag does not traverse into fields of compound typed to search for references to retag. It only retags "top-level"/"bare" references (and boxes).
This helps with https://github.com/rust-lang/unsafe-code-guidelines/issues/125 because it also means that we do not add protectors for references passed in fields of a struct (or other compound types). Until we know what the rules should be for protectors, I prefer to be less aggressive about what we are rejecting.
This also matches our work-in-progress Coq formalization.
2019-08-02 07:40:02 +00:00
Ralf Jung
30fb027f33
comment
2019-08-02 08:38:22 +02:00
Ralf Jung
3318657eaf
test Ref/RefMut protector interactions
2019-08-02 08:15:52 +02:00