Rev 2903 | Rev 2919 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2903 | Rev 2918 | ||
|---|---|---|---|
| Line 155... | Line 155... | ||
| 155 | UDEBUG_EVENT_STOP, /**< Stopped on DEBUG_STOP request */ |
155 | UDEBUG_EVENT_STOP, /**< Stopped on DEBUG_STOP request */ |
| 156 | UDEBUG_EVENT_SYSCALL_B, /**< Before beginning syscall execution */ |
156 | UDEBUG_EVENT_SYSCALL_B, /**< Before beginning syscall execution */ |
| 157 | UDEBUG_EVENT_SYSCALL_E, /**< After finishing syscall execution */ |
157 | UDEBUG_EVENT_SYSCALL_E, /**< After finishing syscall execution */ |
| 158 | UDEBUG_EVENT_THREAD_B, /**< The task created a new thread */ |
158 | UDEBUG_EVENT_THREAD_B, /**< The task created a new thread */ |
| 159 | UDEBUG_EVENT_THREAD_E, /**< A thread exited */ |
159 | UDEBUG_EVENT_THREAD_E, /**< A thread exited */ |
| - | 160 | UDEBUG_EVENT_BREAKPOINT /**< Breakpoint instruction executed */ |
|
| 160 | } udebug_event_t; |
161 | } udebug_event_t; |
| 161 | 162 | ||
| 162 | #define UDEBUG_EVMASK(event) (1 << ((event) - 1)) |
163 | #define UDEBUG_EVMASK(event) (1 << ((event) - 1)) |
| 163 | 164 | ||
| 164 | typedef enum { |
165 | typedef enum { |
| Line 166... | Line 167... | ||
| 166 | UDEBUG_EM_STOP = UDEBUG_EVMASK(UDEBUG_EVENT_STOP), |
167 | UDEBUG_EM_STOP = UDEBUG_EVMASK(UDEBUG_EVENT_STOP), |
| 167 | UDEBUG_EM_SYSCALL_B = UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_B), |
168 | UDEBUG_EM_SYSCALL_B = UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_B), |
| 168 | UDEBUG_EM_SYSCALL_E = UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_E), |
169 | UDEBUG_EM_SYSCALL_E = UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_E), |
| 169 | UDEBUG_EM_THREAD_B = UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_B), |
170 | UDEBUG_EM_THREAD_B = UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_B), |
| 170 | UDEBUG_EM_THREAD_E = UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_E), |
171 | UDEBUG_EM_THREAD_E = UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_E), |
| - | 172 | UDEBUG_EM_BREAKPOINT = UDEBUG_EVMASK(UDEBUG_EVENT_BREAKPOINT), |
|
| 171 | UDEBUG_EM_ALL = |
173 | UDEBUG_EM_ALL = |
| 172 | UDEBUG_EVMASK(UDEBUG_EVENT_FINISHED) | |
174 | UDEBUG_EVMASK(UDEBUG_EVENT_FINISHED) | |
| 173 | UDEBUG_EVMASK(UDEBUG_EVENT_STOP) | |
175 | UDEBUG_EVMASK(UDEBUG_EVENT_STOP) | |
| 174 | UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_B) | |
176 | UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_B) | |
| 175 | UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_E) | |
177 | UDEBUG_EVMASK(UDEBUG_EVENT_SYSCALL_E) | |
| 176 | UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_B) | |
178 | UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_B) | |
| 177 | UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_E) |
179 | UDEBUG_EVMASK(UDEBUG_EVENT_THREAD_E) | |
| - | 180 | UDEBUG_EVMASK(UDEBUG_EVENT_BREAKPOINT) |
|
| 178 | } udebug_evmask_t; |
181 | } udebug_evmask_t; |
| 179 | 182 | ||
| 180 | #ifdef KERNEL |
183 | #ifdef KERNEL |
| 181 | 184 | ||
| 182 | typedef enum { |
185 | typedef enum { |
| Line 201... | Line 204... | ||
| 201 | void udebug_thread_e_event(void); |
204 | void udebug_thread_e_event(void); |
| 202 | 205 | ||
| 203 | void udebug_stoppable_begin(void); |
206 | void udebug_stoppable_begin(void); |
| 204 | void udebug_stoppable_end(void); |
207 | void udebug_stoppable_end(void); |
| 205 | 208 | ||
| - | 209 | void udebug_breakpoint_event(uintptr_t addr); |
|
| - | 210 | ||
| 206 | int udebug_task_cleanup(struct task *ta); |
211 | int udebug_task_cleanup(struct task *ta); |
| 207 | 212 | ||
| 208 | #endif |
213 | #endif |
| 209 | 214 | ||
| 210 | #endif |
215 | #endif |