mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
target-arm: Implement handling of fired watchpoints
Implement the ARM debug exception handler for dealing with fired watchpoints. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
73c5211ba9
commit
3ff6fc9148
4 changed files with 204 additions and 1 deletions
|
@ -307,6 +307,12 @@ static inline uint32_t syn_swstep(int same_el, int isv, int ex)
|
|||
| (isv << 24) | (ex << 6) | 0x22;
|
||||
}
|
||||
|
||||
static inline uint32_t syn_watchpoint(int same_el, int cm, int wnr)
|
||||
{
|
||||
return (EC_WATCHPOINT << ARM_EL_EC_SHIFT) | (same_el << ARM_EL_EC_SHIFT)
|
||||
| (cm << 8) | (wnr << 6) | 0x22;
|
||||
}
|
||||
|
||||
/* Update a QEMU watchpoint based on the information the guest has set in the
|
||||
* DBGWCR<n>_EL1 and DBGWVR<n>_EL1 registers.
|
||||
*/
|
||||
|
@ -317,4 +323,7 @@ void hw_watchpoint_update(ARMCPU *cpu, int n);
|
|||
*/
|
||||
void hw_watchpoint_update_all(ARMCPU *cpu);
|
||||
|
||||
/* Callback function for when a watchpoint or breakpoint triggers. */
|
||||
void arm_debug_excp_handler(CPUState *cs);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue