Patrick Pelissier
93a1be616d
Rename parameter pool to context
2025-05-07 21:02:24 +02:00
Patrick Pelissier
692c0487af
Update oplist for new memory model
2025-05-07 21:02:24 +02:00
Patrick Pelissier
22ccae74c3
Minor optimization of stable_sort
2025-05-07 21:02:24 +02:00
Patrick Pelissier
586d0ae13a
Update documentation
2025-05-07 21:02:24 +02:00
Patrick Pelissier
c7bad98a7e
Port ARRAY oplist to support local memcontext
2025-05-07 21:02:24 +02:00
Patrick Pelissier
8e3a06b852
Simplify OPLIST definition as INIT_MOVE is mandatory for arrays
2025-05-07 21:02:24 +02:00
Patrick Pelissier
d548117538
Make M*LIB stricter for INIT_MOVE operator:
...
* either the default INIT_MOVE operator works ('=')
* either an INIT_MOVE method is defined
* or it is disabled.
As a consequence, fix usage of testobj_t and mpz_t in the repository
The emulation layer of INIT_MOVE using INIT_SET+CLEAR is removed:
it wasn't working correctly with the local memory context
(INIT_MOVE doesn't need any local memory context to work,
whereas INIT_SET/CLEAR does)
Remove macro M_DO_INIT_MOVE as it is now useless and uses M_CALL_INIT_MOVE.
The INIT_MOVE default method no longer sets the old 'src' to '0':
it was useless (it doesn't catch any error) and complicates compiler parsing.
Fix POD & A1 & CSTR & classic oplists definition (missing INIT_MOVE operators).
2025-05-07 21:02:24 +02:00
Patrick Pelissier
3a39ce5a4a
Reformat
2025-05-07 21:02:24 +02:00
Patrick Pelissier
fa41f3affd
M_INIT_VAI supports API
2025-05-07 21:02:24 +02:00
Patrick Pelissier
0d0747dea9
Update oplists
2025-05-07 21:02:24 +02:00
Patrick Pelissier
ab75397e21
TCC now supports m-generic
2025-05-07 21:02:24 +02:00
Patrick Pelissier
cc97aa887f
Fix reference
2025-05-07 21:02:24 +02:00
Patrick Pelissier
b275859a37
Fix issue if BString is empty
2025-05-07 21:02:24 +02:00
Patrick Pelissier
256ff916a2
Port serial to new memory format
2025-05-07 21:02:24 +02:00
Patrick Pelissier
77195fb1d0
Remove m-mutex header
2025-05-07 21:02:24 +02:00
Patrick Pelissier
c2cfb2f0a0
Cleanup & support of M_USE_GLOBAL_POOL
2025-05-07 21:02:24 +02:00
Patrick Pelissier
03cceafd73
Update
2025-05-07 21:02:24 +02:00
Patrick Pelissier
505e2c4a62
Fix spelling
2025-05-07 21:02:24 +02:00
Patrick Pelissier
daadf693f7
Update doc
2025-05-07 21:02:24 +02:00
Patrick Pelissier
98b3bbd7a1
Fix for MACOS
2025-05-07 21:02:24 +02:00
Patrick Pelissier
decec8f7ae
Fix for tcc
2025-05-07 21:02:24 +02:00
Patrick Pelissier
ce3f674ba8
Add new header m-queue (Doc to do)
2025-05-07 21:02:24 +02:00
Patrick Pelissier
01f5228a36
Port to new memory model:
...
Communication thread buffer needs to use the global pool,
and not a local pool, since the allocation is done accross
several threads.
Therefore the non thread fixed queue & stack interfaces are moved into
a dedicated header (m-queue)
and remove support for non thread stack & queue into m-buffer
Remove also deprecated policy too.
2025-05-07 21:02:24 +02:00
Patrick Pelissier
a7294abe0c
Update documentation and error message
2025-05-07 21:02:24 +02:00
Patrick Pelissier
77e5666802
Update string oplist definition with pool
2025-05-07 21:02:24 +02:00
Patrick Pelissier
689527c2dc
Port m-shared-ptr to new memory model
...
(use global pool)
2025-05-07 21:02:24 +02:00
Patrick Pelissier
5d1ebdf5bb
Update obsolete header files:
...
* remove obsolete m-mutex header file
* mark m-concurrent, m-shared and m-i-shared as obsolete (They won't support new memory model)
2025-05-07 21:02:24 +02:00
Patrick Pelissier
10d918bbc9
Port to new memory model (add global context 0)
2025-05-07 21:02:24 +02:00
Patrick Pelissier
8069fae3d5
Remove use of invalid representation, which is refused by clang & C++
2025-05-07 21:02:24 +02:00
Patrick Pelissier
94dd0a5571
Add example of using pool
2025-05-07 21:02:24 +02:00
Patrick Pelissier
32a3d95104
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
d08aeb32fe
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
26fc2bcffe
Port tree to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
7617048073
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
57e7510ae7
Format
2025-05-07 21:02:23 +02:00
Patrick Pelissier
324ba5d256
Port to new memory model: M_MEMORY_FULL cannot return anymore
2025-05-07 21:02:23 +02:00
Patrick Pelissier
8939b4d046
New memory model is for 0.8.0 version
2025-05-07 21:02:23 +02:00
Patrick Pelissier
1cf7c4fa4d
Port to new memory model: M_MEMORY_FULL cannot return anymore
2025-05-07 21:02:23 +02:00
Patrick Pelissier
839e7c2957
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
06e3046268
Port to new memory interface
2025-05-07 21:02:23 +02:00
Patrick Pelissier
e959c001aa
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
bcc9f2c894
Port B+TREE to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
6e828eabaf
Port list to new memory pool
...
Remove support for mempool. A new support for mempool should be provided later through the new memory context parameter (TODO / better API)
2025-05-07 21:02:23 +02:00
Patrick Pelissier
7677b13d8a
Update contract comment.
2025-05-07 21:02:23 +02:00
Patrick Pelissier
e16c6987e4
Port to new memory interface (remove mempool support, but it was undocumented)
2025-05-07 21:02:23 +02:00
Patrick Pelissier
aa4cbfebdb
Port to new memory interface
2025-05-07 21:02:23 +02:00
Patrick Pelissier
66f376ea80
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
6de8eab5c3
Add comments, rename macro for maintenance
2025-05-07 21:02:23 +02:00
Patrick Pelissier
9e63289a38
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
bf617ab6ab
Port to new memory interface (WIP)
2025-05-07 21:02:23 +02:00
Patrick Pelissier
3f8c30e592
Port ARRAY & STRING to new memory model with memory context support
2025-05-07 21:02:23 +02:00
Patrick Pelissier
37b2f4d2ac
Update test suite to properly allocation & deallocation
2025-05-07 21:02:23 +02:00
Patrick Pelissier
50e8d1f469
Fix old size parameter for memory allocation
2025-05-07 21:02:23 +02:00
Patrick Pelissier
d40a6e5bc3
Document limitation
2025-05-07 21:02:23 +02:00
Patrick Pelissier
b4c29d5423
Update spec
2025-05-07 21:02:23 +02:00
Patrick Pelissier
9f4f9d1d5d
Update
2025-05-07 21:02:23 +02:00
Patrick Pelissier
1e196fe22a
Port to new spec M_MEMORY_FULL
2025-05-07 21:02:23 +02:00
Patrick Pelissier
450d2c9000
Update spec of M_MEMORY_FULL
2025-05-07 21:02:23 +02:00
Patrick Pelissier
93112a5a7c
Update example
2025-05-07 21:02:23 +02:00
Patrick Pelissier
1f2584ccea
Port to new memory model
2025-05-07 21:02:23 +02:00
Patrick Pelissier
5b4c9cd618
Update spec of memory functions
2025-05-07 21:02:23 +02:00
Patrick Pelissier
f4e3d9cd4c
Release V0.7.4
2025-05-07 21:02:01 +02:00
Patrick Pelissier
4988661b7d
Fix target armv6 (2) for Continuous Integration
2025-05-06 00:47:29 +02:00
Patrick Pelissier
7033a922c7
Fix target armv6 for Continuous Integration
2025-05-05 23:50:43 +02:00
Patrick Pelissier
dd607252eb
Add target risc64, ppc64le and armv6 for Continuous Integration
2025-05-05 23:46:09 +02:00
Patrick Pelissier
73da9a4316
Update obsolete header section
2025-04-18 21:58:15 +02:00
Patrick Pelissier
b3a0d70147
Fix memory safety errors in examples.
2025-04-08 21:46:16 +02:00
Patrick Pelissier
c55bb6b9ad
Fix random segfault on AARCH64 CI
2025-03-13 22:24:13 +01:00
Patrick Pelissier
68fdc2dde1
Fix undefined behavior in using setjmp
2025-03-06 15:38:44 +01:00
Patrick Pelissier
8877af10b0
Update copyright
2025-03-03 23:45:04 +01:00
Patrick Pelissier
782963dec5
Add example of disabling small name usage
2025-03-01 12:20:28 +01:00
Patrick Pelissier
36d11bc2bd
Fix small name usage
2025-03-01 12:19:35 +01:00
Patrick Pelissier
6d621703eb
Copyright go to 2025 year
2025-03-01 11:03:38 +01:00
Patrick Pelissier
76b40d247d
Fix #133 : forgotten const for second argument (reported by Brian Sipos)
2025-02-03 23:12:22 +01:00
Patrick Pelissier
033deac9f5
Workaround for GCC 12 bug in warning
2025-02-03 23:06:41 +01:00
Patrick Pelissier
b60553165d
Fix usage of M_USE_SMALL_NAME (Reported by Brian Sipos)
2025-02-03 22:33:07 +01:00
Patrick Pelissier
e1a4d359a2
Update doc
2025-02-02 10:50:41 +01:00
Patrick Pelissier
4ab2615a1c
Clarify constraint on _splice
2024-12-25 20:48:34 +01:00
Patrick Pelissier
9136a4a972
Update
2024-12-08 19:34:15 +01:00
Patrick Pelissier
55dcf0e438
Fix example
2024-11-30 13:04:45 +01:00
Patrick Pelissier
fb604f02b7
Update / add todo
2024-11-30 10:26:11 +01:00
Patrick Pelissier
1db417e30e
Rename _new_copy into _clone
2024-11-30 10:25:51 +01:00
Patrick Pelissier
5b77fe7207
Add some missing const in the interface
2024-11-30 10:25:36 +01:00
Patrick Pelissier
dd509f2b7e
Update documentation of new shared pointer interface.
2024-11-30 10:25:15 +01:00
Patrick Pelissier
50d4e15297
Simplify lock as mutex should be released by the thread that performed the initial lock to be portable
2024-11-26 22:26:25 +01:00
Patrick Pelissier
f6d1b16338
Fix C++ warning
2024-11-25 00:04:54 +01:00
Patrick Pelissier
64a035559d
Update test suite
2024-11-24 23:57:22 +01:00
Patrick Pelissier
c4bc37560c
Improve testing of new shared pointer
...
Adding measure of coverage. Need to move some codes outside the main C file, to avoid polluting the measure of the coverage by some functions we don't need to measure.
2024-11-24 18:21:21 +01:00
Patrick Pelissier
e7309b7d3a
Add forgotten "const" attribute to string_length_u and string_utf8_p
2024-11-24 18:20:19 +01:00
Patrick Pelissier
c461b4eca4
Update shared pointer new interface
2024-11-24 11:26:30 +01:00
Patrick Pelissier
f21d427de1
Convert example to new shared ptr interface
2024-11-16 18:02:13 +01:00
Patrick Pelissier
0f9edaa7ee
Fix oplist usage of new shared-ptr
2024-11-16 18:01:58 +01:00
Patrick Pelissier
64888127c4
Update to get the lastest v2
2024-11-16 16:55:42 +01:00
Patrick Pelissier
d5b4ec249b
Update test suite
2024-11-16 13:26:21 +01:00
Patrick Pelissier
0bcd78a8f5
Fix warning.
2024-11-12 22:31:05 +01:00
Patrick Pelissier
27b0850af4
Fix case of the same variable is passed as 2/3 arguments of a function.
2024-11-12 22:26:45 +01:00
Patrick Pelissier
ae55ccfc40
Update test to consider change of default for deque
2024-11-11 23:56:33 +01:00
Patrick Pelissier
5bf644ccf0
Improve test suite
2024-11-11 22:38:10 +01:00
Patrick Pelissier
3f09adc507
Fix ADD/SUB/MUL/DIV methods of a shared pointer
2024-11-11 22:38:02 +01:00
Patrick Pelissier
4e851142c2
Change the operator POP of a DEQUE to pop_front instead of pop_back:
...
it is more inline with what we expects / uses a deque for.
(buffer FIFO)
2024-11-11 22:36:56 +01:00