]> gitweb.factorcode.org Git - factor.git/commitdiff
cpu.x86.64: define jit-load-vm as a no-op
authorJoe Groff <arcata@gmail.com>
Wed, 14 Dec 2011 19:33:05 +0000 (11:33 -0800)
committerJoe Groff <arcata@gmail.com>
Wed, 14 Dec 2011 19:33:05 +0000 (11:33 -0800)
This was the signal handler prolog code can be shared completely between x86.32 and x86.64.

basis/cpu/x86/64/bootstrap.factor
basis/cpu/x86/bootstrap.factor

index 5fef6382a5af79a909af1bbc24faec265148a8e9..be447ebd8647ffa59b9bb867d330a6837262d2ff 100755 (executable)
@@ -38,6 +38,11 @@ IN: bootstrap.x86
     0 JMP f rc-relative rel-word-pic-tail
 ] jit-word-jump jit-define
 
+: jit-load-vm ( -- )
+    ! no-op on x86-64. in factor contexts vm-reg always contains the
+    ! vm pointer.
+    ;
+
 : jit-load-context ( -- )
     ctx-reg vm-reg vm-context-offset [+] MOV ;
 
index e1608e4b80bd96f197a2eb4aa1ed129de05ad18f..2e33a4d93066d1dcfb519298949c27501b6190c7 100644 (file)
@@ -104,9 +104,7 @@ big-endian off
 
     PUSHF
 
-    ! on x86-32 we need to load the vm register
-    ! on x86-64 it's already loaded whenever we're in a factor context
-    bootstrap-cell 4 = [ jit-load-vm ] when ;
+    jit-load-vm ;
 
 : jit-signal-handler-epilog ( -- )
     POPF