Commit Graph

5143 Commits

Author SHA1 Message Date
bors
606436753a Auto merge of #1604 - RalfJung:std-debug-assert, r=oli-obk
disable debug assertions in the standard library

Debug assertions in the standard library can be somewhat expensive to check, in particular the ones covering each and every `ptr::write/copy/copy_nonoverlapping`. Miri will find most of those problems anyway since they cause UB. There are other debug assertions, such as ensuring internal invariants are maintained, but given how slow Miri already is, I think it is better to skip those checks in Miri and instead figure out a better way for people to use a standard library with debug assertions enabled.
2020-10-28 12:54:01 +00:00
Ralf Jung
70af7aed88 expand flag docs 2020-10-28 13:03:46 +01:00
bors
b7d0cecf2d Auto merge of #1605 - RalfJung:readme, r=RalfJung
Readme: remove outdated CI badges
2020-10-28 11:58:08 +00:00
Ralf Jung
00c4869d56 remove outdated CI badges 2020-10-28 12:57:41 +01:00
Ralf Jung
1044099c19 disable debug assertions in the standard library 2020-10-28 12:43:11 +01:00
Ralf Jung
19e78a65d9 run some tests with raw pointer tracking 2020-10-28 12:35:05 +01:00
Ralf Jung
194451345d add an option to track raw pointer tags in Stacked Borrows 2020-10-28 12:23:35 +01:00
Ralf Jung
39f7b35327 Stacked Borrows: print affected memory location on errors 2020-10-28 12:04:39 +01:00
bors
c7c77b149b Auto merge of #1602 - RalfJung:box, r=RalfJung
test Box::into_raw aliasing

