1. 29 Aug, 2014 4 commits
  2. 28 Aug, 2014 3 commits
    • Damien George's avatar
      py: Move native glue code from runtime.c to new file nativeglue.c. · 110ba359
      Damien George authored
      This way, the native glue code is only compiled if native code is
      enabled (which makes complete sense; thanks to Paul Sokolovsky for
      the idea).
      
      Should fix issue #834.
      110ba359
    • Damien George's avatar
      py, gc: Further reduce heap fragmentation with new, faster gc alloc. · 516b09ef
      Damien George authored
      The heap allocation is now exactly as it was before the "faster gc
      alloc" patch, but it's still nearly as fast.  It is fixed by being
      careful to always update the "last free block" pointer whenever the heap
      changes (eg free or realloc).
      
      Tested on all tests by enabling EXTENSIVE_HEAP_PROFILING in py/gc.c:
      old and new allocator have exactly the same behaviour, just the new one
      is much faster.
      516b09ef
    • Damien George's avatar
      py: Reduce fragmentation of GC heap. · b796e3d8
      Damien George authored
      Recent speed up of GC allocation made the GC have a fragmented heap.
      This patch restores "original fragmentation behaviour" whilst still
      retaining relatively fast allocation.  This patch works because there is
      always going to be a single block allocated now and then, which advances
      the gc_last_free_atb_index pointer often enough so that the whole heap
      doesn't need scanning.
      
      Should address issue #836.
      b796e3d8
  3. 27 Aug, 2014 4 commits
  4. 26 Aug, 2014 2 commits
    • Damien George's avatar
      py: Fix line number printing for file with 1 line. · b427d6ae
      Damien George authored
      With a file with 1 line (and an error on that line), used to show the
      line as number 0.  Now shows it correctly as line number 1.
      
      But, when line numbers are disabled, it now prints line number 1 for any
      line that has an error (instead of 0 as previously).  This might end up
      being confusing, but requires extra RAM and/or hack logic to make it
      print something special in the case of no line numbers.
      b427d6ae
    • Damien George's avatar
      py: Add dispatch for user defined ==, >, <=, >=. · 779794a6
      Damien George authored
      Addresses issue #827.
      779794a6
  5. 25 Aug, 2014 2 commits
    • Damien George's avatar
      stmhal: Make enable_irq and disable_irq inline functions. · e5cbb703
      Damien George authored
      These functions are generally 1 machine instruction, and are used in
      critical code, so makes sense to have them inline.
      
      Also leave these functions uninverted (ie 0 means enable, 1 means
      disable) and provide macro constants if you really need to distinguish
      the states.  This makes for smaller code as well (combined with
      inlining).
      
      Applied to teensy port as well.
      e5cbb703
    • Dave Hylands's avatar
      Add save/restore_irq · 9480138f
      Dave Hylands authored
      Factored irq functions into a separate file.
      9480138f
  6. 24 Aug, 2014 2 commits
  7. 22 Aug, 2014 3 commits
  8. 16 Aug, 2014 3 commits
  9. 15 Aug, 2014 4 commits
  10. 13 Aug, 2014 1 commit
  11. 12 Aug, 2014 6 commits
  12. 11 Aug, 2014 3 commits
  13. 10 Aug, 2014 3 commits