1. 04 Jul, 2016 2 commits
  2. 03 Jul, 2016 1 commit
    • Boxiang Sun's avatar
      Remove the "CPython executable parser" · bfe06380
      Boxiang Sun authored
      Pyston call CPython executable to generate CPython AST. Remove this
      "parser", use CPython Parser module by default. Pass "-x" to enable
      libpypa parser.
      bfe06380
  3. 02 Jul, 2016 5 commits
  4. 30 Jun, 2016 3 commits
  5. 29 Jun, 2016 2 commits
  6. 28 Jun, 2016 2 commits
    • Marius Wachtler's avatar
      ICs: variable size IC slots · 258a2b0a
      Marius Wachtler authored
      before this change we had a fixed number of equal size slots inside an IC.
      Because of the large difference in rewrite sizes a fixed slot size is not ideal.
      We often ended up with too large slots which prevented us from emitting more slots.
      (or very large ICs in general which are bad for memory usage and the instruction cache)
      
      With this commit we will start with a single slot with the size of the whole IC and then decreasing its size to the actual bytes emitted
      and creating a new slot which starts directly at the end of the previous slot.
      We will repeat to to this until the space left is smaller than the number of bytes the last slot required.
      This makes it a little bit less likely that we will be successful in overwritting an existing slot
      but our benchmarks show that it is still a large win on all our benchmarks.
      
      Some notable changes are:
      - we pick the slot to rewrite much earlier now and prevent it from getting rewritten while we rewrite using num_inside = 1
        the reason is that we would otherwise not know how big the slot is
      - when we resize a slot we have to patch the failing guard jumps to the address of the next slot
      258a2b0a
    • sizeoftank's avatar
      Add type.__basicsize__, type.__itemsize__ · d42e89aa
      sizeoftank authored
      d42e89aa
  7. 27 Jun, 2016 3 commits
  8. 26 Jun, 2016 2 commits
  9. 24 Jun, 2016 1 commit
  10. 23 Jun, 2016 1 commit
    • Boxiang Sun's avatar
      Enable CPython's macro PyCFunction_GET_FUNCTION. Fixes issue #1260 · e6931d60
      Boxiang Sun authored
      The function PyCFunction_GetFunction(func) check func type should be
      exactly PyCFunction_Type. PyCFunction_GET_FUNCTION(func) does not check
      func type. But assumes func layout starts with PyCFunctionObject. i.e.
      for allowing func to be PyCFunction_Type subclass.
      
      This way an extension which subclasses PyCFunctionObject will get
      into trouble using PyCFunction_GET_FUNCTION() on Pyston
      e6931d60
  11. 20 Jun, 2016 1 commit
  12. 17 Jun, 2016 10 commits
  13. 16 Jun, 2016 7 commits