1. 24 Jul, 2015 1 commit
  2. 23 Jul, 2015 28 commits
  3. 22 Jul, 2015 11 commits
    • Kevin Modzelewski's avatar
      Merge pull request #743 from undingen/bjit_omit_fp · 6add43fe
      Kevin Modzelewski authored
      bjit: omit frame pointer + use R12 for ASTInterpreter*
      6add43fe
    • Kevin Modzelewski's avatar
      Inline boxBool more · a8ac40c3
      Kevin Modzelewski authored
      a8ac40c3
    • Kevin Modzelewski's avatar
      Optimize isinstance · d9709d1d
      Kevin Modzelewski authored
      isinstance(obj, cls) needs to do a bunch of dynamic checking: it needs to
      check cls's class to see if it defines __instancecheck__, and it needs
      to fetch __class__ on obj.  Most of those time those aren't overridden,
      so __instancecheck__ gets skipped and __class__ returns the type of the object.
      
      So use the same "type slot" machinery to cache whether an __instancecheck__
      or custom __class__ attribute have gotten added.  These are a bit different
      than the other slots since they are not "wrappers", they are simply bools
      that say whether or not the attribute exists.  This makes the slot handling
      code a bit messier / more divergent from CPython, but I think it still makes
      sense to put this here since we get the hooking-on-attribute-updating and
      update-all-subclasses-as-well automatically.
      d9709d1d
    • Kevin Modzelewski's avatar
      Add pypy's (via US) bm_django · 0251f5fa
      Kevin Modzelewski authored
      0251f5fa
    • Rudi Chen's avatar
      d1eb84d5
    • Marius Wachtler's avatar
      bjit: omit frame pointer + use R12 for ASTInterpreter* · 96027cdb
      Marius Wachtler authored
      This reduces the number of stack access, because previously when we accessed a field of the interpreter
      we always had to load it first from stack into a reg - and now we have a dedicated reg.
      This is currently only a very small perf change but when #736 lands this becomes more important.
      96027cdb
    • Kevin Modzelewski's avatar
      Try caching both the debug and release ccache dirs · 3a75208b
      Kevin Modzelewski authored
      My theory is that specifying the separate cache directories
      interacts badly with travis-ci.  I think it will either delete
      any cache directories that look like they are no longer cached
      (ie when it finishes the debug build it will delete the release
      ccache dir since it looks unused), or maybe it keeps them around
      but only checks the most recent build for a cache hit (ie the
      debug build might check and only find ccache_release).
      
      So anyway, try always specifying both directories.  Another
      option is to do the simpler thing and use a single directory for
      both caches, but I want to only change one thing at a time.
      3a75208b
    • Kevin Modzelewski's avatar
      Merge pull request #706 from undingen/interp_init · 07f0a1aa
      Kevin Modzelewski authored
      Slightly speedup ASTInterpreter::initArguments
      07f0a1aa
    • Chris Toshok's avatar
      Merge pull request #672 from rudi-c/gcfinalizers4 · 8d204ed1
      Chris Toshok authored
      Call finalizers during garbage collection with ordering
      8d204ed1
    • Rudi Chen's avatar
      Handle unicode string slicing. · 09df9da7
      Rudi Chen authored
      09df9da7
    • Rudi Chen's avatar
      Handle more slicing edge cases. · 95fface9
      Rudi Chen authored
      - Non-integer and non-None object passed into slices can fall back
        to item operator.
      - Support indexeable items for slices when appropriate.
      - Increase setitem and delitem ic slot sizes so that the rewriter
      can succeed.
      - Increase the performance of using slice operators on built-in types
        avoiding a lot of the guards and slowpath.
      95fface9