Commit Graph

1992 Commits

Author SHA1 Message Date
Christian Poveda
abcda6dc94 Small corrections
Co-Authored-By: Ralf Jung <post@ralfj.de>
2019-08-29 03:08:58 -05:00
Christian Poveda
c1cec3b247 Exclude env vars using flag 2019-08-28 17:57:41 -05:00
Christian Poveda
1ae1d71938 Add -Zmiri-env-exclude flag 2019-08-28 17:57:35 -05:00
Ralf Jung
f3ff10005a small optimization 2019-08-28 18:45:10 +02:00
Ralf Jung
79dd70fd9b Stacked Borrows: don't read from memory during retagging 2019-08-28 18:41:30 +02:00
bors
283928ad55 Auto merge of #925 - christianpoveda:environ-shim, r=RalfJung
Write name and value for each env var

In order to res0lve https://github.com/rust-lang/miri/issues/756 is necessary to have the whole `"NAME=VALUE"` sequence of bytes written into memory instead of just the value.

This change does not affect the interface of the `shim::envs::EnvVars` type in any way.

r? @RalfJung @oli-obk
2019-08-27 15:59:32 +00:00
Christian Poveda
7d93cc7b5e Add docs 2019-08-27 08:45:37 -05:00
bors
2be0db4c0b Auto merge of #917 - RalfJung:isolation, r=oli-obk
change flag name: enable-communication -> disable-isolation

r? @oli-obk  -- I think this is a better name for the flag but it is still somewhat clumsy. Suggestions?
2019-08-27 10:02:07 +00:00
Ralf Jung
3a68d943ba rustup 2019-08-27 08:32:31 +02:00
Christian Poveda
ace3416cf2 Write name and value for each env var 2019-08-26 18:08:26 -05:00
Ralf Jung
c6c9276d61 bump Rust and xargo 2019-08-26 19:44:27 +02:00
Ralf Jung
97f9fb1284 change flag name: enable-communication -> disable-isolation 2019-08-23 23:29:11 +02:00
bors
631d5facba Auto merge of #914 - christianpoveda:use-host-rng, r=RalfJung
Use host's rng when communication is enabled

This uses the host's randomness when the communication enabled flag is used. I am not sure about the error handling. I was thinking about fallbacking to `rand` if `getrandom` fails and also print something so the user knows miri is not using the host's rng because it failed. Let me know what you think.

Related issue: https://github.com/rust-lang/miri/issues/800.

r? @RalfJung @oli-obk
2019-08-23 09:52:54 +00:00
Christian Poveda
f53b5b0fb4 Update -Zmiri-enable-communication docs 2019-08-20 12:22:49 -05:00
Christian Poveda
98129631b5 Use err_unsup_format instead 2019-08-20 12:20:50 -05:00
Christian Poveda
b44fd97af6 Use host's rng when communication is enabled 2019-08-19 10:43:09 -05:00
Ralf Jung
4f1c9bb607 adjust for typed binary/unary_op 2019-08-18 07:42:15 +02:00
bors
4f6f264c30 Auto merge of #909 - RalfJung:deny-warn, r=oli-obk
deny warnings on CI
2019-08-15 09:37:38 +00:00
Ralf Jung
f9241be734 fix warning 2019-08-15 11:24:04 +02:00
bors
c71b240f85 Auto merge of #863 - RalfJung:deref-checks, r=RalfJung
adjust tests for eager pointer checks on deref

The Miri side of https://github.com/rust-lang/rust/pull/63075.

Fixes https://github.com/rust-lang/miri/issues/447.
2019-08-15 09:11:08 +00:00
Ralf Jung
a801b0ba3f adjust for fn rename 2019-08-15 11:01:03 +02:00
Christian Poveda
aee8f173ec Delegate writing to emulate_foreign_item 2019-08-14 16:50:36 -05:00
Christian Poveda
41f8cfa30e Move env shims to its own module 2019-08-14 16:30:55 -05:00
bors
1f504ea7be Auto merge of #894 - christianpoveda:env-vars-communication, r=RalfJung
Enable env communication

related issue: https://github.com/rust-lang/miri/issues/800. r? @RalfJung
2019-08-14 18:58:06 +00:00
Christian Poveda
451a09a685 Remove tcx parameter for EnvVars::alloc_env_value 2019-08-14 13:54:57 -05:00
Christian Poveda
46f902b67d Rename export for shims::env::EnvVars 2019-08-14 11:31:29 -05:00
Christian Poveda
afc6713e41 Reorganize shims::env::EnvVars 2019-08-13 16:17:41 -05:00
Christian Poveda
67d13577aa Move test env var to test_runner 2019-08-13 12:10:24 -05:00
Christian Poveda
666cd22fa6 Wrap hashmap for env vars in its own type 2019-08-13 11:34:43 -05:00
bors
47b227e24a Auto merge of #906 - RalfJung:tls, r=RalfJung
make TLS state private to TLS module
2019-08-13 11:32:25 +00:00
Ralf Jung
95fb11d51f make TLS state private to TLS module 2019-08-13 09:29:01 +02:00
Ralf Jung
7a9733929b it's called RUSTC_CTFE_BACKTRACE now 2019-08-12 08:26:11 +02:00
Ralf Jung
04892d9155 typo 2019-08-10 11:33:33 +02:00
Ralf Jung
0743ed631e clamp ldexp exponent to i16 2019-08-10 11:27:27 +02:00
Ralf Jung
3ae01a64bc also support scalbn itself 2019-08-10 11:22:32 +02:00
Ralf Jung
5e3035b6cb use apfloat for ldexp 2019-08-09 19:54:01 +02:00
Christian Poveda
e1d1cd191f Use ldexp from cmath instead 2019-08-08 15:45:58 -05:00
Ralf Jung
19367fd8de bump xargo version 2019-08-08 19:34:23 +02:00
Christian Poveda
253af9692a Fix formatting 2019-08-07 10:50:46 -05:00
bors
b12ebfc3de Auto merge of #895 - RalfJung:uninit, r=oli-obk
Revert "uninit intrinsic is gone"

