Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
uPython-mirror
Commits
5aa740c3
Commit
5aa740c3
authored
Jun 24, 2014
by
Paul Sokolovsky
Browse files
modgc: Add mem_free()/mem_alloc() methods.
Return free/allocated memory on GC heap.
parent
e973acde
Changes
2
Show whitespace changes
Inline
Side-by-side
py/modgc.c
View file @
5aa740c3
...
@@ -61,11 +61,27 @@ STATIC mp_obj_t gc_enable(void) {
...
@@ -61,11 +61,27 @@ STATIC mp_obj_t gc_enable(void) {
}
}
MP_DEFINE_CONST_FUN_OBJ_0
(
gc_enable_obj
,
gc_enable
);
MP_DEFINE_CONST_FUN_OBJ_0
(
gc_enable_obj
,
gc_enable
);
STATIC
mp_obj_t
gc_mem_free
(
void
)
{
gc_info_t
info
;
gc_info
(
&
info
);
return
MP_OBJ_NEW_SMALL_INT
((
machine_uint_t
)
info
.
free
);
}
MP_DEFINE_CONST_FUN_OBJ_0
(
gc_mem_free_obj
,
gc_mem_free
);
STATIC
mp_obj_t
gc_mem_alloc
(
void
)
{
gc_info_t
info
;
gc_info
(
&
info
);
return
MP_OBJ_NEW_SMALL_INT
((
machine_uint_t
)
info
.
used
);
}
MP_DEFINE_CONST_FUN_OBJ_0
(
gc_mem_alloc_obj
,
gc_mem_alloc
);
STATIC
const
mp_map_elem_t
mp_module_gc_globals_table
[]
=
{
STATIC
const
mp_map_elem_t
mp_module_gc_globals_table
[]
=
{
{
MP_OBJ_NEW_QSTR
(
MP_QSTR___name__
),
MP_OBJ_NEW_QSTR
(
MP_QSTR_gc
)
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR___name__
),
MP_OBJ_NEW_QSTR
(
MP_QSTR_gc
)
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_collect
),
(
mp_obj_t
)
&
gc_collect_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_collect
),
(
mp_obj_t
)
&
gc_collect_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_disable
),
(
mp_obj_t
)
&
gc_disable_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_disable
),
(
mp_obj_t
)
&
gc_disable_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_enable
),
(
mp_obj_t
)
&
gc_enable_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_enable
),
(
mp_obj_t
)
&
gc_enable_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_mem_free
),
(
mp_obj_t
)
&
gc_mem_free_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_mem_alloc
),
(
mp_obj_t
)
&
gc_mem_alloc_obj
},
};
};
STATIC
const
mp_obj_dict_t
mp_module_gc_globals
=
{
STATIC
const
mp_obj_dict_t
mp_module_gc_globals
=
{
...
...
py/qstrdefs.h
View file @
5aa740c3
...
@@ -377,6 +377,8 @@ Q(gc)
...
@@ -377,6 +377,8 @@ Q(gc)
Q
(
collect
)
Q
(
collect
)
Q
(
disable
)
Q
(
disable
)
Q
(
enable
)
Q
(
enable
)
Q
(
mem_free
)
Q
(
mem_alloc
)
#endif
#endif
#if MICROPY_PY_BUILTINS_PROPERTY
#if MICROPY_PY_BUILTINS_PROPERTY
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment