summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--stm/mpconfigport.h8
-rw-r--r--stm/std.h4
2 files changed, 8 insertions, 4 deletions
diff --git a/stm/mpconfigport.h b/stm/mpconfigport.h
index fd7af29d27..1d79243f9b 100644
--- a/stm/mpconfigport.h
+++ b/stm/mpconfigport.h
@@ -21,6 +21,14 @@ typedef float machine_float_t;
machine_float_t machine_sqrt(machine_float_t x);
+// There is no classical C heap in bare-metal ports, only Python
+// garbage-collected heap. For completeness, emulate C heap via
+// GC heap. Note that MicroPython core never uses malloc() and friends,
+// so these defines are mostly to help extension module writers.
+#define malloc gc_alloc
+#define free gc_free
+#define realloc gc_realloc
+
// board specific definitions
// choose 1 of these boards
diff --git a/stm/std.h b/stm/std.h
index a2bf706176..843ddd8270 100644
--- a/stm/std.h
+++ b/stm/std.h
@@ -2,10 +2,6 @@ typedef unsigned int size_t;
void __assert_func(void);
-void *malloc(size_t n);
-void free(void *ptr);
-void *realloc(void *ptr, size_t n);
-
void *memcpy(void *dest, const void *src, size_t n);
void *memmove(void *dest, const void *src, size_t n);
void *memset(void *s, int c, size_t n);