GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Typedefs | Functions | Variables
scm-breakpoint.c File Reference
#include "defs.h"
#include "value.h"
#include "breakpoint.h"
#include "gdbcmd.h"
#include "gdbthread.h"
#include "observable.h"
#include "cli/cli-script.h"
#include "ada-lang.h"
#include "arch-utils.h"
#include "language.h"
#include "guile-internal.h"
#include "location.h"

Go to the source code of this file.

Classes

struct  gdbscm_breakpoint_object
 

Typedefs

typedef struct gdbscm_breakpoint_object breakpoint_smob
 

Functions

static size_t bpscm_free_breakpoint_smob (SCM self)
 
static const char * bpscm_type_to_string (enum bptype type)
 
static const char * bpscm_enable_state_to_string (enum enable_state enable_state)
 
static int bpscm_print_breakpoint_smob (SCM self, SCM port, scm_print_state *pstate)
 
static SCM bpscm_make_breakpoint_smob (void)
 
static int bpscm_want_scm_wrapper_p (struct breakpoint *bp, int from_scheme)
 
static void bpscm_attach_scm_to_breakpoint (struct breakpoint *bp, SCM containing_scm)
 
static int bpscm_is_breakpoint (SCM scm)
 
static SCM gdbscm_breakpoint_p (SCM scm)
 
static SCM bpscm_get_breakpoint_arg_unsafe (SCM self, int arg_pos, const char *func_name)
 
static breakpoint_smobbpscm_get_breakpoint_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name)
 
static int bpscm_is_valid (breakpoint_smob *bp_smob)
 
static breakpoint_smobbpscm_get_valid_breakpoint_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name)
 
static SCM gdbscm_make_breakpoint (SCM location_scm, SCM rest)
 
static SCM gdbscm_register_breakpoint_x (SCM self)
 
static SCM gdbscm_delete_breakpoint_x (SCM self)
 
static void bpscm_build_bp_list (struct breakpoint *bp, SCM *list)
 
static SCM gdbscm_breakpoints (void)
 
static SCM gdbscm_breakpoint_valid_p (SCM self)
 
static SCM gdbscm_breakpoint_enabled_p (SCM self)
 
static SCM gdbscm_set_breakpoint_enabled_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_silent_p (SCM self)
 
static SCM gdbscm_set_breakpoint_silent_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_ignore_count (SCM self)
 
static SCM gdbscm_set_breakpoint_ignore_count_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_hit_count (SCM self)
 
static SCM gdbscm_set_breakpoint_hit_count_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_thread (SCM self)
 
static SCM gdbscm_set_breakpoint_thread_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_task (SCM self)
 
static SCM gdbscm_set_breakpoint_task_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_location (SCM self)
 
static SCM gdbscm_breakpoint_expression (SCM self)
 
static SCM gdbscm_breakpoint_condition (SCM self)
 
static SCM gdbscm_set_breakpoint_condition_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_stop (SCM self)
 
static SCM gdbscm_set_breakpoint_stop_x (SCM self, SCM newvalue)
 
static SCM gdbscm_breakpoint_commands (SCM self)
 
static SCM gdbscm_breakpoint_type (SCM self)
 
static SCM gdbscm_breakpoint_visible (SCM self)
 
static SCM gdbscm_breakpoint_number (SCM self)
 
static SCM gdbscm_breakpoint_temporary (SCM self)
 
int gdbscm_breakpoint_has_cond (const struct extension_language_defn *extlang, struct breakpoint *b)
 
enum ext_lang_bp_stop gdbscm_breakpoint_cond_says_stop (const struct extension_language_defn *extlang, struct breakpoint *b)
 
static void bpscm_breakpoint_created (struct breakpoint *bp)
 
static void bpscm_breakpoint_deleted (struct breakpoint *b)
 
void gdbscm_initialize_breakpoints (void)
 

Variables

static const char breakpoint_smob_name [] = "gdb:breakpoint"
 
static scm_t_bits breakpoint_smob_tag
 
static SCM pending_breakpoint_scm = SCM_BOOL_F
 
static SCM type_keyword
 
static SCM wp_class_keyword
 
static SCM internal_keyword
 
static SCM temporary_keyword
 
static const scheme_integer_constant breakpoint_integer_constants []
 
static const scheme_function breakpoint_functions []
 

Typedef Documentation

◆ breakpoint_smob

Function Documentation

◆ bpscm_attach_scm_to_breakpoint()

static void bpscm_attach_scm_to_breakpoint ( struct breakpoint bp,
SCM  containing_scm 
)
static

◆ bpscm_breakpoint_created()

static void bpscm_breakpoint_created ( struct breakpoint bp)
static

◆ bpscm_breakpoint_deleted()

static void bpscm_breakpoint_deleted ( struct breakpoint b)
static

◆ bpscm_build_bp_list()

static void bpscm_build_bp_list ( struct breakpoint bp,
SCM *  list 
)
static

