Commit Graph

5170 Commits

Author SHA1 Message Date
JCTyBlaidd
95c99b2044 Detect races between atomic and non-atomic accesses of a variable,
previously only data races between two non-atomic accesses were
 detected.
2020-11-04 21:35:48 +00:00
bors
2590bc64fe Auto merge of #1614 - RalfJung:raw-retag, r=RalfJung
Stacked Borrows: test raw-ref-to-field with raw ptr tracking

Adds a test for https://github.com/rust-lang/rust/pull/78597 (blocked on that landing first)
2020-11-03 19:07:45 +00:00
Ralf Jung
571b48cc47 rustup 2020-11-03 20:07:19 +01:00
JCTyBlaidd
fe2e857cc3 Add newlines at end of file + use replace.
add dangling thread variant of one of the benchmarks
2020-11-02 13:08:09 +00:00
JCTyBlaidd
2e75de5ac9 Mark all new tests as disabled on windows 2020-11-02 12:40:12 +00:00
JCTyBlaidd
cae4302003 Fix & rebase 2020-11-02 03:06:30 +00:00
JCTyBlaidd
ed32b260f9 Add tests, and fix bug in atomic RMW relaxed stores 2020-11-02 02:57:06 +00:00
JCTyBlaidd
89814f1b3f Initial data-race detector,
passes all current tests but additional tests are required
2020-11-02 02:57:05 +00:00
Ralf Jung
7eaba6684c fix trophy case URL 2020-10-31 16:28:56 +01:00
Ralf Jung
00bc944eea test Rc with raw pointer tracking 2020-10-31 16:24:34 +01:00
Ralf Jung
f936bc6b92 fix writing to read-only raw pointer in thread-local test 2020-10-31 16:24:34 +01:00
Ralf Jung
80a0a12b07 Stacked Borrows: test raw-ref-to-field with raw ptr tracking 2020-10-31 16:24:34 +01:00
bors
9a2cfbfc0a Auto merge of #1613 - RalfJung:test-normalize, r=RalfJung
backtrace tests: support more ways of checking out Rust locally

Tests failed when using a local build as my folders are called `rustc`, `rustc.2`, ...
Expand the regex to also support that naming scheme.
2020-10-31 12:48:49 +00:00
Ralf Jung
e7246be4f0 backtrace tests: support more ways of checking out Rust locally 2020-10-31 13:47:42 +01:00
Camelid
bb59980b2d CONTRIBUTING.md: Use build --stage 1 instead of build --stage 2
It seems to work fine with `--stage 1` and it should be faster.
2020-10-30 14:34:07 -07:00
bors
e4840ef4c9 Auto merge of #1611 - RalfJung:timing-tests, r=RalfJung
increase timeout to avoid spurious test failures

just saw this fail on macOS in PR CI, so add some extra safety margin
2020-10-30 18:22:11 +00:00
Ralf Jung
2a4faf638b increase timeout to avoid spurious test failures 2020-10-30 18:59:58 +01:00
bors
8f368393da Auto merge of #1610 - camelid:patch-2, r=RalfJung
Update locally-built rustc instructions

Cc rust-lang/rust#78435
2020-10-30 17:58:03 +00:00
Camelid
1496462a89 Update locally-built rustc instructions 2020-10-30 09:57:39 -07:00
bors
08ab8ce670 Auto merge of #1609 - camelid:patch-1, r=RalfJung
Fix link in README

The section it references is now in `CONTRIBUTING.md`.
2020-10-29 23:37:41 +00:00
Camelid
02af2a38ac
Fix link in README 2020-10-29 16:14:54 -07:00
bors
6359b1b0eb Auto merge of #1607 - RalfJung:rustup, r=RalfJung
rustup
2020-10-29 19:58:10 +00:00
Ralf Jung
1ad827c511 rustup 2020-10-29 20:57:38 +01:00
bors
c3a84c1ca8 Auto merge of #1606 - RalfJung:trophy, r=oli-obk
update trophy case
2020-10-28 13:40:51 +00:00
bors
83f7657ed0 Auto merge of #1603 - RalfJung:track-raw, r=oli-obk
add an option to track raw pointer tags in Stacked Borrows

Also make error messages more informative by printing the affected memory location
2020-10-28 13:19:25 +00:00
Ralf Jung
2589b48251 update trophy case 2020-10-28 14:05:37 +01:00
Ralf Jung
bf54607ba0 test raw pointer tracking; we cannot track raw pointers on Windows 2020-10-28 13:54:50 +01:00
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