summaryrefslogtreecommitdiff
path: root/ecomp-c/tests/procedure_scoping.easm
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-c/tests/procedure_scoping.easm')
-rw-r--r--ecomp-c/tests/procedure_scoping.easm10
1 files changed, 9 insertions, 1 deletions
diff --git a/ecomp-c/tests/procedure_scoping.easm b/ecomp-c/tests/procedure_scoping.easm
index 72a9dfb..8f6dc6f 100644
--- a/ecomp-c/tests/procedure_scoping.easm
+++ b/ecomp-c/tests/procedure_scoping.easm
@@ -15,6 +15,8 @@ pop ebp
; DECL x -> array 2 of integer, array 2 of integer = { ... }
; DECL y -> array 3 of integer, array 3 of integer = { ... }
; DECL z -> integer, 0
+mov eax, 4
+sub esp, eax
; LET x[2 ] <- 3
mov eax, 2
push eax
@@ -34,8 +36,14 @@ mov [ebx], eax
; LET z <- 4
mov eax, 4
push eax
+push ebp
+pop ebx
+mov eax, 4
+sub ebx, eax
pop eax
-mov [z], eax
+mov [ebx], eax
+mov eax, 4
+add esp, eax
pop ebp
ret
; PROC B