Read about our upcoming Code of Conduct on this issue

  1. 27 Jan, 2017 1 commit
  2. 04 May, 2016 1 commit
  3. 12 Oct, 2015 1 commit
  4. 11 Oct, 2015 1 commit
  5. 04 Mar, 2013 1 commit
  6. 03 Mar, 2013 1 commit
    • Armin Rigo's avatar
      Change "stuff" with the goal of fixing a bug in W_Continulet. · da3bcd418b5c
      Armin Rigo authored
      The problem is that __del__ can call stacklet_destroy() too early.
      
      * removed __del__ from W_Continulet, and instead add it as a lower level
        destructor on the 'sthread' object
      
      * kill destroy() from various levels, because it is not needed any more
      
      * we can't pass any more the thread_handle to stacklet.c, so kill it
        and store it in the stacklet_handle.  Fix a problem related to freeing
        the thread_handle before the remaining stacklet_handle's.
      
      * bad luck: this means the sthread objects need both a custom tracer
        and a destructor.  Fix everything to accomodate that.
      
      * this lets us kill the unused second argument from the low-level
        destructor functions
      
      --HG--
      branch : jitframe-on-heap
      da3bcd418b5c
  7. 23 Feb, 2013 1 commit
  8. 30 Dec, 2012 1 commit
    • Alexander Hesse's avatar
      Initial package rename: · f86b274daa88
      Alexander Hesse authored
      pypy.rpython -> rpython.rtyper
      pypy.translator -> rpython.translator
      pypy.rlib -> rpython.rlib
      pypy.jit -> rpython.jit
      pypy.objspace.flow -> rpython.flowspace
      pypy.annotation -> rpython.annotator
      
      --HG--
      branch : split-rpython
      f86b274daa88
  9. 07 Nov, 2012 1 commit
  10. 30 Apr, 2012 1 commit
  11. 14 Apr, 2012 1 commit
  12. 31 Oct, 2011 1 commit
  13. 25 Oct, 2011 2 commits
  14. 09 Oct, 2011 2 commits
  15. 30 Sep, 2011 2 commits
  16. 28 Aug, 2011 2 commits
  17. 06 Aug, 2011 1 commit
  18. 11 Dec, 2010 1 commit
  19. 03 Dec, 2010 1 commit
  20. 27 Nov, 2010 2 commits
  21. 24 Nov, 2010 2 commits
    • Amaury Forgeot d'Arc's avatar
      Merge from trunk: · 260128c8de61
      Amaury Forgeot d'Arc authored
      svn merge -r79039:79455 ../trunk
      
      --HG--
      branch : fast-forward
      260128c8de61
    • Armin Rigo's avatar
      (antocuni, arigo) · 5dc7e89d6b61
      Armin Rigo authored
      Merge branch/jit-free.
      
      The major point of the branch is to reduce memory usage of long-running
      pypy's with the JIT (such as "pypy translate.py").  Done by playing with
      weakrefs and having a __del__ that kills the ResumeGuardDescrs of old
      loops.  This is controlled by "--jit loop_longevity=N".  (Actually
      freeing the assembler code would be the next step, but is less important,
      because the ResumeDescrs take more memory.)
      
      In addition, this branch contains a number of semi-related things:
      
          * Generators: set their 'frame' to None when they finish.  This
            helps a lot the GC.  (The issue is that generators need an
            interp-level __del__; this let the GC free the frame earlier.)
      
          * rgc.dump_rpy_heap() now works with almost no need for
            additional memory.
      
          * pypy.rlib.debug.debug_print(r_longlong(...)).
      
          * add debug_{start,stop,print} to the __pypy__ module.  This lets
            you write to the PYPYLOG file from app-level.
      
          * use this new interface in translator/driver, to record the begin
            and end of tasks (via pypy.tool.debug_print so that it does not
            crash on CPython).
      
          * improve a bit reftracker.py.
      
      The net result is that you can now translate pypy with a pypy-jit on
      32-bits, using roughly 2.5 GB of RAM.  It is twice as big (for now) as
      CPython, but twice as fast :-)
      5dc7e89d6b61
  22. 23 Nov, 2010 1 commit
  23. 18 Nov, 2010 1 commit
    • Armin Rigo's avatar
      Revert r79182. It's not as easy, it even looks like a mess. · 40048099bce7
      Armin Rigo authored
      What we can (for now) guarantee is that with this kind of relation:
      
          a --------> weakref object - - - -> b --------> c
      
      if c has a finalizer, then when the finalizer of c runs, we are sure
      that b is gone, so the weakref points to None.
      40048099bce7
  24. 17 Nov, 2010 2 commits
  25. 12 Nov, 2010 2 commits
  26. 09 Nov, 2010 1 commit
    • Armin Rigo's avatar
      Test and fix for an obscure crash that shows up · 34935bcb5428
      Armin Rigo authored
      on the JIT with (preferencially) 64-bit versions.
      
      The issue is that the JIT did not respect the minimal
      allocation size in the nursery.  This gives strange
      effects at the next minor collection.
      34935bcb5428
  27. 30 Oct, 2010 1 commit
  28. 23 Nov, 2010 1 commit
  29. 01 Oct, 2010 2 commits
    • Amaury Forgeot d'Arc's avatar
      Merge from trunk · 9e6a7b5487d7
      Amaury Forgeot d'Arc authored
      --HG--
      branch : fast-forward
      9e6a7b5487d7
    • Armin Rigo's avatar
      Merge branch/larger-writebarrier: · c1b69e251839
      Armin Rigo authored
      It seems that "smaller-writebarrier" may have had a performance impact on a few
      benchmarks.  This is a mixed solution: using the old two-args write barrier
      for regular setfields, and the smaller (2 args instead of 3) version for
      setarrayitem.
      c1b69e251839
  30. 21 Mar, 2010 1 commit
    • Armin Rigo's avatar
      Change the CombinedSymbolics on 64-bit machines: they are now two · 0995022632ca
      Armin Rigo authored
      32-bit halves, instead of a USHORT and the rest.  This allows a
      simpler and (likely) faster implementation of llgroup.h, where
      instead of this complex 16-bit number we just store the pointer
      in the lower 32 bits.  This should work everywhere because the
      pointers are always to static data, and so they probably always
      fit in a 32-bit field.  (This is checked, of course.)
      0995022632ca
  31. 24 Feb, 2010 1 commit
    • Armin Rigo's avatar
      Merge the gc-better-hash branch. · ef025efa628b
      Armin Rigo authored
      It improves the identityhash of young objects -- they are now not just
      the address, because the address of young objects is always within the
      small nursery; they are the address plus a number that changes at every
      nursery collection.
      
      Also, it contains a bit of work to let the identityhash logic be tested
      by test_direct.py, at least on SemiSpace and Generation GC -- there is
      still an issue with testing it on the Hybrid GC.  (Of course, it's still
      fully tested by test_newgc.py.)
      ef025efa628b