2019-01-13 15:09:05 +08:00
|
|
|
#ifndef __ARCH_H__
|
|
|
|
#define __ARCH_H__
|
|
|
|
|
2019-01-14 01:18:13 +08:00
|
|
|
struct _Context {
|
2019-02-19 14:02:13 +08:00
|
|
|
union {
|
2020-02-12 15:09:39 +08:00
|
|
|
void *as;
|
2019-02-19 14:02:13 +08:00
|
|
|
uint32_t gpr[32];
|
|
|
|
};
|
2019-01-17 20:09:42 +08:00
|
|
|
uint32_t lo, hi;
|
|
|
|
uint32_t cause, status, epc;
|
2019-01-14 01:18:13 +08:00
|
|
|
};
|
|
|
|
|
2019-08-05 15:00:27 +08:00
|
|
|
#define GPR1 gpr[2] // v0
|
|
|
|
#define GPR2 gpr[4] // a0
|
|
|
|
#define GPR3 gpr[5] // a1
|
|
|
|
#define GPR4 gpr[6] // a2
|
|
|
|
#define GPRx gpr[2] // v0
|
2019-01-17 20:09:42 +08:00
|
|
|
|
2019-01-13 15:09:05 +08:00
|
|
|
#endif
|