From 6f3808cd974bd997649ee5af91856ca05078051f Mon Sep 17 00:00:00 2001 From: CrossNox Date: Tue, 29 Nov 2022 05:53:45 -0300 Subject: [PATCH] agrego popmul --- src/rustint/core.clj | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/rustint/core.clj b/src/rustint/core.clj index 876b230..733355e 100644 --- a/src/rustint/core.clj +++ b/src/rustint/core.clj @@ -1882,6 +1882,10 @@ POPSUB (let [res (asignar-aritmetico regs-de-act pila reg-actual fetched -)] (if (nil? res) res (recur cod res (inc cont-prg) (vec (butlast pila)) mapa-regs))) + ; POPMUL: Como POPADD, pero multiplica. + POPMUL (let [res (asignar-aritmetico regs-de-act pila reg-actual fetched *)] + (if (nil? res) res (recur cod res (inc cont-prg) (vec (butlast pila)) mapa-regs))) + ; Incrementa cont-prg en 1 y quita el ultimo elemento de pila. El argumento indica en reg-actual las coordenadas [#reg-act, offset] donde sumar el elemento en regs-de-act al llamar recursivamente a interpretar (verificando la compatibilidad de los tipos) ; Por ejemplo: ; fetched: [POPADDREF 2]