py/mpconfig.h: MP_NOINLINE is universally useful, move from unix port.

This commit is contained in:
Paul Sokolovsky 2016-06-15 23:52:00 +03:00
parent 422396cece
commit 0f5bf1aafe
2 changed files with 5 additions and 4 deletions

View File

@ -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)

View File

@ -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