about summary refs log tree commit diff stats
path: root/apps/mu.subx
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2020-05-24 20:54:12 -0700
committerKartik Agaram <vc@akkartik.com>2020-05-24 20:54:12 -0700
commitd1179723a9bc8e02a91d740040bbcf86bff384e1 (patch)
tree01a3051dd22f271270e628e555255bcef83a66f1 /apps/mu.subx
parent4d14c3fefd8362512e8e75d5051f7a7b709b483f (diff)
downloadmu-d1179723a9bc8e02a91d740040bbcf86bff384e1.tar.gz
6394 - a catastrophic bug
How did new-literal ever work?! Somehow we had eax silently being clobbered
without affecting behavior over like 5 apps. Unsafe languages suck.

Anyways, factorial.mu is now part of CI.
Diffstat (limited to 'apps/mu.subx')
-rw-r--r--apps/mu.subx2
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/mu.subx b/apps/mu.subx
index 4127b572..2e657c89 100644
--- a/apps/mu.subx
+++ b/apps/mu.subx
@@ -6532,7 +6532,7 @@ new-literal:  # ad: (addr allocation-descriptor), name: (addr slice), out: (addr
     # var s/ecx: (handle array byte)
     68/push 0/imm32
     68/push 0/imm32
-    89/<- %ecx 0/r32/eax
+    89/<- %ecx 4/r32/esp
     # s = slice-to-string(name)
     (slice-to-string Heap *(ebp+0xc) %ecx)
     # allocate to out