Author: Armin Rigo <ar...@tunes.org>
Branch: emit-call-x86
Changeset: r64335:b721a7cda30a
Date: 2013-05-19 18:36 +0200
http://bitbucket.org/pypy/pypy/changeset/b721a7cda30a/

Log:    Fix

diff --git a/rpython/jit/backend/x86/assembler.py 
b/rpython/jit/backend/x86/assembler.py
--- a/rpython/jit/backend/x86/assembler.py
+++ b/rpython/jit/backend/x86/assembler.py
@@ -1003,8 +1003,8 @@
         gcrootmap = self.cpu.gc_ll_descr.gcrootmap
         return bool(gcrootmap) and not gcrootmap.is_shadow_stack
 
-    def simple_call(self, fnloc, arglocs):
-        cb = callbuilder.CallBuilder(self, fnloc, arglocs)
+    def simple_call(self, fnloc, arglocs, result_loc=eax):
+        cb = callbuilder.CallBuilder(self, fnloc, arglocs, result_loc)
         cb.emit()
 
     def _reload_frame_if_necessary(self, mc, align_stack=False):
@@ -1913,8 +1913,8 @@
     def _call_assembler_emit_call(self, addr, argloc, _):
         self.simple_call(addr, [argloc])
 
-    def _call_assembler_emit_helper_call(self, addr, arglocs, _):
-        self.simple_call(addr, arglocs)
+    def _call_assembler_emit_helper_call(self, addr, arglocs, result_loc):
+        self.simple_call(addr, arglocs, result_loc)
 
     def _call_assembler_check_descr(self, value, tmploc):
         ofs = self.cpu.get_ofs_of_frame_field('jf_descr')
diff --git a/rpython/jit/backend/x86/callbuilder.py 
b/rpython/jit/backend/x86/callbuilder.py
--- a/rpython/jit/backend/x86/callbuilder.py
+++ b/rpython/jit/backend/x86/callbuilder.py
@@ -279,10 +279,8 @@
         return self.total_stack_used_by_arguments
 
     def load_result(self):
-        if self.ressize == 0:
-            return      # void result
         resloc = self.resloc
-        if resloc.is_float():
+        if resloc is not None and resloc.is_float():
             # a float or a long long return
             if self.tmpresloc is None:
                 if self.restype == 'L':     # long long
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to