libdragon
Loading...
Searching...
No Matches
exception_internal.h
1#ifndef __LIBDRAGON_EXCEPTION_INTERNAL_H
2#define __LIBDRAGON_EXCEPTION_INTERNAL_H
3
4#include <stdio.h>
5#include <stdbool.h>
6#include <stdarg.h>
7#include "exception.h"
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
16extern const char *__mips_gpr[34];
20extern const char *__mips_fpreg[32];
21
22void __exception_dump_header(FILE *out, exception_t* ex);
23void __exception_dump_gpr(exception_t* ex, void (*cb)(void *arg, const char *regname, char* value), void *arg);
24void __exception_dump_fpr(exception_t* ex, void (*cb)(void *arg, const char *regname, char* hexvalue, char *singlevalue, char *doublevalue), void *arg);
25
31__attribute__((noreturn))
32void __inspector_exception(exception_t* ex);
33
41__attribute__((noreturn))
42void __inspector_assertion(const char *failedexpr, const char *msg, va_list args);
43
50__attribute__((noreturn))
51void __inspector_cppexception(const char *exctype, const char *what);
52
53#ifdef __cplusplus
54}
55#endif
56
57#endif
void __exception_dump_gpr(exception_t *ex, void(*cb)(void *arg, const char *regname, char *value), void *arg)
Helper to dump the GPRs of an exception.
Definition exception.c:119
void __exception_dump_header(FILE *out, exception_t *ex)
Dump a brief recap of the exception.
Definition exception.c:54
void __exception_dump_fpr(exception_t *ex, void(*cb)(void *arg, const char *regname, char *hexvalue, char *singlevalue, char *doublevalue), void *arg)
Helper to dump the FPRs of an exception.
Definition exception.c:142
Exception Handler.
Structure representing an exception.
Definition exception.h:111