about summary refs log tree commit diff stats
path: root/run_one_test.subx
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2020-02-29 22:18:26 -0800
committerKartik Agaram <vc@akkartik.com>2020-02-29 22:36:03 -0800
commit3ac95f6a40d3bda989727ad7137d07e65ef4ac1d (patch)
tree9cfb6ae13fa4340bacbd0a0ec982559f473298bb /run_one_test.subx
parent7ae5b7136800ffb4f3d49777029a7cc9653ec029 (diff)
downloadmu-3ac95f6a40d3bda989727ad7137d07e65ef4ac1d.tar.gz
6072
I just did an experiment, and test_apps is spending over half its time
(95 seconds that could be 40) redundantly clearing every stream before
every test. And some of those streams are _large_; the translators for
SubX and Mu use streams sizes pessimistically for the largest possible
program they can handle (1MB per segment).

A single test (the one in assort.subx) spends 24 seconds initializing 2
1MB-segments before processing a dozen lines of text in the blink of an
eye.

I'm not going to speed this up. But good to know.
Diffstat (limited to 'run_one_test.subx')
-rw-r--r--run_one_test.subx2
1 files changed, 1 insertions, 1 deletions
diff --git a/run_one_test.subx b/run_one_test.subx
index def4c430..37d72ea0 100644
--- a/run_one_test.subx
+++ b/run_one_test.subx
@@ -9,7 +9,7 @@ Entry:
     # Heap = new-segment(64KB)
     # . . push args
     68/push  Heap/imm32
-    68/push  0x10000/imm32/64KB
+    ff          6/subop/push        0/mod/indirect  5/rm32/.disp32            .             .           .           Heap-size/disp32                  # push *Heap-size
     # . . call
     e8/call  new-segment/disp32
     # . . discard args