1. 20 Jan, 2015 2 commits
  2. 16 Jan, 2015 2 commits
  3. 15 Jan, 2015 1 commit
    • Paul Sokolovsky's avatar
      pyexec: Add event-driven variant pyexec_friendly_repl(). · 87bc8e2b
      Paul Sokolovsky authored
      pyexec_friendly_repl_process_char() and friends, useful for ports which
      integrate into existing cooperative multitasking system.
      
      Unlike readline() refactor before, this was implemented in less formal,
      trial&error process, minor functionality regressions are still known
      (like soft&hard reset support). So, original loop-based pyexec_friendly_repl()
      is left intact, specific implementation selectable by config setting.
      87bc8e2b
  4. 14 Jan, 2015 5 commits
  5. 13 Jan, 2015 4 commits
  6. 12 Jan, 2015 6 commits
  7. 11 Jan, 2015 8 commits
  8. 10 Jan, 2015 1 commit
  9. 09 Jan, 2015 4 commits
  10. 08 Jan, 2015 3 commits
  11. 07 Jan, 2015 3 commits
    • Damien George's avatar
      py: Add option to cache map lookup results in bytecode. · 7ee91cf8
      Damien George authored
      This is a simple optimisation inspired by JITing technology: we cache in
      the bytecode (using 1 byte) the offset of the last successful lookup in
      a map. This allows us next time round to check in that location in the
      hash table (mp_map_t) for the desired entry, and if it's there use that
      entry straight away.  Otherwise fallback to a normal map lookup.
      
      Works for LOAD_NAME, LOAD_GLOBAL, LOAD_ATTR and STORE_ATTR opcodes.
      
      On a few tests it gives >90% cache hit and greatly improves speed of
      code.
      
      Disabled by default.  Enabled for unix and stmhal ports.
      7ee91cf8
    • Damien George's avatar
      py: Put all global state together in state structures. · b4b10fd3
      Damien George authored
      This patch consolidates all global variables in py/ core into one place,
      in a global structure.  Root pointers are all located together to make
      GC tracing easier and more efficient.
      b4b10fd3
    • Damien George's avatar
      py: Temporary fix for conversion of float to int when fits in small int. · ad2307c9
      Damien George authored
      Addresses issue #1044 (see also #1040).  Could do with a better fix.
      ad2307c9
  12. 06 Jan, 2015 1 commit
    • Paul Sokolovsky's avatar
      showbc: Show conditional jump destination as unsigned value. · d8bfd77a
      Paul Sokolovsky authored
      This is consistent with how BC_JUMP was handled before. We never show jumps
      destinations relative to jump instrucion itself, only relative to beginning
      of function. Another useful way to show them as absolute (real memory
      address), and this change makes result expected and consistent with how
      BC_JUMP is shown.
      d8bfd77a