53 asm(
"mfc0 %0, $13\nnop\nmfc0 %1, $14\nnop" :
"=r"(cause),
"=r"(epc));
83 static int s_interruptsWereEnabled;
92 for (
unsigned i = 0; i < 7; i++) {
118 s_interruptsWereEnabled = enterCriticalSection();
120 syscall_flushCache();
125 syscall_flushCache();
126 if (s_interruptsWereEnabled) leaveCriticalSection();
s_got80
Definition cester-cop0.c:102
s_got40
Definition cester-cop0.c:101
testname
Definition cester-cop0.c:86
s_regs
Definition cester-cop0.c:107
CESTER_BODY(static int s_got40;static int s_got80;static uint32_t s_cause;static uint32_t s_epc;static uint32_t s_from;static uint32_t *s_resume;static uint32_t *s_regs;static uint32_t(*s_customhandler)()=NULL;static uint32_t s_oldIMASK;static uint32_t s_oldDPCR;static uint32_t s_oldDICR;uint32_t handler(uint32_t *regs, uint32_t from) { if(from==0x40) s_got40=1;if(from==0x80) s_got80=1;uint32_t cause;uint32_t epc;s_from=from;asm("mfc0 %0, $13\nnop\nmfc0 %1, $14\nnop" :"=r"(cause), "=r"(epc));s_cause=cause;s_epc=epc;if(s_customhandler) { return s_customhandler();} else { return s_resume ?((uint32_t) s_resume) :(epc+4);} } void installExceptionHandlers(uint32_t(*handler)(uint32_t *regs, uint32_t from));void uninstallExceptionHandlers();uint32_t branchbranch1();uint32_t branchbranch2();uint32_t jumpjump1();uint32_t jumpjump2();uint32_t cpu_LWR_LWL_half(uint32_t buff[], uint32_t initial);uint32_t cpu_LWR_LWL_nodelay(uint32_t buff[], uint32_t initial);uint32_t cpu_LWR_LWL_delayed(uint32_t buff[], uint32_t initial);uint32_t cpu_LWR_LWL_load_different(uint32_t buff[], uint32_t initial);uint32_t cpu_LW_LWR(uint32_t buff[], uint32_t initial);uint32_t cpu_delayed_load(uint32_t buff[], uint32_t override);uint32_t cpu_delayed_load_cancelled(uint32_t buff[], uint32_t override);uint64_t cpu_delayed_load_load(uint32_t buff[], uint32_t override);uint32_t linkandload();uint32_t lwandlink();uint32_t nolink();static int s_interruptsWereEnabled;) CESTER_BEFORE_EACH(cpu_tests
s_from
Definition cester-cop0.c:105
IREG
Definition cester-cop0.c:91
s_customhandler
Definition cester-cop0.c:108
s_epc
Definition cester-cop0.c:104
s_oldDPCR
Definition cester-cop0.c:88
DICR
Definition cester-cop0.c:99
testindex
Definition cester-cop0.c:86
uint32_t dicr
Definition cester-cop0.c:98
IMASK
Definition cester-cop0.c:90
DPCR
Definition cester-cop0.c:97
s_resume
Definition cester-cop0.c:106
s_cause
Definition cester-cop0.c:103
s_oldDICR
Definition cester-cop0.c:89
s_oldIMASK
Definition cester-cop0.c:87
cpu_tests
Definition cop0.c:78
uint32_t buff[2]
Definition cpu.c:77
#define DMA_CTRL
Definition dma.h:36
void installExceptionHandlers(uint32_t(*handler)(uint32_t *regs, uint32_t from))
Definition exceptions.cpp:70
void uninstallExceptionHandlers()
Definition exceptions.cpp:84
static uint32_t uint32_t void(* handler)())
Definition syscalls.h:370
void uint32_t(classId, spec)