summaryrefslogtreecommitdiff
path: root/py/gc.c
AgeCommit message (Expand)Author
2018-07-11WIP: after merge; before testingDan Halbert
2018-07-03Analysis fixes and long lived tweaks.Scott Shawcroft
2018-06-12py/gc: Add gc_sweep_all() function to run all remaining finalisers.Damien George
2018-05-21py/gc: When GC threshold is hit don't unnecessarily collect twice.Damien George
2018-05-13py/mpstate.h: Adjust start of root pointer section to exclude non-ptrs.Damien George
2018-02-19py/gc: Update comment now that gc_drain_stack is called gc_mark_subtree.Damien George
2018-02-19py/gc: Make GC stack pointer a local variable.Ayke van Laethem
2018-02-19py/gc: Rename gc_drain_stack to gc_mark_subtree and pass it first block.Ayke van Laethem
2018-02-19py/gc: Reduce code size by specialising VERIFY_MARK_AND_PUSH macro.Ayke van Laethem
2018-01-24Fix the initial state and polish a couple comments.Scott Shawcroft
2018-01-24Introduce a long lived section of the heap.Scott Shawcroft
2017-12-11py: Introduce a Python stack for scoped allocation.Damien George
2017-12-09py/gc: In sweep debug output, print pointer as a pointer.Paul Sokolovsky
2017-12-09py/gc: Factor out a macro to trace GC mark operations.Paul Sokolovsky
2017-12-08py/gc: Add CLEAR_ON_SWEEP option to debug mis-traced objects.Paul Sokolovsky
2017-11-29py/gc: In gc_realloc, convert pointer sanity checks to assertions.Damien George
2017-10-24Merge commit 'f869d6b2e339c04469c6c9ea3fb2fabd7bbb2d8c' into nrf2_mergeScott Shawcroft
2017-10-04all: Remove inclusion of internal py header files.Damien George
2017-08-25Initial merge of micropython v1.9.2 into circuitpython 2.0.0 (in development)...Dan Halbert
2017-08-15py: Add verbose debug compile-time flag MICROPY_DEBUG_VERBOSE.Stefan Naumann
2017-07-31all: Use the name MicroPython consistently in commentsAlexander Steffen
2017-07-12py/gc: Refactor assertions in gc_free function.Damien George
2017-06-20Merge tag 'v1.9.1'2.0.0-alpha.0Scott Shawcroft
2017-05-05atmel-samd: Fix sporadic "syntax errors"Scott Shawcroft
2017-04-12py/gc: Execute finaliser code in a protected environment.Damien George
2016-11-29Revert "py: Add ability to manually mark blocks during collect."Scott Shawcroft
2016-11-23Add heap analysis scripts based on GDB breakpoint logs.Scott Shawcroft
2016-11-21This introduces an alternative hardware API called nativeio structured around...Scott Shawcroft
2016-11-21py: Add ability to manually mark blocks during collect.Scott Shawcroft
2016-08-26py/gc: Add MICROPY_GC_CONSERVATIVE_CLEAR option to always zero memory.Damien George
2016-07-21py/gc: Implement GC running by allocation threshold.Paul Sokolovsky
2016-07-01py/gc: Calculate (and report) maximum contiguous free block size.Paul Sokolovsky
2016-06-30py/gc: Be sure to count last allocated block at heap end in stats.Paul Sokolovsky
2016-06-28py: Don't use gc or qstr mutex when the GIL is enabled.Damien George
2016-06-28py/gc: Fix GC+thread bug where ptr gets lost because it's not computed.Damien George
2016-06-28py/gc: Fix 2 cases of concurrent access to ATB and FTB.Damien George
2016-06-28py/gc: Make memory manager and garbage collector thread safe.Damien George
2016-06-28py: Add MP_STATE_THREAD to hold state specific to a given thread.Damien George
2016-05-13py/gc: gc_dump_alloc_table(): Dump heap offset instead of actual address.Paul Sokolovsky
2016-05-13gc: gc_dump_alloc_table(): Use '=' char for tail blocks.Paul Sokolovsky
2016-05-11py/gc: Make (byte)array type dumping conditional on these types being enabled.Paul Sokolovsky
2016-05-11py/gc: gc_dump_alloc_table(): Show byte/str and (byte)array objects.Paul Sokolovsky
2015-12-27py/gc: Improve mark/sweep debug output.Paul Sokolovsky
2015-12-18py/gc: When printing info, use %u instead of UINT_FMT for size_t args.Damien George
2015-12-16py/gc: Use size_t instead of mp_uint_t to count things related to heap.Damien George
2015-12-16py/gc: For finaliser, interpret a pointer into the heap as concrete obj.Damien George
2015-12-16py/gc: Scan GC blocks as an array of pointers, not an array of objects.Damien George
2015-12-03py/gc: Make GC block size be configurable.Paul Sokolovsky
2015-11-29py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR.Damien George
2015-11-29py/gc: Move away from using mp_uint_t, instead use uintptr_t and size_t.Damien George