aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compiler/elymasAsmLib.ey6
-rw-r--r--compiler/elymasGlobalSysAsm.ey9
2 files changed, 4 insertions, 11 deletions
diff --git a/compiler/elymasAsmLib.ey b/compiler/elymasAsmLib.ey
index 2cd124f..e7d38ab 100644
--- a/compiler/elymasAsmLib.ey
+++ b/compiler/elymasAsmLib.ey
@@ -95,9 +95,6 @@
# current parser quote state
[ %00 %00 %00 %00 %00 %00 %00 %00 ] ==currentQuoted
-
- # global allocation list
- [ :globalAllocations .base :imm64 ] ==globalAllocationList # FIXME what is this for? directly use :globalAllocations
> { defv }' allocateOffsetStruct
{ ==register
@@ -673,8 +670,7 @@
# rsi == size in bytes
# record new block in global allocation list
- globalAllocationList /rax :movqImmReg
- /rax /rax :movqMemReg
+ :globalAllocations .base /rax :movqImmReg
16 /rax :addqImm8Mem
/rax /rax :addqMemReg
16 /rax :subqImm8Reg
diff --git a/compiler/elymasGlobalSysAsm.ey b/compiler/elymasGlobalSysAsm.ey
index 3a7e2c1..691a20e 100644
--- a/compiler/elymasGlobalSysAsm.ey
+++ b/compiler/elymasGlobalSysAsm.ey
@@ -114,8 +114,7 @@
[[
/rbx :popqReg
- ::globalAllocationList /rdx :movqImmReg
- /rdx /rdx :movqMemReg
+ :globalAllocations .base /rdx :movqImmReg
/rdx /rdx :movqMemReg
4 /rdx :shrqImm8Reg
/rdx :decqReg
@@ -141,8 +140,7 @@
/rcx ::unboxInteger
- ::globalAllocationList /rdx :movqImmReg
- /rdx /rdx :movqMemReg
+ :globalAllocations .base /rdx :movqImmReg
/rcx :incqReg
4 /rcx :shlqImm8Reg
@@ -168,8 +166,7 @@
/rcx ::unboxInteger
- ::globalAllocationList /rdx :movqImmReg
- /rdx /rdx :movqMemReg
+ :globalAllocations .base /rdx :movqImmReg
/rcx :incqReg
4 /rcx :shlqImm8Reg