]> git.lizzy.rs Git - rust.git/blob - README.md
Fix drop fill checking on 32-bit hosts.
[rust.git] / README.md
1 # Miri
2
3 [[slides](https://solson.me/miri-slides.pdf)]
4 [[report](https://solson.me/miri-report.pdf)]
5
6 An experimental interpreter for [Rust][rust]'s [mid-level intermediate
7 representation][mir] (MIR). This project began as part of my work for the
8 undergraduate research course at the [University of Saskatchewan][usask].
9
10 ## Download Rust nightly
11
12 I currently recommend that you install [multirust][multirust] and then use it to
13 install the current rustc nightly version that works with Miri:
14
15 ```sh
16 multirust update nightly-2016-04-11
17 ```
18
19 ## Build
20
21 ```sh
22 multirust run nightly-2016-04-11 cargo build
23 ```
24
25 ## Run a test
26
27 ```sh
28 multirust run nightly-2016-04-11 cargo run -- \
29   --sysroot $HOME/.multirust/toolchains/nightly-2016-04-11 \
30   test/filename.rs
31 ```
32
33 If you are using [rustup][rustup] (the name of the multirust rewrite in Rust),
34 the `sysroot` path will also include your build target (e.g.
35 `$HOME/.multirust/toolchains/nightly-2016-04-11-x86_64-apple-darwin`). You can
36 see the current toolchain's directory by running `rustup which cargo` (ignoring
37 the trailing `/bin/cargo).
38
39 If you installed without using multirust or rustup, you'll need to adjust the
40 command to run your cargo and set the `sysroot` to the directory where your
41 Rust compiler is installed (`$sysroot/bin/rustc` should be a valid path).
42
43 ## License
44
45 Licensed under either of
46   * Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or
47     http://www.apache.org/licenses/LICENSE-2.0)
48   * MIT license ([LICENSE-MIT](LICENSE-MIT) or
49     http://opensource.org/licenses/MIT) at your option.
50
51 ### Contribution
52
53 Unless you explicitly state otherwise, any contribution intentionally submitted
54 for inclusion in the work by you shall be dual licensed as above, without any
55 additional terms or conditions.
56
57 [rust]: https://www.rust-lang.org/
58 [mir]: https://github.com/rust-lang/rfcs/blob/master/text/1211-mir.md
59 [usask]: https://www.usask.ca/
60 [multirust]: https://github.com/brson/multirust
61 [rustup]: https://www.rustup.rs