1. Pypy
  2. Untitled project
  3. pypy

Source

pypy / pypy / translator / backendopt / support.py

Author Commit Message Date Builds
Alex Gaynor
kill some more pyobj related code
Branches
kill-someobject
Armin Rigo
Tentative: kill various pieces of code left and right handling keepalives. Now the inliner no longer inserts tons of keepalives for you (which are almost always unneeded).
Maciej Fijalkowski
Revert SpaceOperation changes, they're parked on a branch for now
Maciej Fijalkowski
make SpaceOperations consume less space by making them specialized on exact number of arguments. Saves a bit of space and a bit of time when annotating.
Benjamin Peterson
remove compatibility code for reversed and sorted
Benjamin Peterson
use builtin sets
Armin Rigo
Merge the pyjitpl5 branch to trunk.
Amaury Forgeot d'Arc
Use "from hashlib import md5" when possible. Now "from pypy.tool.compat import md5" returns a function, not a module. This silences a warning when using python 2.6.
Alexander Schremmer
(cfbolz, xoraxax): Remove extfunctable and suggested_primitive support. Refactored exttypeinfo-usage of rstack to use a hint on the opaquetype. Ignored a weird hack in the extfunctable regarding ntpath.isabs because there is str in str support in rpython now.
Samuele Pedroni
(cfbolz, pedronis) fix for test_idempotent rerun noops removal at the end of all opts
Armin Rigo
(pedronis, arigo) Complete the merge of the jit-virtual-world branch.
Alexander Schremmer
Make backendopts less chatty if verbose is false.
Armin Rigo
Python 2.3 compatibility
Samuele Pedroni
issue258 testing fixed compute_reachability. with a simple test. didn't seem to make any difference (size/speed/breakage) on a whole PyPy translation (?)
Samuele Pedroni
kill the strange dontshuffle kw argument, instead use a different helper split_block_at_start, that reuses the other through a "private" kw argument.
Samuele Pedroni
don't use anymore the delicate and needing update entering_links mapping. Use split_block instead. I opted to teach it to possibly behave at least when splitting on index = 0, vs. resorting to index() trickery in timeshifter itself.
Carl Friedrich Bolz
finding backedges was broken. alas, this does not explain why the malloc->stack transformation breaks pypy-c :-(
Samuele Pedroni
(arre, pedronis) when split_block_with_keepalive is called with an annotator the inserted keepalive ops should have they return value annotated too.
Anders Chrigström
Oops, should have been part of an earlier commit.
Armin Rigo
Tentative check-in: avoid mangling the graph in split_block_with_keepalive() in the case of exception-catching blocks. I think the keepalives can be inserted just before the exception-raising operation instead of requiring a bunch of new blocks. Fixed inlining accordingly, going to test it on larger examples...
Samuele Pedroni
(arre, pedronis) changes to make it possible to turn on raisingop2direct_call by default. we haven't done so yet. some more experimenting is necessary
Michael Hudson-Doyle
(mwh, pedronis) conform to tradition by fixing a few more cases around the area of where to insert keepalives. break with tradition with ACTUALLY WRITING TESTS for this stuff. ffs. (we've been guilty of this too, not pointing fingers :-)
Michael Hudson-Doyle
(mwh, pedronis) Fix + test for various grotty interactions of explicit resume points and backend optimizations.
Samuele Pedroni
avoid to leak variables in annotator.bindings for backendopts and gc/exc tranforms
Michael Hudson-Doyle
the only reason split_block had a graph argument was to call checkgraph() on it, which was a performance disaster and was commented out a while ago. so kill the graph arg.
Michael Hudson-Doyle
fix bodged merge
Michael Hudson-Doyle
merge the stacklesscfg branch -- we don't actually seem to be being that disruptive so far
holger krekel
merge r25548 of stacklesscfg branch (split_block returns splitlink instead of afterblock)
Carl Friedrich Bolz
move find_backedges etc to support
Carl Friedrich Bolz
(pedronis, cfbolz): do the (very indeterministic) stack check insertion as late as possible, just before code generation.
  1. Prev
  2. 1
  3. 2
  4. Next