GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Enumerations | Functions | Variables
remote-sim.c File Reference
#include "defs.h"
#include "gdb_bfd.h"
#include "inferior.h"
#include "infrun.h"
#include "value.h"
#include <ctype.h>
#include <fcntl.h>
#include <signal.h>
#include <setjmp.h>
#include "terminal.h"
#include "target.h"
#include "process-stratum-target.h"
#include "gdbcore.h"
#include "sim/callback.h"
#include "sim/sim.h"
#include "command.h"
#include "regcache.h"
#include "sim-regno.h"
#include "arch-utils.h"
#include "readline/readline.h"
#include "gdbthread.h"
#include "gdbsupport/byte-vector.h"
#include "memory-map.h"
#include "remote.h"
#include "gdbsupport/buildargv.h"

Go to the source code of this file.

Classes

struct  gdbsim_target
 

Macros

#define INITIAL_PID   42000
 

Enumerations

enum  { SIM_INSTANCE_NOT_NEEDED = 0 , SIM_INSTANCE_NEEDED = 1 }
 

Functions

static void init_callbacks (void)
 
static void end_callbacks (void)
 
static int gdb_os_write_stdout (host_callback *, const char *, int)
 
static void gdb_os_flush_stdout (host_callback *)
 
static int gdb_os_write_stderr (host_callback *, const char *, int)
 
static void gdb_os_flush_stderr (host_callback *)
 
static int gdb_os_poll_quit (host_callback *)
 
static void gdb_os_printf_filtered (host_callback *, const char *,...)
 
static void gdb_os_vprintf_filtered (host_callback *, const char *, va_list)
 
static void gdb_os_evprintf_filtered (host_callback *, const char *, va_list)
 
static void gdb_os_error (host_callback *, const char *,...)
 
static struct sim_inferior_data * get_sim_inferior_data (struct inferior *inf, int sim_instance_needed)
 
static void dump_mem (const gdb_byte *buf, int len)
 
static void ATTRIBUTE_PRINTF (2, 3)
 
static void ATTRIBUTE_PRINTF (2, 0)
 
int one2one_register_sim_regno (struct gdbarch *gdbarch, int regnum)
 
static void gdbsim_target_open (const char *args, int from_tty)
 
static void gdbsim_cntrl_c (int signo)
 
static enum target_xfer_status gdbsim_xfer_memory (struct target_ops *target, gdb_byte *readbuf, const gdb_byte *writebuf, ULONGEST memaddr, ULONGEST len, ULONGEST *xfered_len)
 
static void simulator_command (const char *args, int from_tty)
 
static void sim_command_completer (struct cmd_list_element *ignore, completion_tracker &tracker, const char *text, const char *word)
 
void _initialize_remote_sim ()
 

Variables

static const target_info gdbsim_target_info
 
static struct gdbsim_target gdbsim_ops
 
static const registry< inferior >::key< sim_inferior_data > sim_inferior_data_key
 
static bool gdbsim_is_open = false
 
static char ** sim_argv = NULL
 
static host_callback gdb_callback
 
static int callbacks_initialized = 0
 

Macro Definition Documentation

◆ INITIAL_PID

#define INITIAL_PID   42000

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
SIM_INSTANCE_NOT_NEEDED 
SIM_INSTANCE_NEEDED 

Definition at line 200 of file remote-sim.c.

Function Documentation

◆ _initialize_remote_sim()

void _initialize_remote_sim ( )

◆ ATTRIBUTE_PRINTF() [1/2]

static void ATTRIBUTE_PRINTF ( 2 ,
0  )
static

Definition at line 410 of file remote-sim.c.

References gdb_stdout, and gdb_vprintf().

◆ ATTRIBUTE_PRINTF() [2/2]

static void ATTRIBUTE_PRINTF ( 2 ,
3  )
static

Definition at line 398 of file remote-sim.c.

References inferior::args(), gdb_stdout, and gdb_vprintf().

◆ dump_mem()

static void dump_mem ( const gdb_byte * buf,
int len )
static

◆ end_callbacks()

static void end_callbacks ( void )
static

Definition at line 345 of file remote-sim.c.

References callbacks_initialized, and gdb_callback.

Referenced by gdbsim_target::close().

◆ gdb_os_error()

static void gdb_os_error ( host_callback * ,
const char * ,
... )
static

Definition at line 72 of file remote-sim.c.

References resume_step.

Referenced by init_callbacks().

◆ gdb_os_evprintf_filtered()

static void gdb_os_evprintf_filtered ( host_callback * ,
const char * ,
va_list  )
static

Referenced by init_callbacks().

◆ gdb_os_flush_stderr()

static void gdb_os_flush_stderr ( host_callback * p)
static

Definition at line 391 of file remote-sim.c.

References ui_file::flush(), and gdb_stdtargerr.

Referenced by init_callbacks().

◆ gdb_os_flush_stdout()

static void gdb_os_flush_stdout ( host_callback * p)
static

Definition at line 366 of file remote-sim.c.

References ui_file::flush(), and gdb_stdtarg.

Referenced by init_callbacks().

◆ gdb_os_poll_quit()

static int gdb_os_poll_quit ( host_callback * p)
static

Definition at line 913 of file remote-sim.c.

References check_quit_flag(), and deprecated_ui_loop_hook.

Referenced by init_callbacks().

◆ gdb_os_printf_filtered()

static void gdb_os_printf_filtered ( host_callback * ,
const char * ,
... )
static

Referenced by init_callbacks().

◆ gdb_os_vprintf_filtered()

static void gdb_os_vprintf_filtered ( host_callback * ,
const char * ,
va_list  )
static

Referenced by init_callbacks().

◆ gdb_os_write_stderr()

static int gdb_os_write_stderr ( host_callback * p,
const char * buf,
int len )
static

Definition at line 374 of file remote-sim.c.

References gdb_stdtargerr, and ui_file::puts().

Referenced by init_callbacks().

◆ gdb_os_write_stdout()

static int gdb_os_write_stdout ( host_callback * p,
const char * buf,
int len )
static

Definition at line 357 of file remote-sim.c.

References gdb_stdtarg, and ui_file::write().

Referenced by init_callbacks().

◆ gdbsim_cntrl_c()

static void gdbsim_cntrl_c ( int signo)
static

Definition at line 928 of file remote-sim.c.

References gdbsim_ops, and gdbsim_target::interrupt().

Referenced by gdbsim_target::wait().

◆ gdbsim_target_open()

static void gdbsim_target_open ( const char * args,
int from_tty )
static

◆ gdbsim_xfer_memory()

static enum target_xfer_status gdbsim_xfer_memory ( struct target_ops * target,
gdb_byte * readbuf,
const gdb_byte * writebuf,
ULONGEST memaddr,
ULONGEST len,
ULONGEST * xfered_len )
static

◆ get_sim_inferior_data()

static struct sim_inferior_data * get_sim_inferior_data ( struct inferior * inf,
int sim_instance_needed )
static

◆ init_callbacks()

static void init_callbacks ( void )
static

◆ one2one_register_sim_regno()

int one2one_register_sim_regno ( struct gdbarch * gdbarch,
int regnum )

Definition at line 437 of file remote-sim.c.

References gdbarch_num_regs(), and regnum.

◆ sim_command_completer()

static void sim_command_completer ( struct cmd_list_element * ignore,
completion_tracker & tracker,
const char * text,
const char * word )
static

◆ simulator_command()

static void simulator_command ( const char * args,
int from_tty )
static

Variable Documentation

◆ callbacks_initialized

int callbacks_initialized = 0
static

Definition at line 195 of file remote-sim.c.

Referenced by end_callbacks(), and init_callbacks().

◆ gdb_callback

host_callback gdb_callback
static

◆ gdbsim_is_open

bool gdbsim_is_open = false
static

Definition at line 185 of file remote-sim.c.

Referenced by gdbsim_target::close(), and gdbsim_target_open().

◆ gdbsim_ops

struct gdbsim_target gdbsim_ops
static

Definition at line 179 of file remote-sim.c.

Referenced by gdbsim_cntrl_c(), and gdbsim_target_open().

◆ gdbsim_target_info

const target_info gdbsim_target_info
static
Initial value:
= {
"sim",
N_("simulator"),
}

Definition at line 118 of file remote-sim.c.

Referenced by _initialize_remote_sim(), and gdbsim_target::info().

◆ sim_argv

char** sim_argv = NULL
static

Definition at line 191 of file remote-sim.c.

Referenced by gdbsim_target::close(), gdbsim_target_open(), and get_sim_inferior_data().

◆ sim_inferior_data_key

const registry<inferior>::key<sim_inferior_data> sim_inferior_data_key
static