Created by Michael Hudson-Doyle on 2010-03-15 and last modified on 2010-03-15
Get this branch:
bzr branch lp:~mwhudson/pypy/imported-unroll-safe-if-const-arg
Only Michael Hudson-Doyle can upload to this branch. If you are Michael Hudson-Doyle please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Michael Hudson-Doyle

Recent revisions

23725. By cfbolz on 2010-01-26

mark character finding as pure. at some point we should do that systematically
about string functions.

23724. By cfbolz on 2010-01-26

this is on the silly side, but it helps the jit

23723. By cfbolz on 2010-01-26

two more unroll-safe needed

23722. By arigo on 2010-01-26

Add the jit.unroll_safe_if_const_arg decorator
to "x in (tuple)" and to string formatting.
Unsure if it's really a good idea in general
in string formatting, we will try.

23721. By arigo on 2010-01-26

(fijal, cfbolz looking, arigo)
Implement call_if_not_const in pyjitpl. Should be all.

23720. By arigo on 2010-01-26

Write the decorator, unroll_safe_if_const_arg(argpos).
Support it in codewriter.py.

23719. By arigo on 2010-01-26

Create a branch to implement rlib.jit.unroll_safe_if_const_arg().

23718. By arigo on 2010-01-26

Revert checkin by mistake.

23717. By arigo on 2010-01-26

(cfbolz, arigo)

Merge the branch/lazy-operr-format, replacing most

    raise OperationError(space.w_XxxError,
                         space.wrap("foo %s" % x))


    raise operationerrfmt(space.w_XxxError, "foo %s", x)

which is both a bit shorter and quite faster to run in the common case
where the exception is swallowed without being ever printed: the string
formatting is then never done.

23716. By fijal on 2010-01-25

(pedronis, fijal)
Merge the direct-assembler-call branch.

This branch implements a new operation CALL_ASSEMBLER, which happens
when we encounter a recursive portal call to a place that has assembler
already compiled. Speeds up certain cases, some by a significant %.
Slows down megamorphic calls, because with this branch, a call that was
compiled as CALL_ASSEMBLER is now a guard failure in case code object
is not the same.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
This branch contains Public information 
Everyone can see this information.