diff options
| author | Drahflow <drahflow@gmx.de> | 2013-09-29 13:19:43 +0200 |
|---|---|---|
| committer | Drahflow <drahflow@gmx.de> | 2013-09-29 13:19:43 +0200 |
| commit | cd680c6d4bb37213e1dbe0df5c87c6f8ea1b04eb (patch) | |
| tree | bca90cab67661191273ae9f446c843b4bc4682b1 /compiler/elymasGlobalSysOpt.ey | |
| parent | 6654eba47e84a08864605065fd90bb65730516b4 (diff) | |
13% faster with (some) inline arithmetics
Diffstat (limited to 'compiler/elymasGlobalSysOpt.ey')
| -rw-r--r-- | compiler/elymasGlobalSysOpt.ey | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/compiler/elymasGlobalSysOpt.ey b/compiler/elymasGlobalSysOpt.ey index b3128bf..49d9282 100644 --- a/compiler/elymasGlobalSysOpt.ey +++ b/compiler/elymasGlobalSysOpt.ey @@ -104,6 +104,22 @@ :retn ]] /eyreplace defv + # returns internalAllocateInteger into userspace + # 0 <- ::internalAllocateInteger as integer + [[ + /rbx :popqReg + + ::internalAllocateInteger /rax :movqImmReg + /rax :callqReg + /rax :pushqReg + + ::internalAllocateInteger /rdx :movqImmReg + /rdx 8 /rax :movqRegMemDisp8 + + /rbx :pushqReg + :retn + ]] /eyinternalAllocateInteger defv + # returns internalAllocateScope into userspace # 0 <- ::internalAllocateScope as integer [[ |
