James E. King III
db5da12bcd
Update CI
...
This fixes #41
2019-06-23 20:19:38 -04:00
Miutsuru kariya
ab192ca5f1
Make default constructor non-explicit ( #48 )
...
It is better to support copy-initialization with default constructor. cf. LWG Issue 2193. Default constructors for standard library containers are explicit.
2019-06-12 19:45:11 -04:00
James E. King III
26918f80d5
Add support for std::hash and unit tests for hashing
2019-06-07 13:55:57 -04:00
Alexey Stukalov
229bced733
hash_value() for dynamic_bitset (support boost::hash)
2019-06-07 13:55:57 -04:00
Glen Fernandes
ccb380a1bc
Switch from deprecated Test to LightweightTest
2019-06-07 07:02:31 -04:00
Sam Day
4de44e9112
Add basic CMake support.
2019-06-06 11:37:47 -04:00
James E. King III
3f650f50c3
Since coverity with gcc hangs, trying clang
2019-04-26 12:56:07 -04:00
James E. King III
b64e20079c
Fix coverity scan job
2019-04-26 09:48:03 -04:00
Andrey Semashev
83bdf5a335
Reenabled popcnt for MSVC, improved perf by leveraging ILP.
...
On MSVC and compatible compilers popcnt is now enabled if it is known at
compile time that the target CPU supports popcnt instruction. Unfortunately,
MSVC does not have a predefined macro specifically for popcnt, so we have
to test for AVX instead. __POPCNT__ is still tested in case clang or user
defines it.
For MSVC, the 64-bit popcount is now also implemented on 32-bit targets by
issuing two 32-bit popcnt instructions. For gcc and compatible compilers,
16-bit popcount implementation is provided, which is better than the generic
popcount implementation, but still slower than byte-wise do_count.
The do_count algorithm implementations have been improved by leveraging
instruction level parallelism better, which gives 0 to 27% improvement and
no regressions.
Also made code formatting more consistent and reduced code duplication between
do_count implementations.
2019-04-26 08:55:53 -04:00
Tinko Bartels
c747bec057
Change sgi/stl links to boost.org.
2019-04-23 13:32:20 -04:00
James E. King III
f506b99f70
Update CI and change boost/timer deprecated use
2019-04-23 10:40:34 -04:00
Tinko Bartels
1b8b128f29
Replaced links to sgi.com with links to a mirror.
2019-04-22 12:20:38 -04:00
James E. King III
91625cece1
Disable hardware supported popcount on MSVC.
...
- the new implementation failed to check for hardware support
- the behavior was undefined on platforms without SSE4
2019-02-22 08:36:12 -05:00
James E. King III
a580c496fa
fix set() ambiguity with range based call and default value
2018-11-03 16:45:29 -04:00
James E. King III
1ca15c5fcd
Enhance CI with libc++ and VC2017 strict jobs
2018-11-03 15:54:53 -04:00
James E. King III
512ac37529
Enhance Travis CI build coverage
2018-10-28 10:42:35 -04:00
James E. King III
8e265c49f8
cleanup pending and detail headers
2018-10-21 12:44:12 -04:00
Evgeny Shulgin
a449a11a80
Add set/reset/flip functions to change sequences ( #27 )
...
* Add set(pos, len) function to change sequences
* Add reset(pos, len) function to clear sequences
* Add flip(pos, len) function to flip sequences
* Add custom range operations
2018-10-12 08:07:01 -04:00
James E. King III
a0735943f2
Merge branch 'master' into develop
2018-10-12 11:47:12 +00:00
Glen Fernandes
8fe1db1b08
Correct e-mail address
2018-09-23 08:55:34 -04:00
Glen Fernandes
d7d6555f85
Correct e-mail address
2018-09-05 08:11:50 -04:00
Evgeny Shulgin
a90fe08934
Add hardware supported popcount
2018-09-01 21:56:57 -04:00
James E. King III
b944aa3008
fix broken ci jobs in travis
2018-07-14 20:51:19 +00:00
James E. King III
759af5e853
Fix coverity badges in readme
2018-07-04 08:05:54 -04:00
James E. King III
7b6379a356
Add CI framework used in a number of other repositories:
...
- travis with valgrind, cppcheck, ubsan, codecov, covscan (future)
- appveyor with MSVC 2010 through 2017, cygwin 32/64, mingw 32/64
- README, LICENSE, etc.
2018-07-04 07:49:11 -04:00
Edward Diener
4f54d83981
Merge pull request #21 from NAThompson/remove_deprecated_header
...
Replace deprecated header with non-deprecated
2018-02-11 16:50:56 -05:00
Nick Thompson
4cac68e762
Remove deprecated header.
2018-02-11 15:08:19 -06:00
Marshall Clow
d3eb4faf0c
Fix some warnings from gcc - https://github.com/boostorg/dynamic_bitset/issues/19
2018-01-31 11:11:12 -08:00
Marshall Clow
3f3662d39d
Fix comment block in Jamfile; addresses https://github.com/boostorg/dynamic_bitset/issues/20
2018-01-31 09:27:51 -08:00
Edward Diener
184d1ba7ad
Merge pull request #17 from DanielaE/feature/squash-narrowing-warnings
...
squash compiler warnings due to wrong order of type-cast and integral…
2017-06-27 09:36:10 -04:00
Daniela Engert
5b39db5ba0
squash compiler warnings due to wrong order of type-cast and integral type promotion
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-05-25 10:29:34 +02:00
Edward Diener
f4e49ff56f
Revert masks change
2017-05-18 11:52:03 -04:00
Edward Diener
0c8640efb8
Merge branch 'develop' into LessThanFix
2017-05-17 20:59:44 -04:00
Edward Diener
0ead484c37
Implemented lexigraphic compare when bitsets have different lengths.
2017-05-17 20:59:08 -04:00
Edward Diener
6cafa21c6d
Fix for gcc and clang using libstdc++.
2017-05-15 16:29:38 -04:00
Edward Diener
dbfce8e174
Allow different sized bitsets to be compared for <, >, <=, >=
2017-05-15 13:03:15 -04:00
Marshall Clow
684b6117dd
Merge pull request #16 from DanielaE/fix/wrong-parameter-type
...
fix wrong parameter type in constructor of dynamic_bitset::reference
2017-04-16 07:03:51 -07:00
Daniela Engert
572e9d78ff
fix wrong parameter type in constructor of dynamic_bitset::reference
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-03-18 13:49:16 +01:00
Edward Diener
e49b08a289
Added expected doc subdirectory
2017-01-09 03:09:28 -05:00
Edward Diener
d644c83b13
Merge pull request #14 from sehe/develop
...
Add support for Boost Serialization of dynamic_bitset<>
2017-01-08 23:35:27 -05:00
Seth Heeren
a50768c085
Add tests for serialization support
2017-01-09 03:26:14 +01:00
Seth Heeren
91895380c6
Add optional serialization support
...
This implemenents non-intrusive serialization support to dynamic_bitset<> based on Boost Serialization
- it supports archives that require named elements
- it gets private member access using a nested friend class (to decouple the interface entirely)
- relies on boost/serialization/vector.hpp for actual implementation
2017-01-09 03:19:57 +01:00
Marshall Clow
7259281f5b
Merge pull request #15 from danieljames/move-tests
...
This looks fine to me. I'll watch the test bots, and merge to master in a week or so.
2016-07-01 08:24:46 -07:00
Daniel
92af4f52e9
Dummy jamfile for the super project's build script.
2016-07-01 09:10:18 +01:00
Daniel
d86f4ebddb
Move tests into test subdirectory
2016-07-01 09:08:51 +01:00
ricky65
340822f979
Add capacity(), reserve(), and shrink_to_fit().
2015-06-03 22:45:16 -07:00
Ahmed Charles
1c5e30fe49
Merge branch 'master' into develop
2015-06-03 22:44:34 -07:00
Ahmed Charles
0f48010783
Merge branch 'develop'
2015-06-03 22:43:44 -07:00
Ahmed Charles
1d59cc4788
Add converting constructor to minimal_allocator.
2015-05-19 00:36:26 -07:00
Marshall Clow
9879dd05b5
Merge changes from develop for the 1.58.0 release
2015-04-01 10:29:10 -07:00