Patrick Pelissier
ff6772aaa7
Ignore depend files
2018-01-13 13:55:36 +01:00
Patrick Pelissier
bbe9d43532
Move chapter ERRORS below
2018-01-13 00:14:52 +01:00
Patrick Pelissier
6549bea3e0
Fix issue for BSD
2018-01-12 20:11:11 +01:00
Patrick Pelissier
9d727589aa
Fix data race reported by thread sanitinizer
2018-01-12 18:58:27 +01:00
Patrick Pelissier
aede0547d3
Optimization: replace a division into a conditional move.
2018-01-12 18:56:01 +01:00
Patrick Pelissier
55332d61fd
Fix data race for buffer in POP_RELEASE mode.
2018-01-12 18:52:34 +01:00
Patrick Pelissier
83eeb5d6d0
Make the code more robust
2018-01-12 18:48:38 +01:00
Patrick Pelissier
5eaf796aab
Remove warnings
2018-01-12 18:46:26 +01:00
Patrick Pelissier
d46c40d3fa
Don't compute coverage of the float expansion.
2018-01-09 20:05:05 +01:00
Patrick Pelissier
2461afa573
Improve coverage suite.
2018-01-09 20:03:05 +01:00
Patrick Pelissier
6acacf5efe
Fix issue for hash computation.
2018-01-09 20:02:53 +01:00
Patrick Pelissier
075a74ea0c
Don't expand contract for coverage.
2018-01-09 18:52:18 +01:00
Patrick Pelissier
f9ddc43349
Add bench k-nucleotide as per
...
http://benchmarksgame.alioth.debian.org/u64q/knucleotide.html
2018-01-09 18:44:11 +01:00
Patrick Pelissier
1c9a232a9d
Add 'worker_flush' function.
...
Factorization of the exec function.
2018-01-07 22:15:58 +01:00
Patrick Pelissier
9c727a8d8c
Update doc
2018-01-07 21:57:23 +01:00
Patrick Pelissier
7c241c65de
Add new lib for smart pointers in Gnu C
2018-01-07 00:09:38 +01:00
Patrick Pelissier
4f3823bfeb
Add new function _blocking allowing to use
...
runtime behavior of the blocking characteristic of the
buffer regardless on how it has been configured.
2018-01-07 00:07:27 +01:00
Patrick Pelissier
3f7b16c736
If the size is constant (!= 0) when defining the buffer
...
then the array is embedded within the structure rather
than allocated when initialization of the structure
occurs.
2018-01-06 22:57:14 +01:00
Patrick Pelissier
362fbb39d4
Update comments
2018-01-06 21:58:30 +01:00
Patrick Pelissier
38fe24085f
Improve comments.
2018-01-05 23:26:27 +01:00
Patrick Pelissier
af3d5cb273
Proper semantic
2018-01-05 20:46:28 +01:00
Patrick Pelissier
9200b742c5
Add iterators for priority queue.
2018-01-04 22:09:20 +01:00
Patrick Pelissier
f39c8ebaba
Fix comment
2018-01-04 22:08:08 +01:00
Patrick Pelissier
bbb1831c5f
Add missing exit(0)
2017-12-31 11:42:56 +01:00
Patrick Pelissier
ecae3d0e1e
Update doc
2017-12-31 02:10:18 +01:00
Patrick Pelissier
2d2ae8b509
Fix wrong name of constants for CLANG
V0.1.0
2017-12-30 12:20:20 +01:00
Patrick Pelissier
2c695526dd
Fix issue with stricter C++ compiler with atomic definition.
...
(It still feels strange to not be able to store 0 in an atomic unsigned long).
2017-12-30 12:17:55 +01:00
Patrick Pelissier
523fc84bd6
Fix issue with C++
2017-12-30 12:05:36 +01:00
Patrick Pelissier
e65abed8a9
Fix issue with C++
2017-12-30 12:05:25 +01:00
Patrick Pelissier
611fdd5f16
Improve coverage for variant
2017-12-30 11:58:36 +01:00
Patrick Pelissier
78cdb263bf
Fix potential data race (?)
2017-12-30 11:40:01 +01:00
Patrick Pelissier
bb867190a4
Improve coverage
2017-12-30 11:39:39 +01:00
Patrick Pelissier
1039239d6c
Add new file about how to make a release
2017-12-30 11:30:49 +01:00
Patrick Pelissier
0ab1a1661b
Add synthesis of the coverage.
2017-12-30 11:29:42 +01:00
Patrick Pelissier
57ec4514d4
Fix bug detected by scan-build
2017-12-30 10:30:49 +01:00
Patrick Pelissier
73fda748fe
Fix issue detected by scan-build
2017-12-30 10:30:36 +01:00
Patrick Pelissier
cc149e6ea6
Fix issue detected by scan-build
2017-12-30 10:23:07 +01:00
Patrick Pelissier
ba920d706a
Fix parsing of variant
2017-12-30 10:11:14 +01:00
Patrick Pelissier
2c6f37aa5f
Add QUEUE MPMC contract.
2017-12-30 01:27:22 +01:00
Patrick Pelissier
d2eacaf0f6
Remove WIP file.
2017-12-29 22:43:59 +01:00
Patrick Pelissier
2e5ca1cc1f
Fix issue when atomic_store is called with atomic_load and
...
there was locks.
the lock taking of atomic_load was performed within the lock
of atomic_store, performing a dead lock.
Fix this by perfoming an evaluation of val before setting
it in atomic_store.
2017-12-28 13:55:13 +01:00
Patrick Pelissier
217c31d6a7
Optimization for the atomic layer with locks:
...
do not perform any lock for amd64 (and x86) architecture
if the word length is less than 8 bytes (or 4 bytes)
as the targeted architecture support it directly.
(strong order)
2017-12-28 13:37:37 +01:00
Patrick Pelissier
985870452c
Remove field _cmp
2017-12-28 12:00:37 +01:00
Patrick Pelissier
a74605088e
Fix issue in case of atomic types being with lock
...
(const atomic_ type is invalid).
2017-12-28 12:00:03 +01:00
Patrick Pelissier
27352d5aca
Update doc
2017-12-28 11:38:32 +01:00
Patrick Pelissier
998f97a95d
Fix doc
2017-12-28 00:36:54 +01:00
Patrick Pelissier
f2344c69ca
Rename worker_block_t into worker_sync_t
...
as it is a synchronization point for workers
not an anonymous block.
2017-12-28 00:03:47 +01:00
Patrick Pelissier
adc7545a42
Rename internal macros to use _USE_ as it can be modified
...
by the user.
2017-12-28 00:01:07 +01:00
Patrick Pelissier
66eff4eb44
Update comments
2017-12-27 23:59:29 +01:00
Patrick Pelissier
31820e7a5d
Fix data race
2017-12-25 23:35:04 +01:00