Lines Matching refs:context

32 #define CONTEXT_RIP(context) (context->ContextRecord->Rip)  argument
33 #define CONTEXT_RAX(context) (context->ContextRecord->Rax) argument
34 #define CONTEXT_RCX(context) (context->ContextRecord->Rcx) argument
35 #define CONTEXT_RDX(context) (context->ContextRecord->Rdx) argument
36 #define CONTEXT_RBX(context) (context->ContextRecord->Rbx) argument
37 #define CONTEXT_RSP(context) (context->ContextRecord->Rsp) argument
38 #define CONTEXT_RBP(context) (context->ContextRecord->Rbp) argument
39 #define CONTEXT_RSI(context) (context->ContextRecord->Rsi) argument
40 #define CONTEXT_RDI(context) (context->ContextRecord->Rdi) argument
41 #define CONTEXT_R8(context) (context->ContextRecord->R8) argument
42 #define CONTEXT_R9(context) (context->ContextRecord->R9) argument
43 #define CONTEXT_R10(context) (context->ContextRecord->R10) argument
44 #define CONTEXT_R11(context) (context->ContextRecord->R11) argument
45 #define CONTEXT_R12(context) (context->ContextRecord->R12) argument
46 #define CONTEXT_R13(context) (context->ContextRecord->R13) argument
47 #define CONTEXT_R14(context) (context->ContextRecord->R14) argument
48 #define CONTEXT_R15(context) (context->ContextRecord->R15) argument
54 #define CONTEXT_RIP(context) (context->ContextRecord->Eip) argument
55 #define CONTEXT_RAX(context) (context->ContextRecord->Eax) argument
56 #define CONTEXT_RCX(context) (context->ContextRecord->Ecx) argument
57 #define CONTEXT_RDX(context) (context->ContextRecord->Edx) argument
58 #define CONTEXT_RBX(context) (context->ContextRecord->Ebx) argument
59 #define CONTEXT_RSP(context) (context->ContextRecord->Esp) argument
60 #define CONTEXT_RBP(context) (context->ContextRecord->Ebp) argument
61 #define CONTEXT_RSI(context) (context->ContextRecord->Esi) argument
62 #define CONTEXT_RDI(context) (context->ContextRecord->Edi) argument
68 #define CONTEXT_RIP(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RIP]) argument
69 #define CONTEXT_RAX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RAX]) argument
70 #define CONTEXT_RCX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RCX]) argument
71 #define CONTEXT_RDX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RDX]) argument
72 #define CONTEXT_RBX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RBX]) argument
73 #define CONTEXT_RSP(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RSP]) argument
74 #define CONTEXT_RBP(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RBP]) argument
75 #define CONTEXT_RSI(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RSI]) argument
76 #define CONTEXT_RDI(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_RDI]) argument
77 #define CONTEXT_R8(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R8]) argument
78 #define CONTEXT_R9(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R9]) argument
79 #define CONTEXT_R10(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R10]) argument
80 #define CONTEXT_R11(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R11]) argument
81 #define CONTEXT_R12(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R12]) argument
82 #define CONTEXT_R13(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R13]) argument
83 #define CONTEXT_R14(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R14]) argument
84 #define CONTEXT_R15(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_R15]) argument
90 #define CONTEXT_RIP(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_EIP]) argument
91 #define CONTEXT_RAX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_EAX]) argument
92 #define CONTEXT_RCX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_ECX]) argument
93 #define CONTEXT_RDX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_EDX]) argument
94 #define CONTEXT_RBX(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_EBX]) argument
95 #define CONTEXT_RSP(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_ESP]) argument
96 #define CONTEXT_RBP(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_EBP]) argument
97 #define CONTEXT_RSI(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_ESI]) argument
98 #define CONTEXT_RDI(context) (((struct ucontext_t *) context)->uc_mcontext.gregs[REG_EDI]) argument
104 #define CONTEXT_RIP(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RIP]) argument
105 #define CONTEXT_RAX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RAX]) argument
106 #define CONTEXT_RCX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RCX]) argument
107 #define CONTEXT_RDX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RDX]) argument
108 #define CONTEXT_RBX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RBX]) argument
109 #define CONTEXT_RSP(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RSP]) argument
110 #define CONTEXT_RBP(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RBP]) argument
111 #define CONTEXT_RSI(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RSI]) argument
112 #define CONTEXT_RDI(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_RDI]) argument
113 #define CONTEXT_R8(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R8]) argument
114 #define CONTEXT_R9(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R9]) argument
115 #define CONTEXT_R10(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R10]) argument
116 #define CONTEXT_R11(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R11]) argument
117 #define CONTEXT_R12(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R12]) argument
118 #define CONTEXT_R13(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R13]) argument
119 #define CONTEXT_R14(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R14]) argument
120 #define CONTEXT_R15(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_R15]) argument
126 #define CONTEXT_RIP(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_EIP]) argument
127 #define CONTEXT_RAX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_EAX]) argument
128 #define CONTEXT_RCX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_ECX]) argument
129 #define CONTEXT_RDX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_EDX]) argument
130 #define CONTEXT_RBX(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_EBX]) argument
131 #define CONTEXT_RSP(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_ESP]) argument
132 #define CONTEXT_RBP(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_EBP]) argument
133 #define CONTEXT_RSI(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_ESI]) argument
134 #define CONTEXT_RDI(context) (((struct ucontext *) context)->uc_mcontext.gregs[REG_EDI]) argument
140 #define CONTEXT_RIP(context) (*((unsigned long *) &((ucontext_t *) context)->uc_mcontext->__ss.__ri… argument
141 #define CONTEXT_RAX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__rax) argument
142 #define CONTEXT_RCX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__rcx) argument
143 #define CONTEXT_RDX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__rdx) argument
144 #define CONTEXT_RBX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__rbx) argument
145 #define CONTEXT_RSP(context) (*((unsigned long *) &((ucontext_t *) context)->uc_mcontext->__ss.__rs… argument
146 #define CONTEXT_RBP(context) (((ucontext_t *) context)->uc_mcontext->__ss.__rbp) argument
147 #define CONTEXT_RSI(context) (((ucontext_t *) context)->uc_mcontext->__ss.__rsi) argument
148 #define CONTEXT_RDI(context) (((ucontext_t *) context)->uc_mcontext->__ss.__rdi) argument
149 #define CONTEXT_R8(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r8) argument
150 #define CONTEXT_R9(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r9) argument
151 #define CONTEXT_R10(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r10) argument
152 #define CONTEXT_R11(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r11) argument
153 #define CONTEXT_R12(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r12) argument
154 #define CONTEXT_R13(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r13) argument
155 #define CONTEXT_R14(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r14) argument
156 #define CONTEXT_R15(context) (((ucontext_t *) context)->uc_mcontext->__ss.__r15) argument
162 #define CONTEXT_RIP(context) (*((unsigned long *) &((ucontext_t *) context)->uc_mcontext->__ss.__ei… argument
163 #define CONTEXT_RAX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__eax) argument
164 #define CONTEXT_RCX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__ecx) argument
165 #define CONTEXT_RDX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__edx) argument
166 #define CONTEXT_RBX(context) (((ucontext_t *) context)->uc_mcontext->__ss.__ebx) argument
167 #define CONTEXT_RSP(context) (*((unsigned long *) &((ucontext_t *) context)->uc_mcontext->__ss.__es… argument
168 #define CONTEXT_RBP(context) (((ucontext_t *) context)->uc_mcontext->__ss.__ebp) argument
169 #define CONTEXT_RSI(context) (((ucontext_t *) context)->uc_mcontext->__ss.__esi) argument
170 #define CONTEXT_RDI(context) (((ucontext_t *) context)->uc_mcontext->__ss.__edi) argument
174 #define CONTEXT_PC(context) CONTEXT_RIP(context) argument
337 static void *get_pr_from_context(CONTEXT_T context, int r, int size, int rex) in get_pr_from_context() argument
341 return &(CONTEXT_RAX(context)); in get_pr_from_context()
343 return &(CONTEXT_RCX(context)); in get_pr_from_context()
345 return &(CONTEXT_RDX(context)); in get_pr_from_context()
347 return &(CONTEXT_RBX(context)); in get_pr_from_context()
352 return (((uae_u8 *) &(CONTEXT_RAX(context))) + 1); /* AH */ in get_pr_from_context()
356 return &(CONTEXT_RBP(context)); in get_pr_from_context()
358 return (((uae_u8 *) &(CONTEXT_RCX(context))) + 1); /* CH */ in get_pr_from_context()
362 return &(CONTEXT_RSI(context)); in get_pr_from_context()
364 return (((uae_u8 *) &(CONTEXT_RDX(context))) + 1); /* DH */ in get_pr_from_context()
368 return &(CONTEXT_RDI(context)); in get_pr_from_context()
370 return (((uae_u8 *) &(CONTEXT_RBX(context))) + 1); /* BH */ in get_pr_from_context()
374 return &(CONTEXT_R8(context)); in get_pr_from_context()
376 return &(CONTEXT_R9(context)); in get_pr_from_context()
378 return &(CONTEXT_R10(context)); in get_pr_from_context()
380 return &(CONTEXT_R11(context)); in get_pr_from_context()
382 return &(CONTEXT_R12(context)); in get_pr_from_context()
384 return &(CONTEXT_R13(context)); in get_pr_from_context()
386 return &(CONTEXT_R14(context)); in get_pr_from_context()
388 return &(CONTEXT_R15(context)); in get_pr_from_context()
412 static int handle_access(uintptr_t fault_addr, CONTEXT_T context) in handle_access() argument
414 uae_u8 *fault_pc = (uae_u8 *) CONTEXT_PC(context); in handle_access()
451 void *pr = get_pr_from_context(context, r, size, rex); in handle_access()
469 target = (uae_u8*) CONTEXT_PC(context); in handle_access()
513 raw_mov_b_mi(CONTEXT_PC(context) + i, vecbuf[i]); in handle_access()
516 raw_jmp(uae_p32(CONTEXT_PC(context)) + len); in handle_access()
561 static void sigsegv_handler(int signum, siginfo_t *info, void *context) in sigsegv_handler() argument
563 uae_u8 *i = (uae_u8 *) CONTEXT_PC(context); in sigsegv_handler()
567 if (handle_access(address, context)) { in sigsegv_handler()