Author: David Schneider <[email protected]>
Branch: 
Changeset: r63312:1bd588482153
Date: 2013-04-13 18:00 +0200
http://bitbucket.org/pypy/pypy/changeset/1bd588482153/

Log:    preallocate list to hold the locations of arguments to a call

diff --git a/rpython/jit/backend/arm/regalloc.py 
b/rpython/jit/backend/arm/regalloc.py
--- a/rpython/jit/backend/arm/regalloc.py
+++ b/rpython/jit/backend/arm/regalloc.py
@@ -554,10 +554,9 @@
         return self._prepare_call(op)
 
     def _prepare_call(self, op, force_store=[], save_all_regs=False):
-        args = []
-        args.append(None)
+        args = [None] * (op.numargs()+1)
         for i in range(op.numargs()):
-            args.append(self.loc(op.getarg(i)))
+           args[i+1] = self.loc(op.getarg(i))
         # spill variables that need to be saved around calls
         self.vfprm.before_call(save_all_regs=save_all_regs)
         if not save_all_regs:
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to