diff options
| -rw-r--r-- | compiler/elymasAsmLib.ey | 6 | ||||
| -rw-r--r-- | compiler/elymasGlobalSysAsm.ey | 9 |
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 |
