holey-bytes/lang/tests/son_tests_storing_into_nullable_struct.txt
Jakub Doka a8aba7e7c2
making the Call node less special
return value is now a separate node pinned to the call

Signed-off-by: Jakub Doka <jakub.doka2@gmail.com>
2024-12-19 10:48:05 +01:00

93 lines
1.9 KiB
Plaintext

do_stuff:
CP r13, r2
CP r1, r13
JALA r0, r31, 0a
just_read:
JALA r0, r31, 0a
main:
ADDI64 r254, r254, -72d
ST r31, r254, 48a, 24h
ADDI64 r32, r254, 16d
CP r1, r32
JAL r31, r0, :optionala
LD r33, r254, 16a, 8h
JNE r33, r0, :0
LI64 r32, 10d
CP r1, r32
JMP :1
0: ST r0, r254, 24a, 8h
CP r2, r32
JAL r31, r0, :just_read
LD r32, r254, 24a, 8h
CP r2, r32
JAL r31, r0, :do_stuff
CP r32, r1
ADDI64 r33, r254, 0d
JAL r31, r0, :optional
ST r1, r33, 0a, 16h
LD r33, r254, 0a, 1h
ANDI r33, r33, 255d
JNE r33, r0, :2
LI64 r32, 20d
CP r1, r32
JMP :1
2: LI64 r33, 100d
CP r2, r33
JAL r31, r0, :do_stuff
CP r33, r1
ADD64 r32, r33, r32
CP r1, r32
1: LD r31, r254, 48a, 24h
ADDI64 r254, r254, 72d
JALA r0, r31, 0a
optional:
ADDI64 r254, r254, -16d
LI8 r13, 1b
ST r13, r254, 0a, 1h
LI64 r13, 10d
ST r13, r254, 8a, 8h
LD r1, r254, 0a, 16h
ADDI64 r254, r254, 16d
JALA r0, r31, 0a
optionala:
ADDI64 r254, r254, -128d
ST r31, r254, 64a, 64h
CP r38, r1
ADDI64 r33, r254, 48d
JAL r31, r0, :some_index
ST r1, r33, 0a, 16h
LD r34, r254, 48a, 1h
ANDI r34, r34, 255d
JNE r34, r0, :0
UN
0: ADDI64 r34, r254, 8d
ADDI64 r35, r254, 16d
LRA r36, r0, :heap
LD r33, r254, 56a, 8h
ST r34, r254, 16a, 8h
LI64 r37, 1d
ADD64 r33, r33, r36
ST r37, r254, 24a, 8h
LD r33, r33, 0a, 1h
ADDI64 r32, r254, 0d
ST r32, r254, 32a, 8h
ANDI r33, r33, 255d
ST r0, r254, 0a, 8h
ST r0, r254, 8a, 8h
ST r33, r254, 40a, 8h
BMC r35, r38, 32h
LD r31, r254, 64a, 64h
ADDI64 r254, r254, 128d
JALA r0, r31, 0a
some_index:
ADDI64 r254, r254, -16d
LI8 r13, 1b
ST r13, r254, 0a, 1h
ST r0, r254, 8a, 8h
LD r1, r254, 0a, 16h
ADDI64 r254, r254, 16d
JALA r0, r31, 0a
code size: 769
ret: 100
status: Ok(())