Revision a1d1bb31 cpu-defs.h
b/cpu-defs.h | ||
---|---|---|
82 | 82 |
#define EXCP_HLT 0x10001 /* hlt instruction reached */ |
83 | 83 |
#define EXCP_DEBUG 0x10002 /* cpu stopped after a breakpoint or singlestep */ |
84 | 84 |
#define EXCP_HALTED 0x10003 /* cpu is halted (waiting for external event) */ |
85 |
#define MAX_BREAKPOINTS 32 |
|
86 |
#define MAX_WATCHPOINTS 32 |
|
87 | 85 |
|
88 | 86 |
#define TB_JMP_CACHE_BITS 12 |
89 | 87 |
#define TB_JMP_CACHE_SIZE (1 << TB_JMP_CACHE_BITS) |
... | ... | |
145 | 143 |
struct kvm_run; |
146 | 144 |
struct KVMState; |
147 | 145 |
|
146 |
typedef struct CPUBreakpoint { |
|
147 |
target_ulong pc; |
|
148 |
int flags; /* BP_* */ |
|
149 |
struct CPUBreakpoint *prev, *next; |
|
150 |
} CPUBreakpoint; |
|
151 |
|
|
152 |
typedef struct CPUWatchpoint { |
|
153 |
target_ulong vaddr; |
|
154 |
target_ulong len_mask; |
|
155 |
int flags; /* BP_* */ |
|
156 |
struct CPUWatchpoint *prev, *next; |
|
157 |
} CPUWatchpoint; |
|
158 |
|
|
148 | 159 |
#define CPU_TEMP_BUF_NLONGS 128 |
149 | 160 |
#define CPU_COMMON \ |
150 | 161 |
struct TranslationBlock *current_tb; /* currently executing TB */ \ |
... | ... | |
177 | 188 |
\ |
178 | 189 |
/* from this point: preserved by CPU reset */ \ |
179 | 190 |
/* ice debug support */ \ |
180 |
target_ulong breakpoints[MAX_BREAKPOINTS]; \ |
|
181 |
int nb_breakpoints; \ |
|
191 |
CPUBreakpoint *breakpoints; \ |
|
182 | 192 |
int singlestep_enabled; \ |
183 | 193 |
\ |
184 |
struct { \ |
|
185 |
target_ulong vaddr; \ |
|
186 |
int type; /* PAGE_READ/PAGE_WRITE */ \ |
|
187 |
} watchpoint[MAX_WATCHPOINTS]; \ |
|
188 |
int nb_watchpoints; \ |
|
189 |
int watchpoint_hit; \ |
|
194 |
CPUWatchpoint *watchpoints; \ |
|
195 |
CPUWatchpoint *watchpoint_hit; \ |
|
190 | 196 |
\ |
191 | 197 |
struct GDBRegisterState *gdb_regs; \ |
192 | 198 |
\ |
Also available in: Unified diff