This reverts commit fa290f1a48.
Uninit is [being reinstated](https://github.com/rust-lang/rust/pull/63343) because it breaks some broken code.
2019-08-07 12:42:19 +00:00
Ralf Jung
455531c564 Revert "uninit intrinsic is gone"
This reverts commit fa290f1a48.
Uninit is being reinstated because it breaks some broken code.
2019-08-07 10:49:36 +02:00
Christian Poveda
b731a6a15f Add support for env communication 2019-08-06 17:40:07 -05:00
Christian Poveda
068c448832 Add communicate field to evaluator and fix formatting 2019-08-06 15:44:44 -05:00
Christian Poveda
655f9af7fe Add flag to enable communication 2019-08-06 15:18:22 -05:00
Ralf Jung
3fe4eec37a mention that we get the toolchain right 2019-08-06 20:52:09 +02:00
Ralf Jung
cc8d995605 go back to released xargo (the experiment is done) 2019-08-06 08:05:32 +02:00
Ralf Jung
b0cb603e3a rustup 2019-08-05 15:49:19 +02:00
Ralf Jung
d26917a9d6 fix for latest rustc 2019-08-05 10:45:48 +02:00
bors
93e110f370 Auto merge of #886 - Aaron1011:shim/getrandom, r=RalfJung
Shim 'libc::getrandom' in addition to 'libc::syscall(libc::SYS_getrandom)'
2019-08-04 21:02:08 +00:00
Aaron Hill
f830a6c69e
Apply more formatting fixes
Co-Authored-By: Ralf Jung <post@ralfj.de>
2019-08-04 16:57:17 -04:00
Aaron Hill
8650f02bc9
Add trailing comma 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
96adbf65bc Auto merge of #885 - Aaron1011:fix/f-round, r=RalfJung
Add misssing 'roundf32' and 'roundf64' intrinsics
2019-08-04 20:12:02 +00:00
Aaron Hill
4d3398fc62
Replace match with expect() 2019-08-04 15:49:14 -04:00
Aaron Hill
3118b9fe42
Add misssing 'roundf32' and 'roundf64' intrinsics 2019-08-04 10:25:29 -04: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
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
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
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
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
Ralf Jung
61d8a4e101 simplify code 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
Ralf Jung
e71ca965b9 also let bootstrap tell us where to find xargo 2019-08-03 13:53:32 +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
Ralf Jung
0dab3d5ee1 honor CARGO env var (for rustc bootstrap) 2019-08-02 18:02:54 +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
Ralf Jung
30fb027f33 comment 2019-08-02 08:38:22 +02:00
Ralf Jung
c4c2716f4e make reborrow shallow, and fix tests for that 2019-08-02 08:09:22 +02:00
Ralf Jung
56630e0ff0 bootstrap no longer carries a copy of these flags 2019-07-31 15:15:31 +02:00
Ralf Jung
d213c64d85 let the user skip the sysroot consistency check 2019-07-31 15:15:14 +02:00
Ralf Jung
faadb86159 bump Rust 2019-07-26 22:50:01 +02:00
Lzu Tao
e6a677fe63 build: Warn if not use 2018 idioms 2019-07-24 21:24:26 +07:00
bors
aadff8560b Auto merge of #852 - lzutao:rustup, r=RalfJung
build: Fix build after rust-lang/rust#60951
2019-07-24 13:05:55 +00:00
Lzu Tao
fd71fbea0f build: Fix build after rust-lang/rust#60951 2019-07-24 07:45:34 +07:00
Ralf Jung
724cf41eb1 use checked arithmetic in intrptrcast 2019-07-23 23:43:37 +02:00
Ralf Jung
068517ae66 make sure we always have an RNG 2019-07-23 21:38:53 +02:00
Ralf Jung
a2541aacd6 bump rust 2019-07-21 11:56:10 +02:00
Ralf Jung
11d71195dd fix miri-rustc-tests 2019-07-19 18:03:55 +02:00
Ralf Jung
66ca0f2cc2 fix for rustc_driver change 2019-07-19 17:36:25 +02:00
Ralf Jung
a11d1f55ff avoid unnecessary allocation 2019-07-13 15:18:15 +02:00
Joshua Nelson
ebf65cbdab Give a useful error message if user gives invalid random seed 2019-07-13 08:28:33 -04:00
Ralf Jung
f8c6eb5e8c thread creation error for Windows 2019-07-11 18:59:11 +02:00
Ralf Jung
e7b39e382a reenable all tests on Windows 2019-07-11 18:41:53 +02:00
Ralf Jung
11686f4be2 we do this these days 2019-07-10 14:38:49 +02:00
Ralf Jung
70a5bb7dbb force pointers before reborrowing; fixes cargo miri test suite 2019-07-10 14:36:56 +02:00
Ralf Jung
f79f31dfa1 adjust for rustc changes; normalize mplace before doing freeze-sensitive visit 2019-07-10 14:36:56 +02:00
Lzu Tao
3ea62d3527 Remove SliceConcatExt import 2019-07-10 09:56:35 +07:00
bors
e4a98ea8d8 Auto merge of #826 - RalfJung:uninit, r=RalfJung
uninit intrinsic is gone

Finally. :D

However, to land this we'll need to fix the intptrcast issues that block https://github.com/rust-lang/miri/pull/803.
2019-07-06 09:40:51 +00:00
Ralf Jung
47bfc62b5b use Memory::read_c_str, avoid a few to_ptr 2019-07-06 11:01:07 +02:00
Ralf Jung
9e130c6c6f fix for changd machine trait signatures 2019-07-06 10:07:22 +02:00
Ralf Jung
4fa243be78 adjust for get_fn signature change 2019-07-06 10:07:22 +02:00
Ralf Jung
3ca934f07d gen_random: use check_ptr_access 2019-07-06 10:07:22 +02:00
Ralf Jung
8093a59ffb move gen_random to helpers 2019-07-06 10:07:21 +02:00
Ralf Jung
4f6a56f54f better error message when the program tries to spawn a thread 2019-07-06 10:07:21 +02:00
Ralf Jung
2ca1b94e6d update to FnVal changes; implement basic Dlsym support and use it for getentropy 2019-07-06 10:07:21 +02:00
Ralf Jung
fa290f1a48 uninit intrinsic is gone 2019-07-06 10:06:45 +02:00
Ralf Jung
5e022773f3 fix unused variable warning 2019-07-06 09:32:35 +02:00
Ralf Jung
b324cbf282 Merge remote-tracking branch 'origin/master' into rustup 2019-07-06 09:29:17 +02:00
Ralf Jung
1729965808 rename InterpretCx -> InterpCx 2019-07-05 23:48:51 +02:00
Ralf Jung
f23b782101 align small malloc-allocations even less, and test that we do 2019-07-05 23:48:48 +02:00
Ralf Jung
89696a4ab9 Merge remote-tracking branch 'origin/master' 2019-07-05 22:46:11 +02:00
Ralf Jung
4d76dd1f09 temporarily disable validation on Windows 2019-07-05 21:26:58 +02:00
Ralf Jung
aad5fde703 fix deallocating/reallocating with integer pointers 2019-07-05 19:21:21 +02:00
Ralf Jung
698b311a59 fix NULL in TLS dtors 2019-07-05 10:08:57 +02:00
Ralf Jung
07d5e9917c avoid Scalar::is_null_ptr, it is going away 2019-07-05 09:56:42 +02:00
bors
3525943794 Auto merge of #822 - RalfJung:tls, r=RalfJung
move tls.rs into shims module
2019-07-04 08:51:19 +00:00
Ralf Jung
93c62a4912 move tls.rs into shims module 2019-07-03 23:12:44 +02:00
Ralf Jung
b29cb7d551 avoid catching errors 2019-07-03 10:56:25 +02:00
Ralf Jung
eb4128fb42 don't call Stacked Borrows hooks at all when validation is disabled 2019-07-03 10:47:28 +02:00
Ralf Jung
c8450bda4f support integers that can be cast to pointers in in-bounds offset operation 2019-07-03 10:47:28 +02:00
Ralf Jung
c3da843ca0 we don't need zero-sized freeze-sensitive visiting 2019-07-03 10:47:28 +02:00
Ralf Jung
12b8d4366c avoid integer overflow in ptr-to-int cast 2019-07-03 10:47:28 +02:00
Ralf Jung
c6e4f760a2 allow dangling ptr-to-int casts; use force_bits for ptr comparison 2019-07-03 10:47:28 +02:00
Ralf Jung
457c823765 only treat integer operations as such 2019-07-03 10:47:28 +02:00
bors
93f5892962 Auto merge of #815 - RalfJung:memory-audit, r=RalfJung
don't call Memory::get without checking the pointer first

Also avoid Memory::get if we just need to know align/size.

I audited all uses of `alloc_id`; the rest should be fine (and we can kill a bunch of them once https://github.com/rust-lang/rust/pull/62257 lands).
2019-07-01 20:59:17 +00:00
Ralf Jung
e82693fa23 Merge branch 'master' into rustup 2019-07-01 13:01:28 +02:00
Ralf Jung
7b702b9258 move find_fn (which is not specific to foreign items) out of foreign_items 2019-07-01 00:28:31 +02:00
Ralf Jung
4135441137 don't call Memory::get without checking the pointer first; avoid Memory::get if we just need to know align/size 2019-07-01 00:24:56 +02:00
Ralf Jung
cb6d4f0c9a test even more size-alignment combinations. found a bug in libstd! 2019-06-30 21:23:48 +02:00
Ralf Jung
709b474859 fix minimal alignment for system allocation functions 2019-06-30 21:10:47 +02:00
Ralf Jung
e960270662 add some tracing to intptrcast 2019-06-30 21:10:47 +02:00
Ralf Jung
b8879f3d8c move shims (foreign items and intrinsics) into submodule 2019-06-30 15:35:28 +02:00
Ralf Jung
11457a4ad9 fix comparing function pointers with intptrcast 2019-06-30 11:21:31 +02:00
bors
1ec279f290 Auto merge of #801 - RalfJung:num_cpus, r=RalfJung
support num_cpus crate and test that

Also make some magic numbers into proper global constants.
2019-06-30 08:42:25 +00:00
Ralf Jung
ba47d73041 Merge branch 'master' into rustup 2019-06-29 16:19:27 +02:00
Ralf Jung
019ad4bab4 move constants to machine.rs 2019-06-29 14:37:41 +02:00
Ralf Jung
c7bf9064f7 comment on STACK_ADDR 2019-06-29 14:34:08 +02:00
Ralf Jung
0fac868685 support num_cpus and test that 2019-06-29 14:34:08 +02:00
Ralf Jung
c1645f6c65 don't compute residue twice 2019-06-29 14:31:54 +02:00
Ralf Jung
9b66527075 more sensible slack 2019-06-29 14:31:54 +02:00
Ralf Jung
c0b44ca98c tweak inttoptr allocation behavior
- Make `align_addr` not offset by `align` for no reason.
- Add some random slack between allocations to give them the chance to not be aligned.
2019-06-29 14:31:54 +02:00
Ralf Jung
aa5a9bc152 some module comments 2019-06-29 14:15:05 +02:00
Ralf Jung
857305ff67 Merge remote-tracking branch 'ralf/machine' into rustup 2019-06-29 14:04:50 +02:00
Ralf Jung
67d3779b0c move most of the stuff from lib.rs into machine.rs, and initialization + main loop into eval.rs 2019-06-29 13:48:59 +02:00
Ralf Jung
6886864862 ptr-to-int alignment sanity check 2019-06-28 09:12:11 +02:00
Christian Poveda
373a4ee1e9 Remove default derive for MemoryExtra 2019-06-26 13:55:56 -05:00
Christian Poveda
413a351552 Initialize MemoryExtra with StdRng 2019-06-26 13:09:50 -05:00
Christian Poveda
7fbf8e53a2 Fix alignment of base addresses 2019-06-26 09:08:28 -05:00
Christian Poveda
792d665a1f Fix merge conflicts 2019-06-25 00:57:33 -05:00
Christian Poveda
84cfbb01b7 Reorganize MemoryExtra and AllocExtra structures 2019-06-24 17:18:25 -05:00
Christian Poveda
2861ceb2fa Rename new fields and move rng to MemoryExtra 2019-06-24 10:03:16 -05:00
Ralf Jung
7e7b5d42ba
Apply suggestions from code review
Co-Authored-By: Oliver Scherer <github35764891676564198441@oli-obk.de>
2019-06-24 14:50:27 +02:00
Ralf Jung
69e8318b60 de-obfuscate ptr comparison a bit 2019-06-23 20:30:33 +02:00
Ralf Jung
4dc188a60e adjust for refactored memory pointer checks 2019-06-23 20:19:26 +02:00
Christian Poveda
dd732e5862 Force intptrcast for binary operations 2019-06-22 09:25:16 -05:00
Ralf Jung
72c269eebe fix compilation with latest rustc 2019-06-22 11:05:12 +02:00
Christian Poveda
fd3a291db4 Implement intptrcast methods 2019-06-21 14:55:37 -05:00
Oliver Scherer
5edb9c915f
Merge branch 'master' into master 2019-06-21 12:37:13 +02:00
Christian Poveda
17dbecfa32
Merge branch 'master' into master 2019-06-20 21:38:10 -05:00
Christian Poveda
4211d7e1a0 Update tag methods to match Machine changes 2019-06-20 16:58:57 -05:00
Ralf Jung
86868b6946
Merge branch 'master' into rustup 2019-06-20 21:37:12 +02:00
Ralf Jung
6f5529a05b
Merge branch 'master' into patch-1 2019-06-20 20:47:27 +02:00
Ralf Jung
03eff5981b use org.rust-lang.miri folder on macOS 2019-06-20 19:45:39 +02:00
Ralf Jung
04fa38dd1b allow some inequality comparisons between pointers and integers 2019-06-20 16:38:55 +02:00
Ralf Jung
7ce36226e6 implement and test unchecked_{add,sub,mul} intrinsics 2019-06-16 11:10:33 +02:00
Ralf Jung
fc90124489 test exact_div UB detection 2019-06-16 11:10:33 +02:00
Ralf Jung
32a2cf046f
Merge branch 'master' into foreign_math_functions 2019-06-16 10:11:32 +02:00
soc
a561f949ad Fix project dirs path
ProjectDirs::from("miri", "miri", "miri")

would get you `miri\miri` on Windows and `miri.miri.miri` on macOS.

I'm assuming here that your intention was to have only a `miri` directory on every OS.
2019-06-15 17:03:16 +02:00
Lzu Tao
fd0dccd4b1 Fix wrong lifetime of TyCtxt
Rustup rust-lang/rust#61817
2019-06-15 02:34:11 +07:00
Ralf Jung
34b0922cec fix running a Miri that was built in bootstrap 2019-06-14 12:09:43 +02:00
Ralf Jung
ac2f6cbcde change sysroot check to print the output in case of an error 2019-06-14 11:16:39 +02:00
Oliver Scherer
4db0eea010
Fix indentation 2019-06-14 10:44:08 +02:00
Kenny Goodin
46b6a3fb7f Add more missing math functions
Add missing functions for atan2, cosh, sinh, and tan.
Also add f32 calls and tests for cbrt and hypot.
2019-06-13 22:28:22 -04:00
Ralf Jung
ad0c941547 rustup for lifetime refactorings 2019-06-13 09:18:03 +02:00
Kenny Goodin
535914e3dc Implement cbrt and hypot function calls
Test cases are added to `tests/run-pass/intrinsics-math.rs`
2019-06-12 15:44:30 -04:00
Ralf Jung
a37953752d use apfloat's FMA primitive 2019-06-11 19:41:43 +02:00
Ralf Jung
5e07ac335f implement min and max floating point intrinsics 2019-06-11 19:41:43 +02:00
Ralf Jung
6eab94a459 fix from to/from f32/f64 changes 2019-06-11 19:41:43 +02:00
Ralf Jung
81debbd652
Merge branch 'master' into sysroot 2019-06-11 09:48:05 +02:00
Ralf Jung
446478cce2 fix for rustc rename mir -> body 2019-06-10 13:01:55 +02:00
Ralf Jung
0a9f9e0a0b factor out common code to determine miri binary 2019-06-09 19:47:09 +02:00
Ralf Jung
5b91ecc066 fix comments 2019-06-09 17:12:41 +02:00
Ralf Jung
b0b082d4d8 do not handle MIRI_SYSROOT in the driver at all, rely fully on the --sysroot flag 2019-06-09 17:10:04 +02:00
Ralf Jung
244011a47f don't have both MIRI_SYSROOT and --sysroot 2019-06-09 15:43:22 +02:00
Ralf Jung
619f296463 explain why we always set a sysroot; make sure we error if both MIRI_SYSROOT and --sysroot are set 2019-06-09 14:31:05 +02:00
Ralf Jung
05b7e61977 remove outdated sysroot management 2019-06-09 14:10:42 +02:00
Ralf Jung
09f30cabf0 cargo miri: make sure we see the same sysroot for rustc and miri 2019-06-09 13:53:04 +02:00
Ralf Jung
d6bcfc58e3 rustup for EvalResult rename 2019-06-08 22:14:47 +02:00
Dylan MacKenzie
1ceb81b345 Use in-core implementation of type_name.
We bump `rust-version` to pick up the new impl from
https://github.com/rust-lang/rust/pull/61498 and add a test.
2019-06-05 22:36:53 -07:00
Ralf Jung
03b74c12c8
Merge branch 'master' into debug 2019-06-03 11:02:17 +02:00
Ralf Jung
0c704151f7 use new rustc infrastructure to tag the base pointer of static allocations 2019-06-02 22:16:02 +02:00
Ralf Jung
96444c11ee remove too expensive debug assertion 2019-05-31 16:34:22 +02:00
Ralf Jung
e4cee77121 fix for rustc changes 2019-05-29 09:30:36 +02:00
Ralf Jung
7a7b853120 adjust for rustc changes 2019-05-28 22:46:56 +02:00
Ralf Jung
543e57990c
Merge branch 'master' into miri-build 2019-05-27 23:26:22 +02:00
Ralf Jung
8b219a1329 fix for latest rustc 2019-05-27 18:50:32 +02:00
Ralf Jung
cf96396fcc make miri script smarter: auto-determine MIRI_SYSROOT, handle MIRI_TEST_TARGET 2019-05-27 14:41:44 +02:00
Ralf Jung
21fb14dba1 avoid printing the tag twice 2019-05-24 13:09:29 +02:00
Ralf Jung
5569fffe7d avoid having both Debug and Display for a type and using the wrong one 2019-05-24 10:09:23 +02:00
Ralf Jung
1d92791965 use prettier printing 2019-05-23 15:54:50 +02:00
Ralf Jung
3e33e54b5b hopefully improve error message a bit 2019-05-23 11:03:08 +02:00
Ralf Jung
5c54a58c06 typo 2019-05-19 14:04:59 +02:00
Oliver Scherer
3fde45233b Prefer drain over manual implementation of drain 2019-05-19 12:40:59 +02:00
Ralf Jung
6b4164e0df nits 2019-05-17 19:42:35 +02:00
Ralf Jung
9c161b80d0 reading does not remove Unique, it just invalidates them 2019-05-17 15:29:02 +02:00
Ralf Jung
4b9e1544c2 give up on two-phase borrows 2019-05-17 15:02:31 +02:00
Ralf Jung
1447242bf9 refactor to simplify 2019-05-15 18:12:58 +02:00
Ralf Jung
f676f2265b make writes act stack-like 2019-05-15 18:12:58 +02:00
Ralf Jung
9b3f07b161 make printing return place less verbose 2019-05-15 17:23:33 +02:00
Ralf Jung
bc0c76d861 fix for latest rustc 2019-05-13 22:07:24 +02:00
Ralf Jung
ada5edbf96 RUST_LOG got renamed to RUSTC_LOG 2019-05-13 14:10:52 +02:00
Ralf Jung
be47fae173 build with latest version 2019-05-13 11:37:54 +02:00
Ralf Jung
a9e66928d6
Update src/stacked_borrows.rs
Co-Authored-By: bjorn3 <bjorn3@users.noreply.github.com>
2019-05-11 12:07:25 +02:00
Ralf Jung
8530080d03 rename per-location part of reborowing to 'granting' 2019-05-11 12:06:59 +02:00
Ralf Jung
0f96676f43 switch back to upstream xargo 2019-05-10 08:28:02 +02:00
Ralf Jung
d05159f3a9 switch to my xargo fork, because that one works with current libstd 2019-05-01 20:37:08 +02:00
bjorn3
17643af868
Apply suggestions from code review
Co-Authored-By: RalfJung <post@ralfj.de>
2019-04-30 15:31:53 +02:00
Ralf Jung
59985157d3 SharedReadOnly reborrows are never weak 2019-04-30 13:55:04 +02:00
Bastien Orivel
69a252c1b3 Update cargo_metadata to 0.7 2019-04-27 23:31:48 +02:00
Ralf Jung
53f59431a5 fix HeapFree return value 2019-04-27 18:21:10 +02:00
Ralf Jung
aaa8ee743b unify code paths 2019-04-22 13:20:51 +02:00
Ralf Jung
42b70f17d2
Merge branch 'master' into exit 2019-04-22 11:35:36 +02:00
Ralf Jung
131548a748 gen_random: handle size 0 and writing to mem 2019-04-22 11:08:23 +02:00
Ralf Jung
703b7f8a7e implement SecRandomCopyBytes for macOS RNG 2019-04-22 11:08:23 +02:00
Ralf Jung
e4970fe6ff Windows: implement heap functions 2019-04-21 16:48:02 +02:00
Ralf Jung
6a6c0cd5f0 implement ExitProcess for Windows 2019-04-21 13:25:24 +02:00
Ralf Jung
0694435650 implement exit
implement exit code via new error kind
2019-04-21 12:36:17 +02:00
Ralf Jung
2481d6091a warn when cargo miri setup does not do anything 2019-04-19 19:27:19 +02:00
Ralf Jung
0a5e541272 two-phase-borrow comment 2019-04-19 08:36:05 +02:00
Ralf Jung
22b57f6435
Merge branch 'master' into stacked-borrows-2 2019-04-18 19:28:25 +02:00
Ralf Jung
36e99a1bda remove some unneeded 'extern crate' 2019-04-18 16:16:32 +02:00
Tim Diekmann
9ecc07c9b2
Add handling for nullptr and size == 0 2019-04-18 15:20:32 +02:00
Tim Diekmann
afb64232db
Fix for latest upstream update 2019-04-18 12:39:18 +02:00
Tim Diekmann
af3c4c0c23
Merge branch 'master' into realloc 2019-04-18 12:22:58 +02:00
Tim Diekmann
0e6deee76e
Add realloc 2019-04-18 01:20:21 +02:00
Ralf Jung
39ecd05c46 embrace find_map and some whitespace changes 2019-04-17 16:25:38 +02:00
Oliver Scherer
abe8959339 Apply suggestions from code review
Co-Authored-By: RalfJung <post@ralfj.de>
2019-04-17 16:22:33 +02:00
Ralf Jung
46d5fd8487 barriers are dead, long live protectors -- this enables overlapping two-phase borrows! 2019-04-17 16:02:57 +02:00
Ralf Jung
14e701f7d8 abstract mapping over all the stacks in some memory range 2019-04-17 16:02:57 +02:00
Ralf Jung
7b7fef1b53 let the permission of a new pointer depend on the type only 2019-04-17 16:02:57 +02:00
Ralf Jung
924624f810 some failures are impossible 2019-04-17 16:02:57 +02:00
Ralf Jung
a6d377ca0b more comments 2019-04-17 16:02:57 +02:00
Ralf Jung
966d638760 make run-pass tests pass. tweak how we remove barriers. 2019-04-17 16:02:57 +02:00
Ralf Jung
3f0a2a2941 rewrite Stacked Borrows Core. this passes stacked-borrows.rs! 2019-04-17 16:02:57 +02:00
Ralf Jung
a50512f751 fix RtlGenRandom argument size 2019-04-16 21:27:27 +02:00
Ralf Jung
6fdc75024b
Merge branch 'master' into rand 2019-04-16 20:55:58 +02:00
Ralf Jung
ba567d19f0 stub out pthread_atfork to that we support thread_rng() 2019-04-16 19:53:10 +02:00
Ralf Jung
9c8ad5f9e1 fix 0-sized getrandom 2019-04-16 19:26:02 +02:00
Ralf Jung
378d9d4172 be pragmatic about ptr-int comparisons, for now 2019-04-16 17:47:37 +02:00
Ralf Jung
5f29a53992 rustup 2019-04-12 12:32:26 +02:00
Ralf Jung
8de4f34a7f Merge remote-tracking branch 'origin/master' 2019-04-11 22:09:09 +02:00
Ralf Jung
48b22b80c5 Fix typo
Co-Authored-By: Aaron1011 <aa1ronham@gmail.com>
2019-04-09 23:33:13 -04:00
Oliver Scherer
2eb2c8dd57
Merge branch 'master' into feature/random 2019-04-09 21:58:15 +02:00
Aaron Hill
0837d630f7
Some final cleanup 2019-04-09 15:49:34 -04:00
Aaron Hill
c6e0d09714
Retrieve SYS_getrandom from libc using const-eval 2019-04-09 11:04:30 -04:00
Aaron Hill
22044c878d
Improve deterministic mode error message 2019-04-09 10:16:32 -04:00
Aaron Hill
6b4c5b81da
Fix 'RtlGenRandom' argument slots 2019-04-08 23:18:10 -04:00
Aaron Hill
5f997645bc
Interpret system call numbers relative to target architecture 2019-04-08 22:37:58 -04:00
Aaron Hill
6d3e93c281
Refactor random number generation 2019-04-08 22:22:41 -04:00
Aaron Hill
6b0440e26d
Cleanup argument parsing 2019-04-08 21:40:52 -04:00
Ralf Jung
06af617b92 fix dumping uninitialized locals 2019-04-08 13:40:11 +02:00
bjorn3
32d01263a9
Update src/fn_call.rs
Co-Authored-By: TimDiekmann <21277928+TimDiekmann@users.noreply.github.com>
2019-04-08 10:44:02 +02:00
Aaron Hill
808b149671
Use raw syscall numbers 2019-04-07 20:09:53 -04:00
Aaron Hill
dddeda7f7d
Use getrandom() syscall number from libc 2019-04-07 19:57:14 -04:00
Aaron Hill
73239573c9
Implement non-deterministc mode
Part of #653

This allows us to properly implement getrandom(),
which unlocks the default HashMap type (e.g. HashMap<K, V>)
with RandomState)

This commit adds a new '-Zmiri-seed=<seed>' option. When present,
this option takes a 64-bit hex value, which is used as the seed
to an internal PRNG. This PRNG is used to implement the 'getrandom()'
syscall.

When '-Zmiri-seed' is not passed, 'getrandom()' will be disabled.
2019-04-07 19:26:20 -04:00
Tim Diekmann
a59e155206
Tidy up calloc code 2019-04-08 01:12:44 +02:00
Tim Diekmann
d1d05c8b41
Fix tagging order 2019-04-07 21:09:21 +02:00
Tim Diekmann
6e4264bf27
Add calloc 2019-04-07 20:52:12 +02:00
Oliver Scherer
9a0eaf6ebd Update to rustc nightly 2019-04-03 10:48:11 +02:00
kenta7777
d9178b9300 renames EvalContext to InterpretCx 2019-03-30 10:58:28 +09:00
Oliver Scherer
5d3825fc48
Update src/bin/miri-rustc-tests.rs
Co-Authored-By: RalfJung <post@ralfj.de>
2019-03-18 15:08:36 +01:00
Ralf Jung
8ee67994cc fix for rustc change 2019-03-18 13:48:37 +01:00
Ralf Jung
687c5d13ea bump Rust; remove stabilized feature 2019-03-18 13:31:29 +01:00
Oliver Scherer
56c7656568 Remove dead code and docs 2019-03-11 10:28:03 +01:00
Oliver Scherer
a672abddfa Make the rustc test runner build again 2019-03-11 10:25:21 +01:00
Oliver Scherer
ecae3751b4 Reintroduce prepending the input file name to the miri arguments 2019-03-11 09:43:52 +01:00
John Kåre Alsaker
7d142ecf75 Use the new rustc interface 2019-03-11 09:43:52 +01:00
Ralf Jung
8c74325441 mention --exclude-should-panic 2019-03-10 17:53:30 +01:00
Santiago Pastorino
0bb6ae8f62
Place::Local(x) is now Place::Base(PlaceBase::Local(x)) 2019-03-01 11:27:30 -03:00
Ralf Jung
a9b03f9411 avoid [..] 2019-02-27 11:39:59 +01:00
Alexander Regueiro
205490b85c Fixed nits raised in review. 2019-02-26 18:37:46 +00:00
Alexander Regueiro
12d3ecbaff Various cosmetic improvements. 2019-02-26 18:37:46 +00:00
rchaser53
b1c0cf2ef9 use copy_op directly insteadof write_scalar
- fix volatile_store logic
- rename test to be able to read back from later
- expand test to use assert_eq! and confirm to fix volatile_store
- expand test to use assert_eq! and confirm normal load
2019-02-26 19:49:02 +09:00
Ralf Jung
9397b36ab8 typo and comments 2019-02-15 09:35:55 +01:00
Ralf Jung
2c3ee678b1 Fix comparing fat pointers 2019-02-15 09:35:55 +01:00
Ralf Jung
457741d6d2 update for new bin_op APIs 2019-02-15 09:35:55 +01:00
Ralf Jung
2d323857e9 implement and test posix_memalign 2019-02-13 17:47:54 +01:00
Ralf Jung
2d892c160b skip installing rust-src if XARGO_RUST_SRC is set 2019-02-13 12:10:05 +01:00
Ralf Jung
fd6bd5ba4b rename things away from 'Shr' that are used for much more than just shared references 2019-02-12 10:58:18 +01:00
Ralf Jung
3c652032c0 be more clear which stack we are talking about 2019-02-12 10:51:03 +01:00
Ralf Jung
35ed590075 also enable passing arguments through from cargo-miri 2019-02-09 20:00:40 +01:00
Ralf Jung
5e468766b7 also pass actual arguments to Windows 2019-02-09 20:00:40 +01:00
Ralf Jung
e400b42c21 fix build 2019-02-09 20:00:40 +01:00
Ralf Jung
0802b3a108 implement passing arguments to the interpreted program 2019-02-09 20:00:40 +01:00
Ralf Jung
0f6e82db36 fix (un)likely intrinsics 2019-02-09 13:08:23 +01:00
Ralf Jung
7af75abdd7 we don't need to flush stderr 2019-02-08 10:41:44 +01:00
Ralf Jung
68e8ff1a09 flush stdout/stderr to make sure it appears on the screen 2019-02-07 18:04:58 +01:00
Ralf Jung
e0891bd619 Fix cargo miri test on lib crates 2019-02-07 16:33:46 +01:00
Ralf Jung
5766b32871 update test for cargo-miri 2019-02-07 13:03:03 +01:00
Ralf Jung
4309539efe cargo miri: refactor how we detect what to interpret and how we run cargo rustc, fix running unit tests 2019-02-07 13:00:27 +01:00
Ralf Jung
48ac35f072 panic_impl is another way to panic 2019-02-06 11:41:45 +01:00
Ralf Jung
661ed7b82d implement atomic_nand 2019-02-06 11:40:10 +01:00
Ralf Jung
76985f1e2d remove outdated comment 2019-01-25 08:59:12 +01:00
Oliver Scherer
9f06cdc87a Explain Ref problems 2019-01-22 17:19:19 +01:00
Oliver Scherer
7269a884c9 Expose AllocIds for priroda 2019-01-22 16:46:45 +01:00
Oliver Scherer
9c1c407a02 Update to latest rustc master 2019-01-21 17:29:09 +01:00
Ralf Jung
c54d7eef07 expand docs 2019-01-07 19:41:18 +01:00
Ralf Jung
a957a36ddc tweak merging to give up if we don't make any progress 2019-01-07 19:36:25 +01:00
Ralf Jung
17d11ebe6e be explicit about doing a binary search; fix out-of-bounds check 2019-01-07 15:10:22 +01:00
Ralf Jung
4f9c14c256 deduplicate RangeMap elements in iter_mut
This cuts down execution time of the benchmark in the OP of https://github.com/solson/miri/issues/593 by another 25%, and it cuts max-RSS by 90% (!)
2019-01-07 15:10:22 +01:00
Ralf Jung
f24d0354f9 rewrite RangeMap to use a sorted Vec instead of a RangeMap
This gives us a 20% perf improve for the benchmark from https://github.com/solson/miri/issues/593
2019-01-07 15:10:22 +01:00
Ralf Jung
6c9e702d9b range_map: also test size of the internal representation 2019-01-07 15:10:22 +01:00
Ralf Jung
e81d81e5af implement panic_if_uninhabited intrinsic 2019-01-07 11:23:08 +01:00
Ralf Jung
fced2ac865 move env var stuff out of the miri lib 2019-01-04 15:37:51 +01:00
Ralf Jung
f2e14d9314 use memory::check_bounds_ptr for offset check 2018-12-26 13:16:47 +01:00
Ralf Jung
5a8f9e58f7 properly compare unequal function pointers 2018-12-25 13:29:38 +01:00
Ralf Jung
4e4569cf4b fix build and tests with latest nightly 2018-12-25 13:26:40 +01:00
Ralf Jung
4f659ed507 fix for infallible allocation 2018-12-23 14:13:16 +01:00
Ralf Jung
a03d184648
Merge branch 'master' into rustup 2018-12-20 13:34:24 +01:00
Ralf Jung
750cd442be fix argv null terminator 2018-12-19 15:45:23 +01:00
Ralf Jung
af4fb6655e implement GetCommandLineW, GetEnvironmentVariableW, GetConsoleScreenBufferInfo, SetConsoleTextAttribute, GetSystemInfo 2018-12-19 15:25:25 +01:00
Ralf Jung
51ed485ba4 implement stdout/stderr on Windows 2018-12-19 12:16:07 +01:00
Ralf Jung
d67da9f04b no need to set the cargo-miri feature twice 2018-12-19 11:12:56 +01:00
Ralf Jung
11433bf38e actually show warnings about suppressed output 2018-12-19 11:07:24 +01:00
Ralf Jung
ecf6599051 xargo version check: also check application name, just to be sure 2018-12-19 11:06:46 +01:00
Ralf Jung
4e0fe62bd9 typo 2018-12-18 19:45:10 +01:00
Ralf Jung
e4fd710606 there is a new xargo released, use that 2018-12-18 19:41:32 +01:00
Ralf Jung
e8c53e81f8 implement macOS functions for argc, argv 2018-12-18 19:26:57 +01:00
Ralf Jung
93b8c23f7b Merge remote-tracking branch 'origin/master' into cargo-miri-test 2018-12-18 18:36:19 +01:00
Ralf Jung
96b2c347d7 temporarily use git version of xargo 2018-12-15 18:39:42 +01:00
Ralf Jung
6a37e723c4 detect outdated xargo version 2018-12-15 15:08:03 +01:00
Ralf Jung
e6147ae67e *oops* 2018-12-12 17:30:20 +01:00
Ralf Jung
b6a4556cb9 use show_error to terminate 2018-12-12 17:05:23 +01:00
Ralf Jung
ed83cc2600 use RUSTC_WRAPPER for the cargo hook 2018-12-12 17:03:40 +01:00
Ralf Jung
7e9098ff69 treat ref-to-raw cast like a reborrow: do a special kind of retag 2018-12-12 11:11:20 +01:00
Ralf Jung
ce5089c390 rebase fallout 2018-12-11 17:54:39 +01:00
Ralf Jung
9417b28de5 treat test binaries like all others 2018-12-11 17:42:18 +01:00
Ralf Jung
f31bb43804 implement some libc hooks needed by libtest 2018-12-11 17:39:46 +01:00
Ralf Jung
6b376dc394 get rid of to_bytes hack 2018-12-11 14:32:59 +01:00
Ralf Jung
383d215386 make some functions private to StackedBorrows 2018-12-11 14:18:51 +01:00
Ralf Jung
9de605b32f avoid repeating signatures in EvalContext extension traits 2018-12-11 14:16:58 +01:00
Ralf Jung
05f2b2ed3d remove support for not having libstd MIR 2018-12-10 12:26:20 +01:00
Ralf Jung
b50662d68c fix CI 2018-12-10 12:21:39 +01:00
Ralf Jung
b8e6af49d9 fix setting the manifest path manually when using cargo miri 2018-12-10 10:53:32 +01:00
Ralf Jung
b6eb2cd08e cargo miri: support foreign targets 2018-12-10 09:53:14 +01:00
Ralf Jung
c84c1527e2 factor grabbing of cargo options into separate function and make it better 2018-12-10 09:28:24 +01:00
Ralf Jung
f06e25f9b2 bump Rust version, fix build 2018-12-08 10:38:36 +01:00
Ralf Jung
61f20761d3
Merge branch 'master' into stacked-borrows-2-phase 2018-12-03 11:11:32 +01:00
Ralf Jung
d11a6766ad use assert 2018-12-03 10:26:39 +01:00
Ralf Jung
0e44876a2d fix mutability gap: do not allow shared mutation when creating frozen reference 2018-12-03 09:15:18 +01:00
Ralf Jung
6df89de68a we don't need no whitelist 2018-12-02 17:18:25 +01:00
Ralf Jung
e12d4bc70c build libstd with minimal features 2018-12-02 14:05:14 +01:00
Ralf Jung
b2305da8d0 assert some sense 2018-12-02 13:30:09 +01:00
Ralf Jung
479eb3bd2b support for basic (non-overlapping) 2-phase borrows 2018-12-02 13:30:09 +01:00
Ralf Jung
dcfc2f207e do not even look for cargo metadata in 'cargo miri setup' 2018-12-02 10:29:57 +01:00
Ralf Jung
86e6470a12 update README to first describe the usual user setup, and to always set up a proper libstd 2018-11-30 09:23:44 +01:00
Ralf Jung
c10811a82d Merge remote-tracking branch 'origin/master' into rustup 2018-11-28 16:15:56 +01:00
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer
26fe778c55
Typo
Co-Authored-By: RalfJung <post@ralfj.de>
2018-11-28 09:58:23 +01:00
Ralf Jung
6ca4fc7125 Merge remote-tracking branches 'origin/master' and 'ralf/shrink-whitelist' into memory-data-revived 2018-11-28 08:09:58 +01:00
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer
f42b708568
Merge branch 'master' into oli-obk-patch-1 2018-11-27 17:18:16 +01:00
Oliver Scherer
5958fa6a70 Use explicit dyn trait object 2018-11-27 16:20:15 +01:00
Oliver Scherer
edc2fb5f60 Expose some internals for priroda 2018-11-27 14:41:53 +01:00
Ralf Jung
97e010f5b9 barriers prevent deallocation 2018-11-27 14:26:23 +01:00
Ralf Jung
194710e112 no barriers for boxes 2018-11-27 14:26:23 +01:00
Ralf Jung
dd94930ee3 implement function barriers 2018-11-27 14:26:23 +01:00
Ralf Jung
215ec38624 track call IDs 2018-11-27 14:25:20 +01:00
Ralf Jung
e9370d2b74 adjust for memory_allocated hook, make RangeMap preallocated with a fixed size 2018-11-27 14:25:20 +01:00
Ralf Jung
53196554ec inform the user when and where we are creating a cache dir 2018-11-27 13:12:52 +01:00
Ralf Jung
bd7f4076cd we need to recursively create the dir 2018-11-27 11:43:02 +01:00
Ralf Jung
b91679539e use proper platform cache dir 2018-11-27 11:26:53 +01:00
Ralf Jung
464dee8edf std::ptr no longer needs whitelisting 2018-11-27 09:23:22 +01:00
Ralf Jung
07f78a37d4 tweaks 2018-11-27 08:16:58 +01:00
Ralf Jung
58982d655a remove unneeded backtrace feature 2018-11-27 08:16:58 +01:00
Ralf Jung
82caed1a48 cargo miri setup: print when we are executing commands 2018-11-27 08:16:58 +01:00
Ralf Jung
b09dfc14a0 there are less places now to keep the flags in sync 2018-11-27 08:16:58 +01:00
Ralf Jung
cc4dd29f54 kill xargo dir and update docs 2018-11-27 08:16:58 +01:00
Ralf Jung
16ac7ec1b1 tweak comments, remove debug output 2018-11-27 08:16:58 +01:00
Ralf Jung
738133b379 complete setup routine: instal rust-src, build libstd, use it 2018-11-27 08:16:58 +01:00
Ralf Jung
c945e30d10 setup routine to install xargo when missing 2018-11-27 08:16:58 +01:00
Ralf Jung
6bd76c7ee1 cargo miri: factor package manifest logic into separate function 2018-11-27 08:16:58 +01:00
Ralf Jung
14d58ca8a9 fix clippy lint whitelisting 2018-11-27 08:16:58 +01:00
Oliver Scherer
32e93ed776 Update to Memory -> Allocation method move 2018-11-23 17:00:31 +01:00
Ralf Jung
68ba6cdbaa fix for new Align type 2018-11-23 09:46:51 +01:00
Ralf Jung
094d07c114 Merge remote-tracking branch 'origin/master' into rustup 2018-11-22 08:21:05 +01:00
Ralf Jung
694d2490f1 slightly more verbose error msg 2018-11-21 16:02:38 +01:00
Ralf Jung
41f89beb3f if let 2018-11-21 16:01:39 +01:00
Ralf Jung
ec8cc029c1 on a deref, check that we are not using a mutable ref with a frozen tag 2018-11-21 15:44:47 +01:00
Ralf Jung
984c3368a9 remove stabilized feature flag 2018-11-21 13:41:57 +01:00
Ralf Jung
6181b29f5d bump Rust 2018-11-21 09:52:31 +01:00
Ralf Jung
f41decc6e1
Merge branch 'master' into cargo-miri-2018 2018-11-20 10:18:34 +01:00
Ralf Jung
cfa6397ad0 UnsafeCell no longer needs to be on the whitelist 2018-11-20 08:50:08 +01:00
Ralf Jung
6085865975 adjust for InboundsCheck parameter of memory bounds check 2018-11-20 08:45:25 +01:00
Ralf Jung
d619049b2d Merge branch 'miri-backtrace' into mut-visitor 2018-11-20 08:29:51 +01:00
Ralf Jung
ef2ffed93f port cargo-miri-test to 2018 edition, mostly to test that that works with cargo miri 2018-11-19 22:59:41 +01:00
Ralf Jung
19f8a9db7d Boxes can also use the fast path 2018-11-17 12:35:58 +01:00