diff --git a/src/h.h b/src/h.h index 439c5c34..e789e9fd 100644 --- a/src/h.h +++ b/src/h.h @@ -19,6 +19,7 @@ #define I32_MAX ((i32)((1LL<<31)-1)) #define U16_MAX ((u16)-1) #define UD __builtin_unreachable(); +#define NOINLINE __attribute__ ((noinline)) #define usz u32 #define ur u8 diff --git a/src/mm_buddyTemplate.c b/src/mm_buddyTemplate.c index 943959a9..a7c18b13 100644 --- a/src/mm_buddyTemplate.c +++ b/src/mm_buddyTemplate.c @@ -12,7 +12,7 @@ AllocInfo* al; u64 alCap; u64 alSize; -static EmptyValue* BN(makeEmpty)(u8 bucket) { // result->next is garbage +static NOINLINE EmptyValue* BN(makeEmpty)(u8 bucket) { // result->next is garbage u8 cb = bucket; EmptyValue* c; while (true) {