1. 11 Apr, 2014 1 commit
    • Damien George's avatar
      py: Change compile order for default positional and keyword args. · 69b89d21
      Damien George authored
      This simplifies the compiler a little, since now it can do 1 pass over
      a function declaration, to determine default arguments.  I would have
      done this originally, but CPython 3.3 somehow had the default keyword
      args compiled before the default position args (even though they appear
      in the other order in the text of the script), and I thought it was
      important to have the same order of execution when evaluating default
      arguments.  CPython 3.4 has changed the order to the more obvious one,
      so we can also change.
      69b89d21
  2. 10 Apr, 2014 2 commits
  3. 09 Apr, 2014 2 commits
  4. 08 Apr, 2014 4 commits
  5. 06 Apr, 2014 1 commit
  6. 05 Apr, 2014 3 commits
  7. 04 Apr, 2014 1 commit
  8. 31 Mar, 2014 4 commits
  9. 30 Mar, 2014 7 commits
  10. 29 Mar, 2014 12 commits
  11. 28 Mar, 2014 2 commits
  12. 27 Mar, 2014 1 commit
    • Damien George's avatar
      py: Put n_state for bytecode in the bytecode prelude. · bee17b00
      Damien George authored
      Rationale: setting up the stack (state for locals and exceptions) is
      really part of the "code", it's the prelude of the function.  For
      example, native code adjusts the stack pointer on entry to the function.
      Native code doesn't need to know n_state for any other reason.  So
      putting the state size in the bytecode prelude is sensible.
      
      It reduced ROM usage on STM by about 30 bytes :)  And makes it easier to
      pass information about the bytecode between functions.
      bee17b00