Commit Graph

239 Commits

Author SHA1 Message Date
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
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
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
e71ca965b9 also let bootstrap tell us where to find xargo 2019-08-03 13:53:32 +02:00
Ralf Jung
0dab3d5ee1 honor CARGO env var (for rustc bootstrap) 2019-08-02 18:02:54 +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
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
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
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
Ralf Jung
ad0c941547 rustup for lifetime refactorings 2019-06-13 09:18:03 +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
cf96396fcc make miri script smarter: auto-determine MIRI_SYSROOT, handle MIRI_TEST_TARGET 2019-05-27 14:41:44 +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
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
Bastien Orivel
69a252c1b3 Update cargo_metadata to 0.7 2019-04-27 23:31:48 +02:00
Ralf Jung
2481d6091a warn when cargo miri setup does not do anything 2019-04-19 19:27:19 +02:00
Ralf Jung
36e99a1bda remove some unneeded 'extern crate' 2019-04-18 16:16:32 +02:00
Aaron Hill
6b0440e26d
Cleanup argument parsing 2019-04-08 21:40:52 -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
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
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
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
Ralf Jung
9397b36ab8 typo and comments 2019-02-15 09:35:55 +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
35ed590075 also enable passing arguments through from cargo-miri 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
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
Oliver Scherer
9c1c407a02 Update to latest rustc master 2019-01-21 17:29:09 +01:00
Ralf Jung
fced2ac865 move env var stuff out of the miri lib 2019-01-04 15:37:51 +01:00
Ralf Jung
d67da9f04b no need to set the cargo-miri feature twice 2018-12-19 11:12:56 +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
e4fd710606 there is a new xargo released, use that 2018-12-18 19:41:32 +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
9417b28de5 treat test binaries like all others 2018-12-11 17:42:18 +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
e12d4bc70c build libstd with minimal features 2018-12-02 14:05:14 +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
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
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
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
984c3368a9 remove stabilized feature flag 2018-11-21 13:41:57 +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
f6d6470bc4 move to 2018 edition
I want NLL :D
2018-11-05 15:45:27 +01:00
Ralf Jung
8da2c9e34e fix adding default arguments 2018-11-03 11:03:53 +01:00
Ralf Jung
fba55ba2a9 make the -Z flags we use more consistent 2018-11-01 08:58:03 +01:00
Ralf Jung
016009a301 properly recognize log levels 2018-10-31 10:58:19 +01:00
Ralf Jung
5397f2e436 when using MIRI_LOG, avoid logging for what rustc does before miri gets started 2018-10-31 10:53:37 +01:00
Ralf Jung
eb153810e3 Use MIRI_ env vars to set RUST_ ones
This means we can do `MIRI_LOG=debug cargo run` and get something reasonable,
even if cargo has to build some dependencies first.
2018-10-31 10:09:55 +01:00
Ralf Jung
0b6e349417 automalically use start-fn if we have all the MIR 2018-10-19 10:07:17 +02:00
Andrew Poelstra
4fa5bfa2bb add some comments to clarify command-line argument munging in #482 2018-10-17 20:24:52 +00:00
Andrew Poelstra
4faf8fad10 cargo-miri: support running unit tests for libraries as well as test binaries 2018-10-15 18:38:07 +00:00
Ralf Jung
88ec62640e make rustc-tests a binary in the main project 2018-10-14 11:48:15 +02:00
Ralf Jung
e4dfb7013b enable validation per default, but add a flag to disable it and use that for some run-pass tests
compile-fail does not do validation yet
2018-10-11 11:24:22 +02:00