|
@@ -115,8 +115,19 @@ struct TCGCPUOps {
|
|
void (*do_interrupt)(CPUState *cpu);
|
|
void (*do_interrupt)(CPUState *cpu);
|
|
/** @cpu_exec_interrupt: Callback for processing interrupts in cpu_exec */
|
|
/** @cpu_exec_interrupt: Callback for processing interrupts in cpu_exec */
|
|
bool (*cpu_exec_interrupt)(CPUState *cpu, int interrupt_request);
|
|
bool (*cpu_exec_interrupt)(CPUState *cpu, int interrupt_request);
|
|
- /** @cpu_exec_halt: Callback for handling halt in cpu_exec */
|
|
|
|
- void (*cpu_exec_halt)(CPUState *cpu);
|
|
|
|
|
|
+ /**
|
|
|
|
+ * @cpu_exec_halt: Callback for handling halt in cpu_exec.
|
|
|
|
+ *
|
|
|
|
+ * The target CPU should do any special processing here that it needs
|
|
|
|
+ * to do when the CPU is in the halted state.
|
|
|
|
+ *
|
|
|
|
+ * Return true to indicate that the CPU should now leave halt, false
|
|
|
|
+ * if it should remain in the halted state.
|
|
|
|
+ *
|
|
|
|
+ * If this method is not provided, the default is to do nothing, and
|
|
|
|
+ * to leave halt if cpu_has_work() returns true.
|
|
|
|
+ */
|
|
|
|
+ bool (*cpu_exec_halt)(CPUState *cpu);
|
|
/**
|
|
/**
|
|
* @tlb_fill: Handle a softmmu tlb miss
|
|
* @tlb_fill: Handle a softmmu tlb miss
|
|
*
|
|
*
|