From 7024a24ead3370718ee049b92fbe318a0815b2b1 Mon Sep 17 00:00:00 2001 From: CrossNox Date: Tue, 29 Nov 2022 06:11:11 -0300 Subject: [PATCH] agrego JC --- src/rustint/core.clj | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/rustint/core.clj b/src/rustint/core.clj index 60ae00c..da86457 100644 --- a/src/rustint/core.clj +++ b/src/rustint/core.clj @@ -2066,6 +2066,18 @@ ; JMP: Salto incondicional. Cambia cont-prg por el valor del argumento. JMP (recur cod regs-de-act (second fetched) pila mapa-regs) + + ; JC: Salto condicional. Quita el ultimo valor de la pila. Si este es true, cambia cont-prg por el valor del argumento. Si no, incrementa cont-prg en 1. + JC (let [last_val (last pila), + pila (pop pila), + next_cont_prg ( + cond + (true? last_val) (second fetched) + :else (inc cont-prg) + ) + ] (recur cod regs-de-act next_cont_prg pila mapa-regs) + ) + ) ) )