637 Commits

Author SHA1 Message Date
Jorge Aparicio
63a6db3973 ci: use latest nightly to test thumbv6m 2017-12-21 14:03:12 +01:00
Jorge Aparicio
0869d70877 impl Debug, PartialEq & Eq 2017-12-21 13:59:18 +01:00
homunkulus
c644d4cf13 Auto merge of #13 - fluffysquirrels:resize, r=japaric
Add methods Vec::resize() and Vec::resize_default()

Semantics are the same as their equivalents in std::vec::Vec.
2017-12-20 08:59:52 +00:00
Alex Helfet
0917beb92a Add method Vec::resize_default(). 2017-12-19 20:08:40 +00:00
Alex Helfet
4b33946858 Add method Vec::resize(). 2017-12-19 20:03:17 +00:00
Alex Helfet
692bd418f1 Add asserts for Vec::len() in test push_and_pop() (was sanity). 2017-12-19 20:02:25 +00:00
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