diff --git a/py/mpconfig.h b/py/mpconfig.h
index 084fc246f5312ad5fe30d6653234e1ed3089501e..25aac8b7e3733a1df847e5eeadbf6832f9954fd0 100644
--- a/py/mpconfig.h
+++ b/py/mpconfig.h
@@ -1031,6 +1031,11 @@ typedef double mp_float_t;
 #define MP_WEAK __attribute__((weak))
 #endif
 
+// Modifier for functions which should be never inlined
+#ifndef MP_NOINLINE
+#define MP_NOINLINE __attribute__((noinline))
+#endif
+
 // Condition is likely to be true, to help branch prediction
 #ifndef MP_LIKELY
 #define MP_LIKELY(x) __builtin_expect((x), 1)
diff --git a/unix/mpconfigport.h b/unix/mpconfigport.h
index 9601673a74a26b3aee374b455ca35a4ed47dce91..7f976fdad4b93f6fcad36c0276cd1240afe35f93 100644
--- a/unix/mpconfigport.h
+++ b/unix/mpconfigport.h
@@ -234,10 +234,6 @@ void mp_unix_mark_exec(void);
 #define MP_PLAT_ALLOC_EXEC(min_size, ptr, size) mp_unix_alloc_exec(min_size, ptr, size)
 #define MP_PLAT_FREE_EXEC(ptr, size) mp_unix_free_exec(ptr, size)
 
-#ifndef MP_NOINLINE
-#define MP_NOINLINE __attribute__((noinline))
-#endif
-
 #if MICROPY_PY_OS_DUPTERM
 #define MP_PLAT_PRINT_STRN(str, len) mp_hal_stdout_tx_strn_cooked(str, len)
 #else