[pypy-commit] pypy regalloc-playground: some more calls supported

cfbolz pypy.commits at gmail.com
Wed Dec 13 16:37:38 EST 2017


Author: Carl Friedrich Bolz-Tereick <cfbolz at gmx.de>
Branch: regalloc-playground
Changeset: r93406:5d41d2ca0275
Date: 2017-12-13 22:37 +0100
http://bitbucket.org/pypy/pypy/changeset/5d41d2ca0275/

Log:	some more calls supported

diff --git a/rpython/jit/backend/x86/reghint.py b/rpython/jit/backend/x86/reghint.py
--- a/rpython/jit/backend/x86/reghint.py
+++ b/rpython/jit/backend/x86/reghint.py
@@ -148,6 +148,20 @@
     consider_call_f = _consider_real_call
     consider_call_n = _consider_real_call
 
+    def _consider_call_may_force(self, op, position):
+        self._consider_call(op, position, guard_not_forced=True)
+    consider_call_may_force_i = _consider_call_may_force
+    consider_call_may_force_r = _consider_call_may_force
+    consider_call_may_force_f = _consider_call_may_force
+    consider_call_may_force_n = _consider_call_may_force
+
+    def _consider_call_release_gil(self, op, position):
+        # [Const(save_err), func_addr, args...]
+        self._consider_call(op, position, guard_not_forced=True, first_arg_index=2)
+    consider_call_release_gil_i = _consider_call_release_gil
+    consider_call_release_gil_f = _consider_call_release_gil
+    consider_call_release_gil_n = _consider_call_release_gil
+
 oplist = [X86RegisterHints.not_implemented_op] * rop._LAST
 
 for name, value in X86RegisterHints.__dict__.iteritems():


More information about the pypy-commit mailing list