mirror of
https://github.com/qemu/qemu.git
synced 2024-12-01 07:43:35 +08:00
exec: Declare CPUBreakpoint/CPUWatchpoint type in 'breakpoint.h' header
The CPUBreakpoint and CPUWatchpoint structures are declared in "hw/core/cpu.h", which contains declarations related to CPUState and CPUClass. Some source files only require the BP/WP definitions and don't need to pull in all CPU* API. In order to simplify, create a new "exec/breakpoint.h" header. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Anton Johansson <anjo@rev.ng> Message-Id: <20240418192525.97451-3-philmd@linaro.org>
This commit is contained in:
parent
9c1283dd76
commit
6ce1c9d085
30
include/exec/breakpoint.h
Normal file
30
include/exec/breakpoint.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* QEMU breakpoint & watchpoint definitions
|
||||
*
|
||||
* Copyright (c) 2012 SUSE LINUX Products GmbH
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||
*/
|
||||
#ifndef EXEC_BREAKPOINT_H
|
||||
#define EXEC_BREAKPOINT_H
|
||||
|
||||
#include "qemu/queue.h"
|
||||
#include "exec/vaddr.h"
|
||||
#include "exec/memattrs.h"
|
||||
|
||||
typedef struct CPUBreakpoint {
|
||||
vaddr pc;
|
||||
int flags; /* BP_* */
|
||||
QTAILQ_ENTRY(CPUBreakpoint) entry;
|
||||
} CPUBreakpoint;
|
||||
|
||||
typedef struct CPUWatchpoint {
|
||||
vaddr vaddr;
|
||||
vaddr len;
|
||||
vaddr hitaddr;
|
||||
MemTxAttrs hitattrs;
|
||||
int flags; /* BP_* */
|
||||
QTAILQ_ENTRY(CPUWatchpoint) entry;
|
||||
} CPUWatchpoint;
|
||||
|
||||
#endif
|
@ -22,6 +22,7 @@
|
||||
|
||||
#include "hw/qdev-core.h"
|
||||
#include "disas/dis-asm.h"
|
||||
#include "exec/breakpoint.h"
|
||||
#include "exec/hwaddr.h"
|
||||
#include "exec/vaddr.h"
|
||||
#include "exec/memattrs.h"
|
||||
@ -347,21 +348,6 @@ typedef struct CPUNegativeOffsetState {
|
||||
bool can_do_io;
|
||||
} CPUNegativeOffsetState;
|
||||
|
||||
typedef struct CPUBreakpoint {
|
||||
vaddr pc;
|
||||
int flags; /* BP_* */
|
||||
QTAILQ_ENTRY(CPUBreakpoint) entry;
|
||||
} CPUBreakpoint;
|
||||
|
||||
struct CPUWatchpoint {
|
||||
vaddr vaddr;
|
||||
vaddr len;
|
||||
vaddr hitaddr;
|
||||
MemTxAttrs hitattrs;
|
||||
int flags; /* BP_* */
|
||||
QTAILQ_ENTRY(CPUWatchpoint) entry;
|
||||
};
|
||||
|
||||
struct KVMState;
|
||||
struct kvm_run;
|
||||
|
||||
|
@ -25,6 +25,7 @@
|
||||
#ifndef TARGET_ARM_INTERNALS_H
|
||||
#define TARGET_ARM_INTERNALS_H
|
||||
|
||||
#include "exec/breakpoint.h"
|
||||
#include "hw/registerfields.h"
|
||||
#include "tcg/tcg-gvec-desc.h"
|
||||
#include "syndrome.h"
|
||||
|
@ -18,6 +18,7 @@
|
||||
#ifndef PPC_INTERNAL_H
|
||||
#define PPC_INTERNAL_H
|
||||
|
||||
#include "exec/breakpoint.h"
|
||||
#include "hw/registerfields.h"
|
||||
|
||||
/* PM instructions */
|
||||
|
@ -22,6 +22,8 @@
|
||||
#ifndef RISCV_DEBUG_H
|
||||
#define RISCV_DEBUG_H
|
||||
|
||||
#include "exec/breakpoint.h"
|
||||
|
||||
#define RV_MAX_TRIGGERS 2
|
||||
|
||||
/* register index of tdata CSRs */
|
||||
|
Loading…
Reference in New Issue
Block a user