Skip to content

Commit 4ce30b4

Browse files
author
Docker
committed
Save rcx
1 parent 624ddea commit 4ce30b4

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/X86_64.lama

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -429,7 +429,11 @@ fun compile (env, code) {
429429
case i of
430430
READ ->
431431
case env.allocate of
432-
[s, env] -> [env, code <+ Call ("Lread") <+ Mov (rax, s)]
432+
[s, env] -> [env, code <+
433+
Push (rcx) <+ -- Read clobbers rcx
434+
Call ("Lread") <+
435+
Pop (rcx) <+ -- Restore rcx
436+
Mov (rax, s)]
433437
esac
434438
| WRITE ->
435439
case env.pop of

0 commit comments

Comments
 (0)