<feed xmlns='http://www.w3.org/2005/Atom'>
<title>evocation/amd64.e, branch v3.0</title>
<subtitle>Call forth the blue-green flame of computation from the universe, weave its energies into a fabric, that we may share our blood with it.
</subtitle>
<id>http://code.irenes.space/evocation/atom?h=v3.0</id>
<link rel='self' href='http://code.irenes.space/evocation/atom?h=v3.0'/>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/'/>
<updated>2026-09-13T03:44:52+00:00</updated>
<entry>
<title>fully verify the hex-transformed output of all Evocation-assembly words</title>
<updated>2026-09-13T03:44:52+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-13T03:44:52+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=010625ab1a82f95a2d5dd51939a25636c5fdcbf9'/>
<id>urn:sha1:010625ab1a82f95a2d5dd51939a25636c5fdcbf9</id>
<content type='text'>
the verification included words that aren't used in Evocation itself. it also resulted in fixing several such words that were broken in ways that would have crashed. it was a very thorough verification.

do honor to the effort that was put into it by always verifying that changes to amd64.e don't break it, from now on :)

Force-Push: yes
Change-Id: Ia1904f4b35f90772fd9dce79a0274627c547edbf
</content>
</entry>
<entry>
<title>removed the #swap syntax</title>
<updated>2026-09-13T00:55:18+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-13T00:55:18+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=fb274a2b22f7a4c1f81b7639a80fb02ddc5bf402'/>
<id>urn:sha1:fb274a2b22f7a4c1f81b7639a80fb02ddc5bf402</id>
<content type='text'>
everything has been carefully diffed to ensure there's no regression in the verified parts of the output

Force-Push: yes
Change-Id: I32c887c7ca8c132a49899d9ef327c8ff9fb782fb
</content>
</entry>
<entry>
<title>semantic change to make subitem stack manip more convenient</title>
<updated>2026-09-13T00:37:08+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-13T00:37:08+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=974b73f0307158410ce8d7b9a781c9df792efed4'/>
<id>urn:sha1:974b73f0307158410ce8d7b9a781c9df792efed4</id>
<content type='text'>
this allows a much cleaner style than the #swap notation, which will likely be removed soon

Force-Push: yes
Change-Id: If9898334356eb7c036f28afd22d435e00a84f6e2
</content>
</entry>
<entry>
<title>began to check and correct the exact hex-transformed instruction output</title>
<updated>2026-09-11T06:40:19+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-11T06:40:19+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=1b5ddcbadd1eaa0375da61a0eed0b810b239a4b4'/>
<id>urn:sha1:1b5ddcbadd1eaa0375da61a0eed0b810b239a4b4</id>
<content type='text'>
the checking is only a little way down the file, but there's a new feature needed, so this is being checked in now to protect the work that's already been done

Force-Push: yes
Change-Id: If8c29d4b417288e5cfb2aa08ce6d41adadc64279
</content>
</entry>
<entry>
<title>add provide-hex, which varies its output width to fit the value</title>
<updated>2026-09-10T16:22:12+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-10T16:22:12+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=2eb637e63a9e5d8f87391beb4af6019963a7c36c'/>
<id>urn:sha1:2eb637e63a9e5d8f87391beb4af6019963a7c36c</id>
<content type='text'>
and amd64.e uses it for all the immediates, but not for other kinds of numeric parameter, which looks pretty slick and readable

Force-Push: yes
Change-Id: Ifb630a4dc172d7495b5458316266fe76b75e07af
</content>
</entry>
<entry>
<title>add some magic comment commands to reorder subitems more generally</title>
<updated>2026-09-10T13:41:22+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-10T13:41:22+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=7a0a28f4d8b738d305b826b5464b27255dd7def3'/>
<id>urn:sha1:7a0a28f4d8b738d305b826b5464b27255dd7def3</id>
<content type='text'>
these are all fully working and debugged.

they have been used in a principled attempt to get all the parameter orders in amd64.e correct, but that effort needs to be verified carefully, which it hasn't been, yet.

a couple of missing magic comments in elf.e and execution.e were also added.

Force-Push: yes
Change-Id: Id4c48b121a71b4f945ee3718e14a06f07afd7304
</content>
</entry>
<entry>
<title>fix all leaks and incorrect parameter counts in amd64.e</title>
<updated>2026-09-10T09:31:08+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-10T09:31:08+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=e2362acc76e4b689efe50ca7da40867336efd53c'/>
<id>urn:sha1:e2362acc76e4b689efe50ca7da40867336efd53c</id>
<content type='text'>
this required adding a new magic-comment command, drop-subitem, because there's a couple cases, in indexed addressing mode helpers, where a hardcoded register value is used as part of preparing an sib word, and that value shouldn't become a subitem for the assembly word that calls the helper.

notably, a lot of the disp8 and indexed assembly words had incorrect parameter counts that needed adjusting

parameter ORDERS still need a close read to make sure they're correct.  also, as future work, substring entries should be renamed to subitem entries.

Force-Push: yes
Change-Id: I419243855751416377d0ea0c5062fa1ba9e62a8d
</content>
</entry>
<entry>
<title>provide a #swap operation in comment templates</title>
<updated>2026-09-09T07:07:25+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-09T07:02:32+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=f74440d8090e6b15abe47f71b169058e7b151447'/>
<id>urn:sha1:f74440d8090e6b15abe47f71b169058e7b151447</id>
<content type='text'>
and use it in a couple places in amd64.e where it's needed

Change-Id: Id73dcd13f08c03aa02ac09e45ab034fcd90f2569
Force-Push: yes
</content>
</entry>
<entry>
<title>handle the rest of the fields (keywords and numbers) in amd64.e</title>
<updated>2026-09-09T05:44:30+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-09T05:44:30+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=cdf13a70a8840d5f79c16c3d4b0aa84d53cbc46e'/>
<id>urn:sha1:cdf13a70a8840d5f79c16c3d4b0aa84d53cbc46e</id>
<content type='text'>
add a provide-decimal variant of the magic-comment provide command family

note that the fields are all printed in a wrong order, at present

Force-Push: yes
Change-Id: I01f5cbb86f61e78ce652c54fc8b29b88efd1b2b6
</content>
</entry>
<entry>
<title>add keyword support to magic comment templates</title>
<updated>2026-09-09T05:44:13+00:00</updated>
<author>
<name>Irene Knapp</name>
<email>ireneista@irenes.space</email>
</author>
<published>2026-09-09T02:41:25+00:00</published>
<link rel='alternate' type='text/html' href='http://code.irenes.space/evocation/commit/?id=880b631f268d70cf0282203f001afc1f0cc7bf31'/>
<id>urn:sha1:880b631f268d70cf0282203f001afc1f0cc7bf31</id>
<content type='text'>
additionally, handle many (not yet all) of the keywords used by amd64 words

this exposed an existing flaw in the metadata entry processing, which is now fixed as well. to wit: it's common for provide-substring entries to come after the comment entries they go with in the entry array, but this is valid because adjust-length commands can edit the length field of the comment entry afterwards, and the comment entry will be moved to after the provide-substring entry based on its final length, but this can't happen if the adjust-length array isn't able to find the comment entry it goes with, which may not be the most recent entry. so, the adjust-length command needs to scan backwards to find the most recent comment entry, not just the most recent entry.

confused? don't worry... this CL includes documentation. wow. that was a lot.

Change-Id: I01c574fca020fd2e3adaf335267264fdbc8b87f1
Force-Push: yes please
</content>
</entry>
</feed>
