drc/gte: add some stall handling
[pcsx_rearmed.git] / libpcsxcore / new_dynarec / assem_arm64.h
1 #define HOST_REGS 29
2 #define HOST_BTREG 27
3 #define EXCLUDE_REG -1
4
5 #define HOST_IMM8 1
6
7 /* calling convention:
8    r0 -r17: caller-save
9    r19-r29: callee-save */
10
11 #define SP 31
12 #define WZR SP
13 #define XZR SP
14
15 #define LR 30
16 #define HOST_TEMPREG LR
17
18 // Note: FP is set to &dynarec_local when executing generated code.
19 // Thus the local variables are actually global and not on the stack.
20 #define FP 29
21 #define rFP x29
22
23 #define HOST_CCREG 28
24 #define rCC w28
25
26 // stack space
27 #define SSP_CALLEE_REGS (8*12)
28 #define SSP_CALLER_REGS (8*20)
29 #define SSP_ALL (SSP_CALLEE_REGS+SSP_CALLER_REGS)
30
31 #define TARGET_SIZE_2 24 // 2^24 = 16 megabytes
32
33 #ifndef __ASSEMBLER__
34
35 extern char *invc_ptr;
36
37 struct tramp_insns
38 {
39   u_int ldr;
40   u_int br;
41 };
42
43 static void clear_cache_arm64(char *start, char *end);
44
45 #endif // !__ASSEMBLY__