Commit Graph
117 Commits
Author SHA1 Message Date
Patrick Pelissier da9483aa3a Add reference to C standard about CONST_CAST. 2018-05-22 19:38:38 +02:00
Patrick Pelissier a1a49ebf4b Update comment 2018-05-20 22:38:00 +02:00
Patrick Pelissier 7f887720cc Add methods PUSH_MOVE & POP_MOVE. 2018-05-19 11:09:36 +02:00
Patrick Pelissier 2fbea43a5c Add M_MAP3 macro. 2018-05-16 20:00:41 +02:00
Patrick Pelissier 2af35673bb Update comments about TODO. 2018-05-15 21:02:34 +02:00
Patrick Pelissier c34fb94e77 Proper export of the method PARSE_STR 2018-05-03 13:19:36 +02:00
Patrick Pelissier 47a49263ae Add function _parse_str for string. 2018-05-02 19:36:51 +02:00
Patrick Pelissier 2eaeb26d4c Make Serialization input of array / dict more flexible
by supporting space characters within the input.
2018-04-30 11:02:42 +02:00
Patrick Pelissier b684a62f8b Add more local information about the origin of a failure. 2018-04-16 22:05:17 +02:00
Patrick Pelissier 175fb46508 Fix issue for 32 bits system 2018-04-15 00:48:31 +02:00
Patrick Pelissier b5f4f2fc4b Finish splitting m_core_clz into m_core_clz32 & m_core_clz64 2018-04-15 00:10:38 +02:00
Patrick Pélissier d97f46133b Fix issue for 32 bits systems
mpz_core_clz wasn't reproductible for 32 bits system.
2018-04-14 23:08:53 +02:00
Patrick Pelissier a5cbc3f34a Rename method into GET_KEY. Add method SET_KEY 2018-03-13 22:22:26 +01:00
Patrick Pelissier dd4f4761de Add GET_AT method
:
2018-03-10 19:26:59 +01:00
Patrick Pelissier 96f3533e46 Fix bug for default oplist used by M_A1_OPLIST
o
2018-03-10 18:52:16 +01:00
Patrick Pelissier 774e1720b7 Add M_SWAP_DEFAULT 2018-03-10 18:48:27 +01:00
Patrick Pelissier 83f8eadce9 Fix name of variable without a macro (shadow variable) 2018-03-10 18:09:23 +01:00
Patrick Pelissier b7c86ee01e Fix detection
of GCC
2018-03-06 21:58:41 +01:00
Patrick Pelissier 29d181c113 Add macro M_CTYPE_FROM_FIELD like M_TYPE_FROM_FIELD
but for const pointer.
2018-02-17 19:19:09 +01:00
Patrick Pelissier 646df4f34e Move aligned cache line constant to commun header. 2018-02-10 08:20:37 +01:00
Patrick Pelissier 603bdd2941 Add new macro M_DEFAULT_ARGS 2018-01-29 21:59:39 +01:00
Patrick Pelissier 6fb7a4f24b Update doc 2018-01-29 21:21:54 +01:00
Patrick Pelissier 210e05f7fc Update copyright to 2018 2018-01-29 20:28:30 +01:00
Patrick Pelissier 12709cc81b Add new default oplist : M_A1_OPLIST 2017-12-24 14:05:38 +01:00
Patrick Pelissier df3508bc0c Add M_POD_OPLIST for plain old data oplist 2017-12-01 23:11:30 +01:00
Patrick Pelissier 453b54856e Move CLZ from genint to core 2017-11-12 09:41:10 +01:00
Patrick Pelissier 7b3445ee99 Remove TODO 2017-10-25 22:08:26 +02:00
Patrick Pelissier 325d118260 Clean up 2017-10-25 22:01:30 +02:00
Patrick Pelissier ca9f36b66c Fix issue detected by undefined sanitizer:
shift of signed integers is undefined.
2017-09-27 23:09:52 +02:00
Patrick Pelissier a89db9ea56 Rewrite M_MAP like the others.
Increase limit to 52.
2017-09-22 22:16:28 +02:00
Patrick Pelissier 618c57d622 Fix naming convention 2017-09-22 22:11:47 +02:00
Patrick Pelissier 5b569e4811 Simplify M_MAP2 as it can reuse partially what has been done for M_MAP2B 2017-09-22 22:09:29 +02:00
Patrick Pelissier 021b70b83e Rewrite M_REDUCE2
(to be like the others)
2017-09-22 22:06:09 +02:00
Patrick Pelissier 89e02239de Add M_MAP_C & M_MAP2_C 2017-09-22 21:53:13 +02:00
Patrick Pelissier 9a1a0ebec3 Increase M_INC & M_DEC & M_NOTEQUAL & M_RET_ARGn to 52
Add M_SKIP, M_KEEP & M_MID macros.
Define M_RET_ARG

Rewrite M_SEQ using M_MID

Rewrite M_ADD & M_SUB avoiding recursivity (much faster).
2017-09-21 22:19:05 +02:00
Patrick Pelissier c79626225b Rewrite M_REDUCE to be much faster.
Rewrite M_SEQ to be much faster.
Change interface of M_SEQ as we can easily apply M_MAP / M_MAP2 to further apply macro.
2017-09-20 23:40:22 +02:00
Patrick Pelissier 793f834a56 Rewrite M_MAP2B using another trick which is MUCH faster for compiler.
Reduce compilation time of bench-mlib from 5s to 1s!
2017-09-18 23:03:42 +02:00
Patrick Pelissier 7e19d1863c Add note 2017-09-16 19:01:06 +02:00
Patrick Pelissier 0b44a55b6a Replace method EXPECTED_SIZE by INC_ALLOC so that all the way of increasing
the size in case of reallocation can be configured and not only the minimum
size.
2017-09-16 18:46:22 +02:00
Patrick Pelissier 2e564088b0 Simplify the inclusion of headers. 2017-09-16 10:14:45 +02:00
Patrick Pelissier 1930bdeac1 _DEF macros checks if a global oplist is register if there is no one
given in the macro call. If it founds one, it will be it instead
of M_DEFAULT_OPLIST.
2017-09-16 08:31:22 +02:00
Patrick Pelissier 977e857ae9 Remove SAFE_C 2017-09-13 23:50:29 +02:00
Patrick Pelissier 914661602c Increase compilation time (from 12s to 4.5s) 2017-09-10 21:28:01 +02:00
Patrick Pelissier d7c4ca1de5 Add support for global oplist.
Global oplists are global macro defined as M_OPL_##type

Add support of global oplist for macro M_EACH & M_LET.
Partial fix #9
2017-09-10 10:04:39 +02:00
Patrick Pelissier 4d9405d564 Improve M_OPLIST_P computation. 2017-09-09 23:36:01 +02:00
Patrick Pelissier 18ae085701 Expand DO_INIT_MOVE to use MOVE_DEFAULT if the INIT_MOVE method
was not disabled.
2017-09-06 22:52:57 +02:00
Patrick Pelissier df1a9e9c88 Add M_TEST_DISABLED_METHOD_P 2017-09-06 21:56:45 +02:00
Patrick Pelissier 0c03d42b98 Add 64 bits variant of core_hash (nearly twice faster). 2017-08-23 08:22:59 +02:00
Patrick Pelissier d97741b6a9 Update to use FNVHASH for internal hash calculation for object.
(Not for memory layout).
2017-08-17 20:45:46 +02:00
Patrick Pelissier 60c7388bd6 Fix a hash function. 2017-08-17 20:35:16 +02:00