<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aplwc/src/lib, branch memory-manager</title>
<subtitle>Mirror of fossil repo at aplwc.org</subtitle>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/'/>
<entry>
<title>Put all the code which visits pointers in memory.c behind a macro, so it can easily be reused.</title>
<updated>2026-09-01T21:14:43+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-09-01T21:14:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=047b642464442b290ea04f5d07bb3ce57a59fdb8'/>
<id>047b642464442b290ea04f5d07bb3ce57a59fdb8</id>
<content type='text'>
FossilOrigin-Name: 1e911fa0ea41797f445fff6f25df36b6c0f07063b5c6e9936cb243294a2d8a0c</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FossilOrigin-Name: 1e911fa0ea41797f445fff6f25df36b6c0f07063b5c6e9936cb243294a2d8a0c</pre>
</div>
</content>
</entry>
<entry>
<title>Implement "compaction", which moves all non-free chunks towards the beginning of the allocated space, and combines all the free space at the end.</title>
<updated>2026-09-01T20:45:23+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-09-01T20:45:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=26c3da82eb6f33cce64d218e97e2d44324fb9721'/>
<id>26c3da82eb6f33cce64d218e97e2d44324fb9721</id>
<content type='text'>
FossilOrigin-Name: c757f65164e1aebf38bc3e9ea8abe4b9f98b183cec7cfbeed0175f65c72f7ca5</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FossilOrigin-Name: c757f65164e1aebf38bc3e9ea8abe4b9f98b183cec7cfbeed0175f65c72f7ca5</pre>
</div>
</content>
</entry>
<entry>
<title>First step at garbage collection</title>
<updated>2026-09-01T19:10:55+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-09-01T19:10:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=8abe20b980db3a90d3dea0a29741074872325d35'/>
<id>8abe20b980db3a90d3dea0a29741074872325d35</id>
<content type='text'>
We now visit all objects and change the tag of those which are unreachable, to CHUNK_TAG_FREE.
Next step will be to implement compaction to combine all free chunks at the end of the memory
space.

FossilOrigin-Name: f8641c857b5d430f45d7c1f36fb00866659a5ea78f36ee0535c9166060ea0e19</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We now visit all objects and change the tag of those which are unreachable, to CHUNK_TAG_FREE.
Next step will be to implement compaction to combine all free chunks at the end of the memory
space.

FossilOrigin-Name: f8641c857b5d430f45d7c1f36fb00866659a5ea78f36ee0535c9166060ea0e19</pre>
</div>
</content>
</entry>
<entry>
<title>A little bit of testing</title>
<updated>2026-08-31T20:21:54+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-08-31T20:21:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=f9f9b10c1d17077632d7a09e447e629b8d33b23d'/>
<id>f9f9b10c1d17077632d7a09e447e629b8d33b23d</id>
<content type='text'>
FossilOrigin-Name: 70deba994bb488d4aa5df36577d1e184d6651a3edeff042e9666f54589cdc6f9</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FossilOrigin-Name: 70deba994bb488d4aa5df36577d1e184d6651a3edeff042e9666f54589cdc6f9</pre>
</div>
</content>
</entry>
<entry>
<title>Fix problems in release builds</title>
<updated>2026-08-31T20:04:50+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-08-31T20:04:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=0091c055edceca2598dfb7dd64cdcb081e4c7507'/>
<id>0091c055edceca2598dfb7dd64cdcb081e4c7507</id>
<content type='text'>
FossilOrigin-Name: 98227d25674f373968f51df0dcdccf3cf14d646a13e56a9229103d1aeb3ad73d</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FossilOrigin-Name: 98227d25674f373968f51df0dcdccf3cf14d646a13e56a9229103d1aeb3ad73d</pre>
</div>
</content>
</entry>
<entry>
<title>Remove some unneeded references to struct aplwc * in various structures.</title>
<updated>2026-08-31T19:49:48+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-08-31T19:49:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=34189c9b67f3427e077152e3a6c8cb21f4ba3441'/>
<id>34189c9b67f3427e077152e3a6c8cb21f4ba3441</id>
<content type='text'>
FossilOrigin-Name: 3b4b7806320d604b0df3654896cfe5d885f116d893ae15cfb3422d6d2de7193c</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FossilOrigin-Name: 3b4b7806320d604b0df3654896cfe5d885f116d893ae15cfb3422d6d2de7193c</pre>
</div>
</content>
</entry>
<entry>
<title>The objects returned to the user are now integer-based references,</title>
<updated>2026-08-31T19:44:56+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-08-31T19:44:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=7f7a2fb4fb23433e7be3d6953725690c8ea958d2'/>
<id>7f7a2fb4fb23433e7be3d6953725690c8ea958d2</id>
<content type='text'>
not actual pointers. This means the aplwc internals can update those
pointers without the user noticing.

FossilOrigin-Name: 654c7d0ec85da295a7fb6ed381500410686b280f342fa81a30481f5e9a20c58a</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
not actual pointers. This means the aplwc internals can update those
pointers without the user noticing.

FossilOrigin-Name: 654c7d0ec85da295a7fb6ed381500410686b280f342fa81a30481f5e9a20c58a</pre>
</div>
</content>
</entry>
<entry>
<title>Still a lot to be done, but I'm going to bed.</title>
<updated>2026-08-30T20:52:43+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-08-30T20:52:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=729964bea692f9683860978b89848784a7fc2f46'/>
<id>729964bea692f9683860978b89848784a7fc2f46</id>
<content type='text'>
Two remaining big issues:
* aplwc (the parameter passed "everywhere") - should it move or not?
* values returned from the public API should not move.

FossilOrigin-Name: 31ab3154b8f3d5ac167218496e9e204324bf0ac9d36b7bada8fe2a6c8f93d51c</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Two remaining big issues:
* aplwc (the parameter passed "everywhere") - should it move or not?
* values returned from the public API should not move.

FossilOrigin-Name: 31ab3154b8f3d5ac167218496e9e204324bf0ac9d36b7bada8fe2a6c8f93d51c</pre>
</div>
</content>
</entry>
<entry>
<title>Remove a lot of functions for manually freeing memory (they were not implemented)</title>
<updated>2026-08-30T14:46:38+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-08-30T14:46:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=04827577ea502a9f0edc69e00e008751c8119cbc'/>
<id>04827577ea502a9f0edc69e00e008751c8119cbc</id>
<content type='text'>
FossilOrigin-Name: 693765728e62a74a0ab15d657f7d1dd83702a9371fb042dafe6250f84a252959</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FossilOrigin-Name: 693765728e62a74a0ab15d657f7d1dd83702a9371fb042dafe6250f84a252959</pre>
</div>
</content>
</entry>
<entry>
<title>Let the memory allocation code set the last_error to APLWC_OUT_OF_MEMORY, instead of the callers</title>
<updated>2026-08-30T14:25:56+00:00</updated>
<author>
<name>peter</name>
<email>peter@pmikkelsen.com</email>
</author>
<published>2026-08-30T14:25:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.pmikkelsen.com/aplwc/commit/?id=2261ffa04ddf30a7c8eae6e64129b293fc8bffd9'/>
<id>2261ffa04ddf30a7c8eae6e64129b293fc8bffd9</id>
<content type='text'>
FossilOrigin-Name: 46c74e207a84e861636dbfebc4ba8bb9e7b17401dfd2c4fb9bdeae0fa98fd530</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FossilOrigin-Name: 46c74e207a84e861636dbfebc4ba8bb9e7b17401dfd2c4fb9bdeae0fa98fd530</pre>
</div>
</content>
</entry>
</feed>
