Caleb Zulawski
dd81fb3f10
Remove non-power-of-two SIMD vectors
2021-02-08 00:17:24 -05:00
Mara Bos
7fc24442bd
Update rust version.
...
- Allow new non_fmt_panic lint in test.
- Remove stabilized feature(wake_trait).
2021-02-05 10:08:05 +01:00
Ralf Jung
6f5a91f70a
rustup
2021-01-31 13:12:25 +01:00
bors
a0485c5a90
Auto merge of #1686 - thomcc:cmpxchg_weak, r=oli-obk
...
Add random failures to compare_exchange_weak
In practice this is pretty useful for detecting bugs.
This fails more frequently than realistic (~~50%~~ (now 80%, controlled by a flag) of the time). I couldn't find any existing code that tries to model this (tsan, cdschecker, etc all seem to have TODOs there). Relacy models it with a 25% or 50% failure chance depending on some settings.
CC `@JCTyblaidd` who wrote the code this modifies initially, and seems interested in this subject.
2021-01-28 09:52:04 +00:00
Ralf Jung
e308eeb3f1
rustup; more slack for timing tests
2021-01-27 10:44:08 +01:00
Ralf Jung
d38e861f1e
rustup; allow some lints
2021-01-26 11:43:39 +01:00
Thom Chiovoloni
d4b592ed17
Fail 80% of the time on weak cmpxchg, not 50%
2021-01-26 00:13:54 -08:00
Thom Chiovoloni
efd2d55e00
review nits
2021-01-26 00:13:54 -08:00
Thom Chiovoloni
b6eccc6482
Test that _weak atomics sometimes fail
2021-01-26 00:13:54 -08:00
Thom Chiovoloni
c678bd722e
Add random failures to compare_exchange_weak
2021-01-26 00:13:54 -08:00
Ralf Jung
3990debf82
rustup; test swap of element with itself
2021-01-22 09:22:53 +01:00
Ralf Jung
4a035103dc
rustup; make tests pass again
2021-01-15 16:41:14 +01:00
Ralf Jung
82c6c77b9a
test Weak into_raw/from_raw on dangling ptrs
2020-12-31 13:11:34 +01:00
Ralf Jung
7e198147df
panicing now works with -Zmiri-track-raw-pointers
2020-12-31 00:17:08 +01:00
Ralf Jung
3d151c8b62
leak checker: also test AtomicPtr stored via 'swap'
2020-12-21 11:36:39 +01:00
JCTyBlaidd
3df67141e6
Disable tests in windows
2020-12-13 11:04:58 +00:00
JCTyBlaidd
fbe7fbb890
Add concurrent caller location test
2020-12-13 11:04:58 +00:00
JCTyBlaidd
c45b1b16be
More tests, fix issue 1643 and detect races with allocation.
2020-12-13 11:04:58 +00:00
Ralf Jung
27a518e166
enable track-raw-ptr tests on Windows
2020-12-11 11:28:33 +01:00
Ralf Jung
2f0d7d38b4
rustup; test AtomicPtr leak checker
2020-12-10 00:09:52 +01:00
bors
a2fa80d277
Auto merge of #1641 - JCTyblaidd:update_release_sequences, r=RalfJung
...
Weaken release sequences to match the C++20 memory model
See [Weaken Release Sequences](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0982r1.html ), since the exception for relaxed writes on the same thread as a release write not blocking release sequences was removed in the C++20 memory model compared to the C11 memory model the paper was based on. The implementation can be updated and simplified to match this. [Rust is currently specified to use the C++20 memory model](https://doc.rust-lang.org/std/sync/atomic/index.html ).
2020-12-06 19:12:16 +00:00
JCTyBlaidd
4cf614ef33
Update release sequence handling to C++20 semantics.
2020-12-06 16:58:32 +00:00
Mara Bos
de5b26d7f0
Use new std::alloc::Allocator interface.
...
This was changed in core.
2020-12-05 00:13:33 +01:00
bors
d473242ecd
Auto merge of #1617 - JCTyblaidd:data_race_detector, r=RalfJung
...
Add simple data-race detector
Partially fixes data-race detection, see #1372 , based on Dynamic Race Detection for C++11
- This does not explore weak memory behaviour, only exploring one sequentially consistent ordering.
- Data-race detection is only enabled after the first thread is created, so should have minimal overhead for non-concurrent execution.
- ~~Does not attempt to re-use thread id's so creating and joining threads lots of time in an execution will result in the vector clocks growing in size and slowing down program execution~~ It does now
2020-11-29 18:44:28 +00:00
JCTyBlaidd
55fc552d99
Apply review changes, incrementing the clocks twice is an unnecessary hold-over from earlier versions so fixed.
2020-11-27 19:26:06 +00:00
JCTyBlaidd
3268f56a97
Fix review changes
2020-11-22 17:28:12 +00:00
Ralf Jung
7a2c2f8dde
rustup; test sorting for provenance-correctness
2020-11-22 18:08:57 +01:00
est31
4de113acba
Normalize column numbers
2020-11-19 09:21:11 +01:00
JCTyBlaidd
a3b7839bbd
Add comment regarding seq-cst ordering & add test for disabling the data-race detector.
2020-11-15 20:12:58 +00:00
JCTyBlaidd
69fb6413dd
Tidy up comments and function layout, should fix most of the review notes.
2020-11-15 18:30:26 +00:00
Ralf Jung
915d091973
rustup; less strict timing tests
2020-11-12 16:50:24 +01:00
Ralf Jung
df0de77fd1
test btreemap with raw ptr tracking
2020-11-10 16:51:55 +01:00
Ralf Jung
db718d72ae
remove some unnecessary feature flags
2020-11-10 16:51:07 +01:00
Ralf Jung
737ecef376
rustup and update test
2020-11-10 16:47:56 +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
ed32b260f9
Add tests, and fix bug in atomic RMW relaxed stores
2020-11-02 02:57:06 +00: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
Ralf Jung
e7246be4f0
backtrace tests: support more ways of checking out Rust locally
2020-10-31 13:47:42 +01:00
Ralf Jung
2a4faf638b
increase timeout to avoid spurious test failures
2020-10-30 18:59:58 +01:00
Ralf Jung
1ad827c511
rustup
2020-10-29 20:57:38 +01: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
bf54607ba0
test raw pointer tracking; we cannot track raw pointers on Windows
2020-10-28 13:54:50 +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
ecf330f39e
test Box::into_raw aliasing
2020-10-27 17:26:36 +01:00
Ralf Jung
ddcc4f241e
rustup; make panic output less dependent on stdlib internals
2020-10-25 10:00:50 +01:00
Ralf Jung
ad07b2bd44
rustup; increase slack for timing tests
2020-10-22 09:47:02 +02:00