Author: hager <sven.ha...@uni-duesseldorf.de> Branch: ppc-jit-backend Changeset: r52348:7c26a3f31048 Date: 2012-02-10 14:00 +0100 http://bitbucket.org/pypy/pypy/changeset/7c26a3f31048/
Log: (bivab, hager): add test to test_runner.py diff --git a/pypy/jit/backend/ppc/test/test_runner.py b/pypy/jit/backend/ppc/test/test_runner.py --- a/pypy/jit/backend/ppc/test/test_runner.py +++ b/pypy/jit/backend/ppc/test/test_runner.py @@ -54,4 +54,27 @@ args = [i+1 for i in range(numargs)] res = self.cpu.execute_token(looptoken, *args) assert self.cpu.get_latest_value_int(0) == sum(args) + + def test_return_spilled_args(self): + numargs = 50 + for _ in range(numargs): + self.cpu.reserve_some_free_fail_descr_number() + ops = [] + arglist = "[%s]\n" % ", ".join(["i%d" % i for i in range(numargs)]) + ops.append(arglist) + # spill every inputarg + for i in range(numargs): + ops.append("force_spill(i%d)\n" % i) + ops.append("guard_value(i0, -1) %s" % arglist) + ops = "".join(ops) + loop = parse(ops) + looptoken = JitCellToken() + done_number = self.cpu.get_fail_descr_number(loop.operations[-1].getdescr()) + self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken) + ARGS = [lltype.Signed] * numargs + RES = lltype.Signed + args = [i+1 for i in range(numargs)] + res = self.cpu.execute_token(looptoken, *args) + for i in range(numargs): + assert self.cpu.get_latest_value_int(i) == i + 1 _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit