db_machdep.h (b626f5a73a48f44a31a200291b141e1da408a2ff) db_machdep.h (595f8a5905b062aedcd455b703cd63ca44f23f18)
1/*-
2 * Mach Operating System
3 * Copyright (c) 1991,1990 Carnegie Mellon University
4 * All Rights Reserved.
5 *
6 * Permission to use, copy, modify and distribute this software and its
7 * documentation is hereby granted, provided that both the copyright
8 * notice and this permission notice appear in all copies of the

--- 19 unchanged lines hidden (view full) ---

28 */
29
30#ifndef _MACHINE_DB_MACHDEP_H_
31#define _MACHINE_DB_MACHDEP_H_
32
33#include <machine/frame.h>
34#include <machine/trap.h>
35#include <machine/armreg.h>
1/*-
2 * Mach Operating System
3 * Copyright (c) 1991,1990 Carnegie Mellon University
4 * All Rights Reserved.
5 *
6 * Permission to use, copy, modify and distribute this software and its
7 * documentation is hereby granted, provided that both the copyright
8 * notice and this permission notice appear in all copies of the

--- 19 unchanged lines hidden (view full) ---

28 */
29
30#ifndef _MACHINE_DB_MACHDEP_H_
31#define _MACHINE_DB_MACHDEP_H_
32
33#include <machine/frame.h>
34#include <machine/trap.h>
35#include <machine/armreg.h>
36#include <machine/acle-compat.h>
36
37#define T_BREAKPOINT (1)
37
38#define T_BREAKPOINT (1)
39#define T_WATCHPOINT (2)
38typedef vm_offset_t db_addr_t;
39typedef int db_expr_t;
40
41#define PC_REGS() ((db_addr_t)kdb_thrctx->pcb_regs.sf_pc)
42
43#define BKPT_INST (KERNEL_BREAKPOINT)
44#define BKPT_SIZE (INSN_SIZE)
45#define BKPT_SET(inst) (BKPT_INST)
46
47#define BKPT_SKIP do { \
48 kdb_frame->tf_pc += BKPT_SIZE; \
49} while (0)
50
40typedef vm_offset_t db_addr_t;
41typedef int db_expr_t;
42
43#define PC_REGS() ((db_addr_t)kdb_thrctx->pcb_regs.sf_pc)
44
45#define BKPT_INST (KERNEL_BREAKPOINT)
46#define BKPT_SIZE (INSN_SIZE)
47#define BKPT_SET(inst) (BKPT_INST)
48
49#define BKPT_SKIP do { \
50 kdb_frame->tf_pc += BKPT_SIZE; \
51} while (0)
52
51#define SOFTWARE_SSTEP 1
53#if __ARM_ARCH >= 6
54#define db_clear_single_step kdb_cpu_clear_singlestep
55#define db_set_single_step kdb_cpu_set_singlestep
56#define db_pc_is_singlestep kdb_cpu_pc_is_singlestep
57#else
58#define SOFTWARE_SSTEP 1
59#endif
52
53#define IS_BREAKPOINT_TRAP(type, code) (type == T_BREAKPOINT)
60
61#define IS_BREAKPOINT_TRAP(type, code) (type == T_BREAKPOINT)
54#define IS_WATCHPOINT_TRAP(type, code) (0)
62#define IS_WATCHPOINT_TRAP(type, code) (type == T_WATCHPOINT)
55
63
56
57#define inst_trap_return(ins) (0)
58/* ldmxx reg, {..., pc}
59 01800000 stack mode
60 000f0000 register
61 0000ffff register list */
62/* mov pc, reg
63 0000000f register */
64#define inst_return(ins) (((ins) & 0x0e108000) == 0x08108000 || \

--- 34 unchanged lines hidden ---
64#define inst_trap_return(ins) (0)
65/* ldmxx reg, {..., pc}
66 01800000 stack mode
67 000f0000 register
68 0000ffff register list */
69/* mov pc, reg
70 0000000f register */
71#define inst_return(ins) (((ins) & 0x0e108000) == 0x08108000 || \

--- 34 unchanged lines hidden ---