From eec336dea3d86e176c4bd86c435e6be35fec64e2 Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Mon, 18 May 2026 16:36:08 -0700 Subject: okay there's a strat for making the here/latest variables now it doesn't work yet, but it's gonna the reason it doesn't work is that the new helper log-load-variable relies on the assembly-definition words being statically available, and they aren't yet that's fine though, this is still a huge change, worth checking in. why? well, it represents like 16 hours of debugging which culminated in some very minor changes to the semantics of the label transform, in order to make missing words easier to notice and debug. see comments for details. woooooo :D Force-Push: yes Change-Id: Id8334819d165ba9e3156ef2bf32008af748eac29 --- evoke.e | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) (limited to 'evoke.e') diff --git a/evoke.e b/evoke.e index 607242d..869de31 100644 --- a/evoke.e +++ b/evoke.e @@ -7,8 +7,30 @@ s" source-to-precompile" variable +~ : fooze 4 . ; fooze 1024 read-to-buffer -: fooze 4 . ; +here @ +dup L!' docol-codeword-value +:rsi pack-pushcontrol +8 :rax add-reg64-imm8 +:rax :rsi mov-reg64-reg64 +pack-next +8 packalign +here ! + +: docol + [ here @ + L@' docol-codeword-value :rax mov-reg64-imm64 + :rax push-reg64 + here ! ] ;asm + +: exit + [ here @ + :rsi pack-popcontrol + here ! ] ;asm + +: foo 1 2 + ; +0 sys-exit pyrzqxgl s" source-to-copy-to-log" variable @@ -26,8 +48,6 @@ s" source-to-copy-to-log" variable elf-program-header output-cold-start source-to-copy-to-log output-warm-start - output-docol - output-exit source-to-precompile label-transform 0 L!' final-word-name current-offset L!' total-size -- cgit 1.4.1