◆ bpscm_enable_state_to_string()

static const char * bpscm_enable_state_to_string ( enum enable_state  enable_state)
static

Definition at line 153 of file scm-breakpoint.c.

References bp_call_disabled, bp_disabled, and bp_enabled.

Referenced by bpscm_print_breakpoint_smob().

◆ bpscm_free_breakpoint_smob()

static size_t bpscm_free_breakpoint_smob ( SCM  self)
static

◆ bpscm_get_breakpoint_arg_unsafe()

static SCM bpscm_get_breakpoint_arg_unsafe ( SCM  self,
int  arg_pos,
const char *  func_name 
)
static

Definition at line 287 of file scm-breakpoint.c.

References bpscm_is_breakpoint(), and breakpoint_smob_name.

Referenced by bpscm_get_breakpoint_smob_arg_unsafe().

◆ bpscm_get_breakpoint_smob_arg_unsafe()

static breakpoint_smob * bpscm_get_breakpoint_smob_arg_unsafe ( SCM  self,
int  arg_pos,
const char *  func_name 
)
static

◆ bpscm_get_valid_breakpoint_smob_arg_unsafe()

static breakpoint_smob * bpscm_get_valid_breakpoint_smob_arg_unsafe ( SCM  self,
int  arg_pos,
const char *  func_name 
)
static

◆ bpscm_is_breakpoint()

static int bpscm_is_breakpoint ( SCM  scm)
static

Definition at line 270 of file scm-breakpoint.c.

References breakpoint_smob_tag.

Referenced by bpscm_get_breakpoint_arg_unsafe(), and gdbscm_breakpoint_p().

◆ bpscm_is_valid()

static int bpscm_is_valid ( breakpoint_smob bp_smob)
static

◆ bpscm_make_breakpoint_smob()

static SCM bpscm_make_breakpoint_smob ( void  )
static

◆ bpscm_print_breakpoint_smob()

static int bpscm_print_breakpoint_smob ( SCM  self,
SCM  port,
scm_print_state *  pstate 
)
static

◆ bpscm_type_to_string()

static const char * bpscm_type_to_string ( enum bptype  type)
static

◆ bpscm_want_scm_wrapper_p()

static int bpscm_want_scm_wrapper_p ( struct breakpoint bp,
int  from_scheme 
)
static

◆ gdbscm_breakpoint_commands()

static SCM gdbscm_breakpoint_commands ( SCM  self)
static

◆ gdbscm_breakpoint_cond_says_stop()

enum ext_lang_bp_stop gdbscm_breakpoint_cond_says_stop ( const struct extension_language_defn extlang,
struct breakpoint b 
)

◆ gdbscm_breakpoint_condition()

static SCM gdbscm_breakpoint_condition ( SCM  self)
static

◆ gdbscm_breakpoint_enabled_p()

static SCM gdbscm_breakpoint_enabled_p ( SCM  self)
static

◆ gdbscm_breakpoint_expression()

static SCM gdbscm_breakpoint_expression ( SCM  self)
static

◆ gdbscm_breakpoint_has_cond()

int gdbscm_breakpoint_has_cond ( const struct extension_language_defn extlang,
struct breakpoint b 
)

◆ gdbscm_breakpoint_hit_count()

static SCM gdbscm_breakpoint_hit_count ( SCM  self)
static

◆ gdbscm_breakpoint_ignore_count()

static SCM gdbscm_breakpoint_ignore_count ( SCM  self)
static

◆ gdbscm_breakpoint_location()

static SCM gdbscm_breakpoint_location ( SCM  self)
static

◆ gdbscm_breakpoint_number()

static SCM gdbscm_breakpoint_number ( SCM  self)
static

◆ gdbscm_breakpoint_p()

static SCM gdbscm_breakpoint_p ( SCM  scm)
static

Definition at line 278 of file scm-breakpoint.c.

References bpscm_is_breakpoint().

◆ gdbscm_breakpoint_silent_p()

static SCM gdbscm_breakpoint_silent_p ( SCM  self)
static

◆ gdbscm_breakpoint_stop()

static SCM gdbscm_breakpoint_stop ( SCM  self)
static

◆ gdbscm_breakpoint_task()

static SCM gdbscm_breakpoint_task ( SCM  self)
static

◆ gdbscm_breakpoint_temporary()

static SCM gdbscm_breakpoint_temporary ( SCM  self)
static

◆ gdbscm_breakpoint_thread()

static SCM gdbscm_breakpoint_thread ( SCM  self)
static

◆ gdbscm_breakpoint_type()

static SCM gdbscm_breakpoint_type ( SCM  self)
static

◆ gdbscm_breakpoint_valid_p()

static SCM gdbscm_breakpoint_valid_p ( SCM  self)
static

◆ gdbscm_breakpoint_visible()

static SCM gdbscm_breakpoint_visible ( SCM  self)
static

◆ gdbscm_breakpoints()

