homunkulus
5b91d6821a
Auto merge of #11 - japaric:release, r=japaric
...
v0.2.0
None
v0.2.0
2017-11-22 19:57:06 +00:00
Jorge Aparicio
9d8210761c
v0.2.0
2017-11-22 20:56:32 +01:00
homunkulus
cd538447c9
Auto merge of #10 - pftbest:tsan_write_after_read, r=japaric
...
What if tsan is right?
Is speedup from one less barrier worth the risk in this case?
2017-11-22 18:46:19 +00:00
Vadzim Dambrouski
e5e24f0844
What if tsan is right?
2017-11-09 22:04:17 +03:00
homunkulus
a885d6a47e
Auto merge of #9 - japaric:contention, r=japaric
...
add contention test
This needs to be fixed before the next release
Interestingly I see that the test passes when compiled without optimizations but fails when
optimized. Perhaps there's some UB in here.
cc @pftbest
2017-11-09 15:55:09 +00:00
Jorge Aparicio
ffcd423e67
fix the contention test
...
patch by @pftbest ❤️
2017-11-09 16:54:30 +01:00
Jorge Aparicio
40994962e2
add contention test
2017-11-09 15:33:54 +01:00
homunkulus
612bf44a78
Auto merge of #8 - japaric:atomic, r=japaric
...
use atomics where available
cc #5
cc @pftbest
2017-11-09 01:28:45 +00:00
Jorge Aparicio
30ea33c349
relax the lifetime constraint of RingBuffer.split
...
also
- add a "`split` freezes the ring buffer" compile fail test
- hide compile-fail doc tests
- add scoped threads tests
2017-11-09 02:27:01 +01:00
Jorge Aparicio
731e8ae150
rewrite the test for less unsafety
2017-11-09 02:09:38 +01:00
Jorge Aparicio
5ff961c3ad
tsan: deal with the mangled names
2017-11-09 01:37:48 +01:00
Jorge Aparicio
9398aafe61
work around rust-lang/rust#45802
2017-11-09 01:37:30 +01:00
Jorge Aparicio
9faea687d1
load_acquire -> load_relaxed
2017-11-08 23:06:25 +01:00
Jorge Aparicio
9533e27f44
test two consecutive operations
2017-11-08 22:51:55 +01:00
Jorge Aparicio
37c8b5b637
create our own AtomicUsize
...
which works on thumbv6m-none-eabi and probably other targets with max-atomic-width = 0
2017-11-08 22:12:24 +01:00
Jorge Aparicio
978f0ee2de
add a compiler barrier
2017-11-08 00:50:26 +01:00
Jorge Aparicio
158d19b45a
actually execute ci/script.sh
2017-10-31 22:01:25 +01:00
Jorge Aparicio
f9a3dfcc89
also test in release
2017-10-31 21:56:33 +01:00
Jorge Aparicio
4a6bf95f19
add tsan test
2017-10-31 21:30:43 +01:00
Jorge Aparicio
55f891e64f
use atomics where available
...
cc #5
2017-10-31 21:26:02 +01:00
homunkulus
f7ca3b5ec6
Auto merge of #7 - japaric:refactor, r=japaric
...
use get_unchecked() instead of as_ptr().offset()
None
2017-10-31 18:22:53 +00:00
Jorge Aparicio
12d501913e
use get_unchecked() instead of as_ptr().offset()
2017-10-31 19:22:09 +01:00
homunkulus
10c5542c98
Auto merge of #4 - japaric:v2, r=japaric
...
support arrays of any size, don't require an initialization value, ..
single producer single consumer support for ring buffer
2017-10-31 17:50:08 +00:00
Jorge Aparicio
da5757a71b
add examples and cfail tests
2017-10-31 17:59:47 +01:00
Jorge Aparicio
054f291b31
add CI
2017-10-31 17:09:35 +01:00
Jorge Aparicio
e841c8a664
update the documentation
2017-10-31 16:48:11 +01:00
Jorge Aparicio
09682676ae
don't use indexing to elide bound checks
2017-10-31 14:50:26 +01:00
Jorge Aparicio
7e91814cf8
support arrays of any size, don't require an initialization value, ..
...
single producer single consumer support for ring buffer
2017-10-03 16:04:27 +02:00
Jorge Aparicio
f515ed9ead
v0.1.0
v0.1.0
2017-04-27 16:25:57 -05:00
Jorge Aparicio
2d8ff5b066
fix bug in Vec.push
...
the length of the vector wasn't being incremented
2017-03-17 12:07:23 -05:00
Jorge Aparicio
1d9cdb1ae1
initial commit
2017-03-05 00:30:10 -05:00