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