about summary refs log tree commit diff stats
path: root/subx/066allocate.subx
diff options
context:
space:
mode:
Diffstat (limited to 'subx/066allocate.subx')
-rw-r--r--subx/066allocate.subx6
1 files changed, 6 insertions, 0 deletions
diff --git a/subx/066allocate.subx b/subx/066allocate.subx
index a4ea687c..37b01d21 100644
--- a/subx/066allocate.subx
+++ b/subx/066allocate.subx
@@ -183,6 +183,12 @@ allocate-region:  # ad : (address allocation-descriptor), n : int -> new-ad : (a
     5d/pop-to-EBP
     c3/return
 
+# We could create a more general '$abort' jump target, but then we'd need to do
+# a conditional jump followed by loading the error message and an unconditional
+# jump. Or we'd need to unconditionally load the error message before a
+# conditional jump, even if it's unused the vast majority of the time. This way
+# we bloat a potentially cold segment in RAM so we can abort with a single
+# instruction.
 $allocate-region:abort:
     # . _write(2/stderr, error)
     # . . push args