diff options
Diffstat (limited to 'sys/arm/include')
-rw-r--r-- | sys/arm/include/profile.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/arm/include/profile.h b/sys/arm/include/profile.h index efd3003..4c5321b 100644 --- a/sys/arm/include/profile.h +++ b/sys/arm/include/profile.h @@ -72,6 +72,19 @@ extern int mcount_lock; #endif #endif /* GUPROF */ +void bintr(void); +void btrap(void); +void eintr(void); +void user(void); + +#define MCOUNT_FROMPC_USER(pc) \ + ((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc) + +#define MCOUNT_FROMPC_INTR(pc) \ + ((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ? \ + ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr : \ + (uintfptr_t)btrap) : ~0U) + #else /* !_KERNEL */ #define FUNCTION_ALIGNMENT 4 |