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>
		
			
				
	
	
		
			31 lines
		
	
	
		
			603 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			603 B
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * 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
 |