static SCM gdbscm_breakpoints ( void  )
static

Definition at line 568 of file scm-breakpoint.c.

References all_breakpoints(), bp, and bpscm_build_bp_list().

◆ gdbscm_delete_breakpoint_x()

static SCM gdbscm_delete_breakpoint_x ( SCM  self)
static

◆ gdbscm_initialize_breakpoints()

void gdbscm_initialize_breakpoints ( void  )

◆ gdbscm_make_breakpoint()

static SCM gdbscm_make_breakpoint ( SCM  location_scm,
SCM  rest 
)
static

◆ gdbscm_register_breakpoint_x()

static SCM gdbscm_register_breakpoint_x ( SCM  self)
static

◆ gdbscm_set_breakpoint_condition_x()

static SCM gdbscm_set_breakpoint_condition_x ( SCM  self,
SCM  newvalue 
)
static

◆ gdbscm_set_breakpoint_enabled_x()

static SCM gdbscm_set_breakpoint_enabled_x ( SCM  self,
SCM  newvalue 
)
static

◆ gdbscm_set_breakpoint_hit_count_x()

static SCM gdbscm_set_breakpoint_hit_count_x ( SCM  self,
SCM  newvalue 
)
static

◆ gdbscm_set_breakpoint_ignore_count_x()

static SCM gdbscm_set_breakpoint_ignore_count_x ( SCM  self,
SCM  newvalue 
)
static

◆ gdbscm_set_breakpoint_silent_x()

static SCM gdbscm_set_breakpoint_silent_x ( SCM  self,
SCM  newvalue 
)
static

◆ gdbscm_set_breakpoint_stop_x()

static SCM gdbscm_set_breakpoint_stop_x ( SCM  self,
SCM  newvalue 
)
static

◆ gdbscm_set_breakpoint_task_x()

static SCM gdbscm_set_breakpoint_task_x ( SCM  self,
SCM  newvalue 
)
static

◆ gdbscm_set_breakpoint_thread_x()

static SCM gdbscm_set_breakpoint_thread_x ( SCM  self,
SCM  newvalue 
)
static

Variable Documentation

◆ breakpoint_functions

const scheme_function breakpoint_functions[]
static

Definition at line 1187 of file scm-breakpoint.c.

Referenced by gdbscm_initialize_breakpoints().

◆ breakpoint_integer_constants

const scheme_integer_constant breakpoint_integer_constants[]
static
Initial value:
=
{
{ "BP_NONE", bp_none },
{ "BP_BREAKPOINT", bp_breakpoint },
{ "BP_WATCHPOINT", bp_watchpoint },
{ "BP_HARDWARE_WATCHPOINT", bp_hardware_watchpoint },
{ "BP_READ_WATCHPOINT", bp_read_watchpoint },
{ "BP_ACCESS_WATCHPOINT", bp_access_watchpoint },
{ "BP_CATCHPOINT", bp_catchpoint },
{ "WP_READ", hw_read },
{ "WP_WRITE", hw_write },
{ "WP_ACCESS", hw_access },
}
@ bp_breakpoint
Definition breakpoint.h:86
@ bp_watchpoint
Definition breakpoint.h:91
@ bp_read_watchpoint
Definition breakpoint.h:93
@ bp_catchpoint
Definition breakpoint.h:182
@ bp_access_watchpoint
Definition breakpoint.h:94
@ bp_none
Definition breakpoint.h:85
@ bp_hardware_watchpoint
Definition breakpoint.h:92
#define END_INTEGER_CONSTANTS

Definition at line 1170 of file scm-breakpoint.c.

Referenced by gdbscm_initialize_breakpoints().

◆ breakpoint_smob_name

const char breakpoint_smob_name[] = "gdb:breakpoint"
static

◆ breakpoint_smob_tag

scm_t_bits breakpoint_smob_tag
static

◆ internal_keyword

SCM internal_keyword
static

Definition at line 108 of file scm-breakpoint.c.

Referenced by gdbscm_initialize_breakpoints(), and gdbscm_make_breakpoint().

◆ pending_breakpoint_scm

SCM pending_breakpoint_scm = SCM_BOOL_F
static

Definition at line 103 of file scm-breakpoint.c.

Referenced by bpscm_breakpoint_created(), and gdbscm_register_breakpoint_x().

◆ temporary_keyword

SCM temporary_keyword
static

Definition at line 109 of file scm-breakpoint.c.

Referenced by gdbscm_initialize_breakpoints(), and gdbscm_make_breakpoint().

◆ type_keyword

SCM type_keyword
static

Definition at line 106 of file scm-breakpoint.c.

Referenced by gdbscm_initialize_breakpoints(), and gdbscm_make_breakpoint().

◆ wp_class_keyword

SCM wp_class_keyword
static

Definition at line 107 of file scm-breakpoint.c.

Referenced by gdbscm_initialize_breakpoints(), and gdbscm_make_breakpoint().