diff options
author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2015-12-26 11:39:46 +0200 |
---|---|---|
committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2016-03-08 10:16:06 +0700 |
commit | 88b04909453a6847d3d902fb634d5dd14b2f32dd (patch) | |
tree | fe0154e9d314f03b10d0baf6e16a73af167846b0 /esp8266 | |
parent | 4f0080346b565cbf9f2204874b81814013d67488 (diff) | |
download | micropython-88b04909453a6847d3d902fb634d5dd14b2f32dd.tar.gz micropython-88b04909453a6847d3d902fb634d5dd14b2f32dd.zip |
esp8266: Don't gc-collect BSS.
None of the other ports do, since introduction of mp_state_ctx_t. In
the case of current esp8266 port, heap is inside BSS, so scanning it
picked up a lot of dead pointers.
Diffstat (limited to 'esp8266')
-rw-r--r-- | esp8266/gccollect.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/esp8266/gccollect.c b/esp8266/gccollect.c index 541500292e..3a5032bc93 100644 --- a/esp8266/gccollect.c +++ b/esp8266/gccollect.c @@ -39,10 +39,6 @@ void gc_collect(void) { // start the GC gc_collect_start(); - // We need to scan everything in RAM that can hold a pointer. - // The data segment is used, but should not contain pointers, so we just scan the bss. - gc_collect_root((void**)&_bss_start, ((uint32_t)&_bss_end - (uint32_t)&_bss_start) / sizeof(uint32_t)); - // get the registers and the sp mp_uint_t regs[8]; mp_uint_t sp = gc_helper_get_regs_and_sp(regs); |