Directly test aliasing problems caused by `Box::into_raw` issues (like we have them again right now due to https://github.com/rust-lang/rust/pull/77187, but the pinned rustc is older than that so this should still be able to land).
2020-10-27 16:27:05 +00:00
Ralf Jung
ecf330f39e test Box::into_raw aliasing 2020-10-27 17:26:36 +01:00
bors
5fdea5be99 Auto merge of #1601 - RalfJung:misc, r=RalfJung
pointer tag tracking: also show when tag is being created

Also use bash to make sure `&>` works.
2020-10-27 13:29:14 +00:00
Ralf Jung
086e9c49a9 pointer tag tracking: also show when tag is being created 2020-10-27 14:22:29 +01:00
Ralf Jung
16491aef42 Use bash to make sure &> works 2020-10-27 14:21:59 +01:00
bors
88da6757d7 Auto merge of #1600 - RalfJung:rustup, r=RalfJung
rustup; make panic output less dependent on stdlib internals
2020-10-25 09:02:22 +00:00
Ralf Jung
ddcc4f241e rustup; make panic output less dependent on stdlib internals 2020-10-25 10:00:50 +01:00
bors
ef4127459c Auto merge of #1599 - camelid:default-args-const, r=RalfJung
Make `miri_default_args()` a constant

Feel free to close this if this is intentionally not a constant.
2020-10-24 23:03:47 +00:00
Camelid
05e9ae042c Make miri_default_args() a constant 2020-10-24 12:46:38 -07:00
bors
1b1f8a00fd Auto merge of #1598 - camelid:hide-readlink-error, r=RalfJung
Hide readlink error in `./miri`

Fixes #1597.

`./miri` is just testing whether the platform supports `readlink -e`,
but it didn't hide properly hide the stderr output. This fixes that.
2020-10-24 11:26:10 +00:00
bors
f572765cee Auto merge of #1596 - camelid:fix-readme, r=RalfJung
Fix README

Add a paragraph break in the license section for clarity.

## Before

![image](https://user-images.githubusercontent.com/37223377/97042945-a5d3e500-1526-11eb-9c16-49f17f253e44.png)

## After

![image](https://user-images.githubusercontent.com/37223377/97042981-b2f0d400-1526-11eb-88c4-0db1119c2781.png)
2020-10-24 11:04:19 +00:00
bors
c2fd8f05cc Auto merge of #1594 - camelid:dont-force-install-xargo, r=RalfJung
Don't force-install xargo

Previously miri used `cargo install xargo -f` which shouldn't be
necessary anymore since `cargo install` will now upgrade without `-f`.

The only reason I can see to use `-f` is from the cargo docs:

> This is also useful if something has changed on the system that you
> want to rebuild with, such as a newer version of `rustc`.

See the [discussion on Zulip](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/why.20does.20miri.20require.20xargo/near/214351239).
2020-10-24 10:42:24 +00:00
Camelid
60a2c9b1f8 Hide readlink error in ./miri
`./miri` is just testing whether the platform supports `readlink -e`,
but it didn't hide properly hide the stderr output. This fixes that.
2020-10-23 13:00:33 -07:00
Camelid
8df239b020 Fix README 2020-10-23 11:53:34 -07:00
Camelid
e9b8693aaa Don't force-install xargo
Previously miri used `cargo install xargo -f` which shouldn't be
necessary anymore since `cargo install` will now upgrade without `-f`.

The only reason I can see to use `-f` is from the cargo docs:

> This is also useful if something has changed on the system that you
> want to rebuild with, such as a newer version of `rustc`.

See the [discussion on Zulip](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/why.20does.20miri.20require.20xargo/near/214351239).
2020-10-23 11:48:34 -07:00
bors
9cb10cdc9a Auto merge of #1593 - rust-lang:test, r=RalfJung
fix './miri test'
2020-10-22 08:36:45 +00:00
Ralf Jung
80c4b5d674 fix './miri test' 2020-10-22 10:36:05 +02:00
bors
ce31a12f36 Auto merge of #1592 - RalfJung:rustup, r=RalfJung
rustup; increase slack for timing tests
2020-10-22 08:08:41 +00:00
Ralf Jung
ad07b2bd44 rustup; increase slack for timing tests 2020-10-22 09:47:02 +02:00
bors
158639c985 Auto merge of #1590 - RalfJung:trophy, r=RalfJung
another TiKV bug for the trophy case :)

Cc `@brson` thanks for the ping!
2020-10-22 07:46:10 +00:00
Ralf Jung
0835ac6ec3 another TiKV bug for the trophy case :) 2020-10-21 12:50:45 +02:00
bors
496c83ed42 Auto merge of #1589 - Aaron1011:enable-normal-backtrace, r=RalfJung
Enable `backtrace` feature in the generated `Xargo.toml`

This allows the normal std panic hook to print a backtrace if
`RUST_BACKTRACE=1` and `-Z miri-disable-isolation` are set
2020-10-21 07:19:17 +00:00
Aaron Hill
05bb560de2
Enable backtrace feature in the generated Xargo.toml
This allows the normal std panic hook to print a backtrace if
`RUST_BACKTRACE=1` and `-Z miri-disable-isolation` are set
2020-10-20 18:27:55 -04:00
bors
cc21740684 Auto merge of #1587 - lzutao:only-gha, r=RalfJung
build: Gate only on GHA: remove travis and appveyor ci config

It's been over a week since #1571 merged.
The GHA evaluation is successful.

This PR removes CI config of travis and appveyor.
Now MIRI gates on github actions CI only.

Will need <https://github.com/rust-lang/homu/pull/109> to merge first,
otherwise bors will stuck.

Also, one may need to remove `continuous-integration/appveyor/pr` CI checks
in repo settings or appeveyor website.
2020-10-20 09:40:28 +00:00
Lzu Tao
8462558b6c build: Gate only on GHA: remove travis and appveyor ci config 2020-10-20 12:26:30 +07:00
bors
d5380be209 Auto merge of #1586 - RalfJung:available-concurrency, r=RalfJung
test new available_concurrency function

Cc https://github.com/rust-lang/rust/pull/74480
2020-10-18 09:22:59 +00:00
Ralf Jung
5df6d8bec6 test new available_concurrency function 2020-10-18 11:22:09 +02:00
bors
4ad1667e9c Auto merge of #1584 - Aaron1011:test/std-backtrace, r=RalfJung
Test std backtrace type

Closes https://github.com/rust-lang/miri/issues/1578
2020-10-18 08:10:16 +00:00
Aaron Hill
8b10dbfeaa
Test std::backtrace::Backtrace
Fixes #1578
2020-10-17 19:45:26 -04:00
bors
2f390c05e5 Auto merge of #1585 - RalfJung:rustup, r=RalfJung
rustup; the bad compile times for the float test are fixed
2020-10-17 22:50:31 +00:00
Ralf Jung
67cf6c2176 rustup; the bad compile times for the float test are fixed 2020-10-18 00:49:52 +02:00
bors
1b3a27c429 Auto merge of #1583 - est31:target_refactor, r=RalfJung
Replace target.target with target

Fix fallout caused by rustc PR: https://github.com/rust-lang/rust/pull/77943

Fixes https://github.com/rust-lang/rust/issues/77988
2020-10-15 21:56:20 +00:00
est31
1ae157bc9e Replace target.target with target
Rustc removed the target wrapper and exposed the target directly.

Result of running:

find . -type f -exec sed -i -e 's/target\.target\([)\.,;]\)/target\1/g' {} \;

Plus one manual edit of the rust-version file
2020-10-15 21:18:23 +02:00
bors
8beccc4bef Auto merge of #1581 - RalfJung:readme, r=RalfJung
README: make our cross-interpretation feature stand out more

This is a great feature, let's hope more people notice it :)
2020-10-11 22:56:39 +00:00
bors
73d5c42076 Auto merge of #1580 - Aaron1011:feature/backtrace-fn-ptr, r=RalfJung
Add an `fn_ptr` field to `MiriFrame`

The `backtrace-rs` crate can use this to implement
`Frame::symbol_address`, which is used to skip frames
above the call to `Backtrace::capture` on the stack.

The function pointer will not be useable for comparison purposes if the
function is generic, as CTFE creates a new function pointer for each
cast of a (monomorphized) generic function. However, this already
affects code running under Miri, and isn't a problem for `backtrace-rs`
(which only casts a non-generic function).

I've added logic to allow `MiriFrame` to have either 4 or 5 fields - if
a 5th field is present, we write the function pointer to it.
2020-10-11 22:34:57 +00:00
Ralf Jung
3bdf2bccae
Improve wording
Co-authored-by: Aaron Hill <aa1ronham@gmail.com>
2020-10-12 00:15:01 +02:00
bors
c467345bb0 Auto merge of #1571 - lzutao:actions, r=RalfJung
Adding a working github actions template

Complete adding github actions whose dummy template added in #1563 .

But it will need https://github.com/rust-lang/rust-central-station/pull/939 merged first
to be able to gate bors on Actions CI checks.
2020-10-11 22:07:25 +00:00
Aaron Hill
c889eba4b2
Add comment about deprecation 2020-10-11 17:57:49 -04:00
bors
098bc8b71a Auto merge of #1582 - Aaron1011:rustup-run-compiler, r=RalfJung
Rustup

This gets Miri building again after the `run_compiler` changes
2020-10-11 21:45:09 +00:00
Aaron Hill
0893ea1973
Rustup
This gets Miri building again after the `run_compiler` changes
2020-10-11 17:31:52 -04:00
Aaron Hill
6a6767fa2a
Apply suggestions from code review
Co-authored-by: Ralf Jung <post@ralfj.de>
2020-10-11 13:40:00 -04:00
Lzu Tao
6acde94931 Add a working github actions template 2020-10-11 18:32:12 +07:00