<feed xmlns='http://www.w3.org/2005/Atom'>
<title>moon/zygotec/tests/programs/o3_freelist.zc, branch main</title>
<subtitle> work-in-progress programming language.
</subtitle>
<id>https://git.downsta.ir/moon/zygotec/atom?h=main</id>
<link rel='self' href='https://git.downsta.ir/moon/zygotec/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.downsta.ir/moon/zygotec/'/>
<updated>2026-10-15T04:00:53+00:00</updated>
<entry>
<title>x86-64 jit: inline new_k, recycle_leaf and own fast paths, in o3 regions and plain blocks</title>
<updated>2026-10-15T04:00:53+00:00</updated>
<author>
<name>zinc</name>
<email>zinc@downsta.ir</email>
</author>
<published>2026-10-15T04:00:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.downsta.ir/moon/zygotec/commit/?id=63ff1aacf764e692a7a29a7c0043278f637f1dbb'/>
<id>urn:sha1:63ff1aacf764e692a7a29a7c0043278f637f1dbb</id>
<content type='text'>
a call to rt.new_k / rt.recycle_leaf with a constant class, or to rt.own,
does its class-list pop or push (or owner store) inline and goes on after
the call; an empty list, memdebug, a held range, a block outside memory, a
translated word or a type/class mismatch takes the ordinary call. in a
region this replaces the o3_invoke round trip. o3 frees of leaf objects now
use recycle_leaf too (new_k stamps the type inside o3 since b86db60).
ZYNOFASTALLOC=1 turns it off; ZYPERFMAP=1 writes a perf map of translated code.
tests/programs/o3_freelist.zc: reuse, zeroing, an empty list, untyped
neighbours, memdebug; jit vs ZYNOFASTALLOC vs ZYO3INTERP.
</content>
</entry>
</feed>
