<feed xmlns='http://www.w3.org/2005/Atom'>
<title>antcc/src/ir_inliner.c, branch trunk</title>
<subtitle>A little C compiler</subtitle>
<id>https://git.lemon.rip/antcc/atom?h=trunk</id>
<link rel='self' href='https://git.lemon.rip/antcc/atom?h=trunk'/>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/'/>
<updated>2026-04-19T17:20:21+00:00</updated>
<entry>
<title>backend: don't emit extern inline funcs</title>
<updated>2026-04-19T17:20:21+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-04-19T17:20:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=3d61ace0d9e6e3a73fcbbb285890653f396ed17d'/>
<id>urn:sha1:3d61ace0d9e6e3a73fcbbb285890653f396ed17d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>support extern inline "definitions"</title>
<updated>2026-04-17T19:21:55+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-04-17T19:21:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=3cd04b7ea9e7d33ec6b50524f97ada82ecdfebbe'/>
<id>urn:sha1:3cd04b7ea9e7d33ec6b50524f97ada82ecdfebbe</id>
<content type='text'>
</content>
</entry>
<entry>
<title>backend: inlining improvements</title>
<updated>2026-04-09T13:28:27+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-04-09T13:28:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=c4d90877469e801c34066a7f823ffb1144dd5851'/>
<id>urn:sha1:c4d90877469e801c34066a7f823ffb1144dd5851</id>
<content type='text'>
</content>
</entry>
<entry>
<title>inliner: fix UB when ninstrtab==0</title>
<updated>2026-03-25T16:20:47+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-03-25T16:20:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=a0ee3d43a4bd009893b38df7721b1d2692b3c736'/>
<id>urn:sha1:a0ee3d43a4bd009893b38df7721b1d2692b3c736</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ir_inliner: redundant check</title>
<updated>2026-03-24T11:12:34+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-03-24T11:12:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=8fa9c60a00b6e39c14bc279b3444cb90de696858'/>
<id>urn:sha1:8fa9c60a00b6e39c14bc279b3444cb90de696858</id>
<content type='text'>
</content>
</entry>
<entry>
<title>IR: emit inline function standalone bodies lazily</title>
<updated>2026-03-23T22:43:52+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-03-23T22:38:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=62d995124c0cc2eaeec79e18edc3e044f3e524c9'/>
<id>urn:sha1:62d995124c0cc2eaeec79e18edc3e044f3e524c9</id>
<content type='text'>
If a function is stashed for inlining and inlined in all of its
callsites or unused, it never ends up in the object file. If any symbol
reference to it is emitted, then it must be de-inlined (rematerialized),
and this is done near the end before emitting the actual object file.
</content>
</entry>
<entry>
<title>IR: mark free'd instructions as such</title>
<updated>2026-03-23T18:20:32+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-03-23T18:20:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=8630aeb8b43c507cd00f5b091ddcee4def464f4d'/>
<id>urn:sha1:8630aeb8b43c507cd00f5b091ddcee4def464f4d</id>
<content type='text'>
That way they are not copied when inlining.
Also rename ninstr -&gt; ninstrtab. opnarg -&gt; opnoper
</content>
</entry>
<entry>
<title>IR: add 3rd operand to Instr</title>
<updated>2026-03-22T09:49:26+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-03-21T21:20:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=79874c83bf76a5b3efd3d558933b90d9b53b829e'/>
<id>urn:sha1:79874c83bf76a5b3efd3d558933b90d9b53b829e</id>
<content type='text'>
The motivation is for aarch64 msub/madd instrs, for isel to produce. But
it should be useful for other things too.
</content>
</entry>
<entry>
<title>Refactor: use typedefs and CamelCase for aggregate types</title>
<updated>2026-03-18T10:33:41+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-03-18T10:33:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=1d9e19fb3bb941cdc28e9d4c3063d3e213fd8312'/>
<id>urn:sha1:1d9e19fb3bb941cdc28e9d4c3063d3e213fd8312</id>
<content type='text'>
Looks nicer
</content>
</entry>
<entry>
<title>REFACTOR: move sources to src/</title>
<updated>2026-03-17T12:22:00+00:00</updated>
<author>
<name>lemon</name>
<email>lsof@mailbox.org</email>
</author>
<published>2026-03-17T12:22:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lemon.rip/antcc/commit/?id=a8d6f8bf30c07edb775e56889f568ca20240bedf'/>
<id>urn:sha1:a8d6f8bf30c07edb775e56889f568ca20240bedf</id>
<content type='text'>
</content>
</entry>
</feed>
