aboutsummaryrefslogtreecommitdiff
path: root/compiler/elymasAsmLib.ey
diff options
context:
space:
mode:
authorDrahflow <drahflow@gmx.de>2013-09-04 11:34:26 +0200
committerDrahflow <drahflow@gmx.de>2013-09-04 11:34:26 +0200
commit4900a0d4845a67afeed28c7b8a1e3662425c838b (patch)
treeedeef6d51e13c81c4f72f80a14a35214dec1a3ab /compiler/elymasAsmLib.ey
parent3fb7dd375ada97b9413abfecccd8a889c53dc93a (diff)
16% faster library built time (regex optimization)
Diffstat (limited to 'compiler/elymasAsmLib.ey')
-rw-r--r--compiler/elymasAsmLib.ey5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/elymasAsmLib.ey b/compiler/elymasAsmLib.ey
index 1c04d4e..a2eba57 100644
--- a/compiler/elymasAsmLib.ey
+++ b/compiler/elymasAsmLib.ey
@@ -633,13 +633,18 @@
/rdi /ecx :movlMemReg
8 /rdi :addqImm8Reg
16 /rcx :subqImm8Reg
+
@markFunctionCodeLoop
+ /rdi /r11 :cmpqMemReg
+ /codePartNotObject :jbeLbl32 # pointing above the heap
/rdi :pushqReg
/rcx :pushqReg
/rdi /rdi :movqMemReg
/markObject :callqLbl32
/rcx :popqReg
/rdi :popqReg
+
+ @codePartNotObject
/rdi :incqReg
/markFunctionCodeLoop :loopLbl8
:retn