You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
529 B
27 lines
529 B
7 years ago
|
//
|
||
|
// Created by MightyPork on 2017/11/26.
|
||
|
//
|
||
|
|
||
|
#ifndef GEX_CORTEX_UTILS_H
|
||
|
#define GEX_CORTEX_UTILS_H
|
||
|
|
||
|
#include "platform.h"
|
||
|
|
||
|
static inline bool inIRQ(void)
|
||
|
{
|
||
|
return __get_IPSR() != 0;
|
||
|
}
|
||
|
|
||
|
register char *__SP asm("sp");
|
||
|
|
||
|
static inline bool isDynAlloc(const void *obj)
|
||
|
{
|
||
|
// this is the 0x20000000-something address that should correspond to heap bottom
|
||
|
extern char heapstart __asm("end");
|
||
|
|
||
|
return ((uint32_t)obj >= (uint32_t)&heapstart)
|
||
|
&& ((uint32_t)obj < (uint32_t)__SP);
|
||
|
}
|
||
|
|
||
|
#endif //GEX_CORTEX_UTILS_H
|