Commit Graph
933 Commits
Author SHA1 Message Date
Patrick Pelissier 2b2ebecae7 Improve comments. 2018-01-23 23:03:02 +01:00
Patrick Pelissier 69cbd61915 Document string API. 2018-01-23 22:53:37 +01:00
Patrick Pelissier 4d41774345 Rename STRING_CONTRACT into internal macro STRINGI_CONTRACT 2018-01-23 21:45:45 +01:00
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