Ion Gaztañaga
9201bbf83b
- Modify dlmalloc_allocation_command to use alignment info, this requires modifying the dlmalloc_ext wrapper library.
...
- Replace all dlmalloc_malloc uses with dlmalloc_allocation_command to support overaligned types in array allocations.
2026-01-19 01:06:56 +01:00
Ion Gaztañaga
93752fd9ed
Reduce element size, it was accidently committed and it makes regression runners take longer than needed
2026-01-18 16:13:31 +01:00
Ion Gaztañaga
2bc94e2c5e
Fix warning on casting removing const qualifiers
2026-01-18 16:12:20 +01:00
Ion Gaztañaga
e2dcbb58cc
Add "import testing ;" to bench
2025-12-11 15:24:19 +01:00
Ion Gaztañaga
e68a3ac4d9
Add reservable deque to benchmark
2025-09-29 00:44:01 +02:00
Ion Gaztañaga
5be25a65db
Add new deque implementation.
2025-09-20 10:48:50 +02:00
Ion Gaztañaga
38c55cac0f
Add 100% growth factor vector
2025-09-07 19:17:25 +02:00
Ion Gaztañaga
77fb53dbf9
Add new_deque and its test
2025-09-07 19:16:34 +02:00
Ion Gaztañaga
08ded32473
Increase range size to 8 and template the integer type to contemplate both trivial and non-trivial types.
2025-09-06 12:46:25 +02:00
Ion Gaztañaga
c38fe90e9a
Reduce iterations for resgresion tests
2024-05-23 22:53:35 +02:00
Ion Gaztañaga
03abe8c02c
Return start() pointer by value to limit aliasing
2024-04-15 12:53:41 +02:00
Ion Gaztañaga
7c74232a40
Remove Boost.StaticAsser dependency
2024-01-02 19:46:05 +01:00
Ion Gaztañaga
fa14c4763f
Reduce additional BOOST_CONTAINER_FORCEINLINE uses
2023-05-10 22:15:00 +02:00
Ion Gaztañaga
552688c7fc
Simplify dependencies dropping Boost.Core
2023-02-01 23:00:23 +01:00
Ion Gaztañaga
704bf10058
Refactor advanced insertion algorithms and implement a new devector insert strategy, moving elements to the middle if there is a reasonable free capacity at the other end of the container.
2022-09-20 00:22:19 +02:00
Ion Gaztañaga
7b858d5601
Add reserve variant
...
Add "emplace back" and "emplace near end"
2022-08-24 14:40:47 +02:00
Ion Gaztañaga
97b122c951
Add devector-based flat_set/map to bench
2022-08-24 14:28:50 +02:00
Ion Gaztañaga
3f76f9fdf7
Fixes #206 ("operator-> on static_vector::iterator causes cast alignment warning")
2021-12-28 15:17:15 +01:00
Ion Gaztañaga
7f35ef420e
Support Clang's -Wconversion -Wfloat-conversion -Wsign-conversion with -Werror
2021-10-20 00:18:05 +02:00
Ion Gaztañaga
dad2cb2d02
Support GCC's -Wconversion -Wfloat-conversion -Warith-conversion -Wsign-conversion warnings.
2021-10-16 15:57:47 +02:00
Ion Gaztañaga
c0bfb40f55
Don't use allocator::rebind as it is not present on recent c++ standards
2021-04-21 00:39:43 +02:00
Ion Gaztañaga
80697e7c0f
#pragma GCC diagnostic push is available from GCC 4.6, not from GCC 4.5
2021-01-01 23:43:44 +01:00
Ion Gaztañaga
0a0ad0009e
Add support for [[nodiscard]]:
...
- Decorate container and allocator functions.
- Make sure to disable warnings in tests
- Update doxygen documentation to support it
2020-11-05 14:24:35 +01:00
Ion Gaztañaga
525b46055e
- Make sure testsuite works with "exception-handling=off"
2020-10-23 14:14:15 +02:00
Ion Gaztañaga
4bebeb2353
Make sure test suite/examples/bench compile with exceptions disabled (exception-handling=off)
2020-10-22 01:12:59 +02:00
Ion Gaztañaga
2e78cb524c
Unroll operation loop to avoid measuring loop overhead and other modifications to exercise more paths of the insertion functions.
2020-08-11 23:49:13 +02:00
Ion Gaztañaga
efd08d9a0e
Improve timing and add warm-up step
2020-08-10 11:19:01 +02:00
Ion Gaztañaga
ebcd0222b4
Integrate and adapt "devector's", from Thaler Benedek's implementation.
2020-08-10 00:16:58 +02:00
Ion Gaztañaga
f3e2c9cc73
Add simple iteration option for regression runnersa dn save CPU
2018-09-25 09:06:33 +02:00
Ion Gaztañaga
c4a8cac5a1
Fix unused variable warnings
2018-09-15 01:12:17 +02:00
Ion Gaztañaga
139db663a3
* Implemented C++20 contains() for associative containers as specified in P0458R2.
...
* Fixed serious bug in heterogeneous lookup functions (is_transparent was broken).
2018-08-13 15:36:00 +02:00
Ion Gaztañaga
04b0791593
* Fixed adaptive pool bugs
...
* Improved adaptive pool testing enabling invariant checking in debug mode.
* New compile-time and runtime calculated parameters for adaptive_pool.
* New test comparing set with default allocator or adaptive pool
2018-04-29 12:42:04 +02:00
Ion Gaztañaga
fa2494631a
Use namespace dtl instead of container_detail to avoid excessively long symbol names.
2017-11-07 00:51:46 +01:00
Ion Gaztañaga
44919284a9
Change allocator name logic
2017-10-20 00:31:53 +02:00
zerotypos-found
7cb3a6fbe8
[inspection report] remove tabs and fix copyright notice format
2016-12-20 11:03:57 +09:00
Ion Gaztañaga
8f136bc909
Add custom random_shuffle as some old compiler implementations self-swap some elements.
2016-07-31 23:15:39 +02:00
Ion Gaztañaga
e7faf92113
Add missing <cassert> headers
2016-06-25 11:20:36 +02:00
Ion Gaztañaga
16ab9955f2
Reduce bench constants for debug modes
2016-02-23 13:28:17 +01:00
Marshall Clow
cd84bf99c5
Remove use of deprecated macros; use replacements
2015-09-10 13:25:58 -07:00
Ion Gaztañaga
33d2f0f7af
Add Polymorphic Memory Resource utilities and rework the separately compiled library:
...
- Dlmalloc's based C function are boost_cont_xxx no longer exported, but wrapped into C++ linkage dlmalloc_xxx functions to effectively reuse Boost's dynamic library and autolink machinery instead of rewriting machinery to compile the C source file.
- Refactored scoped_allocator_adaptor's construct logic as it was shared with polymorphic allocator's one. Moved common logic to detail/dispatch_uses_allocator.hpp. Refactored also scoped_allocator_adaptor test utilities to be reused with polymorphic_allocator tests.
2015-09-07 19:16:46 +02:00
Ion Gaztañaga
097da3f73c
Rename stable vector bench to avoid too long names that might give problems in some filesystems.
2015-06-04 11:39:53 +02:00
Ion Gaztañaga
10d027aa9c
Include boost/config.hpp before testinG BOOST_HAS_PRAGMA_ONCE.
2015-02-02 15:26:53 +01:00
Ion Gaztañaga
a322203a89
Replaced _MSC_VER with BOOST_HAS_PRAGMA_ONCE before #pragma once.
2015-01-10 12:50:17 +01:00
Adam Wulkiewicz
099966e1cf
Fix varray_detail::construct() (version emulating perfect forwarding).
2015-01-04 04:00:46 +01:00
Ion Gaztañaga
a369e3c8c5
Avoid instantiating iterator tags to allow iterators that define iterator_categories with forward declared tags.
2015-01-04 02:29:15 +01:00
Ion Gaztañaga
360957a797
Massive dependency reduction. Removed dependency on several boost libraries and standard C++ headers.
2015-01-02 19:34:21 +01:00
Ion Gaztañaga
955248b739
Replace "Allocator" template parameter with "A", according to the standard.
2014-12-11 22:01:58 +01:00
Ion Gaztañaga
afd1c2d266
Use boost::adl_move_swap instead of own swap utility
...
Imported basic algorithms from Boost.Intrusive
2014-11-26 19:33:27 +01:00
Ion Gaztañaga
7971dc6602
Refactored uses of <iterator> and <algorithm> to avoid dependencies where possible.
2014-11-26 07:08:06 +01:00
Ion Gaztañaga
d19b012d53
Reduced include dependencies:
...
- Replaced boost/move/move.hpp with boost/move/utility_core.hpp
- Replaces <new> with placement_new.hpp
- Removed some unneeded std includes.
2014-09-26 08:12:40 +02:00