From a03d4f8e65036e3f9c3457c588fe8c2fd72841b9 Mon Sep 17 00:00:00 2001 From: John Gilmore Date: Fri, 18 Sep 1992 09:56:28 +0000 Subject: [PATCH] Remove convert_{to,from}_virtual members from target structs. --- gdb/core.c | 2 +- gdb/exec.c | 2 +- gdb/remote-adapt.c | 2 +- gdb/remote-eb.c | 2 +- gdb/remote-es1800.c | 4 ---- gdb/remote-hms.c | 2 +- gdb/remote-mm.c | 2 +- gdb/remote-nindy.c | 2 +- gdb/remote-st2000.c | 2 -- gdb/remote-udi.c | 2 +- gdb/remote-vx.c | 6 ++---- gdb/remote.c | 27 +++++++++++++++++---------- gdb/xcoffexec.c | 2 +- 13 files changed, 28 insertions(+), 29 deletions(-) diff --git a/gdb/core.c b/gdb/core.c index 032ddb929de..dc2cf24d23e 100644 --- a/gdb/core.c +++ b/gdb/core.c @@ -435,7 +435,7 @@ struct target_ops core_ops = { core_open, core_close, child_attach, core_detach, 0, 0, /* resume, wait */ get_core_registers, - 0, 0, 0, 0, /* store_regs, prepare_to_store, conv_to, conv_from */ + 0, 0, /* store_regs, prepare_to_store */ xfer_memory, core_files_info, 0, 0, /* core_insert_breakpoint, core_remove_breakpoint, */ 0, 0, 0, 0, 0, /* terminal stuff */ diff --git a/gdb/exec.c b/gdb/exec.c index 79b07e499e5..9e6167589b4 100644 --- a/gdb/exec.c +++ b/gdb/exec.c @@ -410,7 +410,7 @@ Specify the filename of the executable file.", exec_file_command, exec_close, /* open, close */ child_attach, 0, 0, 0, /* attach, detach, resume, wait, */ 0, 0, /* fetch_registers, store_registers, */ - 0, 0, 0, /* prepare_to_store, conv_to, conv_from, */ + 0, /* prepare_to_store, */ xfer_memory, exec_files_info, 0, 0, /* insert_breakpoint, remove_breakpoint, */ 0, 0, 0, 0, 0, /* terminal stuff */ diff --git a/gdb/remote-adapt.c b/gdb/remote-adapt.c index a21cbb823b4..f8a3271a41c 100644 --- a/gdb/remote-adapt.c +++ b/gdb/remote-adapt.c @@ -1415,7 +1415,7 @@ struct target_ops adapt_ops = { adapt_open, adapt_close, adapt_attach, adapt_detach, adapt_resume, adapt_wait, adapt_fetch_register, adapt_store_register, - adapt_prepare_to_store, 0, 0, /* conv_to, conv_from */ + adapt_prepare_to_store, adapt_xfer_inferior_memory, adapt_files_info, adapt_insert_breakpoint, adapt_remove_breakpoint, /* Breakpoints */ diff --git a/gdb/remote-eb.c b/gdb/remote-eb.c index a4124b3ac65..575f7cccc84 100644 --- a/gdb/remote-eb.c +++ b/gdb/remote-eb.c @@ -978,7 +978,7 @@ executable as it exists on the remote computer. For example,\n\ eb_open, eb_close, 0, eb_detach, eb_resume, eb_wait, eb_fetch_register, eb_store_register, - eb_prepare_to_store, 0, 0, /* conv_to, conv_from */ + eb_prepare_to_store, eb_xfer_inferior_memory, eb_files_info, 0, 0, /* Breakpoints */ 0, 0, 0, 0, 0, /* Terminal handling */ diff --git a/gdb/remote-es1800.c b/gdb/remote-es1800.c index f32440bbef5..9a542e04250 100644 --- a/gdb/remote-es1800.c +++ b/gdb/remote-es1800.c @@ -2173,8 +2173,6 @@ Specify the serial device it is connected to (e.g. /dev/ttya).", NULL, /* to_fetch_registers */ NULL, /* to_store_registers */ es1800_prepare_to_store, /* to_prepare_to_store */ - NULL, /* to_convert_to_virtual */ - NULL, /* to_convert_from_virtual */ es1800_xfer_inferior_memory, /* to_xfer_memory */ es1800_files_info, /* to_files_info */ es1800_insert_breakpoint, /* to_insert_breakpoint */ @@ -2220,8 +2218,6 @@ Specify the serial device it is connected to (e.g. /dev/ttya).", es1800_fetch_register, /* to_fetch_registers */ es1800_store_register, /* to_store_registers */ es1800_prepare_to_store, /* to_prepare_to_store */ - NULL, /* to_convert_to_virtual */ - NULL, /* to_convert_from_virtual */ es1800_xfer_inferior_memory, /* to_xfer_memory */ es1800_files_info, /* to_files_info */ es1800_insert_breakpoint, /* to_insert_breakpoint */ diff --git a/gdb/remote-hms.c b/gdb/remote-hms.c index e000957758c..7b0e7b0afcf 100644 --- a/gdb/remote-hms.c +++ b/gdb/remote-hms.c @@ -1395,7 +1395,7 @@ by a serial line.", hms_open, hms_close, hms_attach, hms_detach, hms_resume, hms_wait, hms_fetch_register, hms_store_register, - hms_prepare_to_store, 0, 0, /* conv_to, conv_from */ + hms_prepare_to_store, hms_xfer_inferior_memory, hms_files_info, hms_insert_breakpoint, hms_remove_breakpoint, /* Breakpoints */ diff --git a/gdb/remote-mm.c b/gdb/remote-mm.c index 19bff73c7b8..b98026c1be9 100644 --- a/gdb/remote-mm.c +++ b/gdb/remote-mm.c @@ -1673,7 +1673,7 @@ struct target_ops mm_ops = { mm_open, mm_close, mm_attach, mm_detach, mm_resume, mm_wait, mm_fetch_registers, mm_store_registers, - mm_prepare_to_store, 0, 0, /* conv_to, conv_from */ + mm_prepare_to_store, mm_xfer_inferior_memory, mm_files_info, mm_insert_breakpoint, mm_remove_breakpoint, /* Breakpoints */ diff --git a/gdb/remote-nindy.c b/gdb/remote-nindy.c index 1e38f3d3bd4..dcc552a1fa2 100644 --- a/gdb/remote-nindy.c +++ b/gdb/remote-nindy.c @@ -932,7 +932,7 @@ specified when you started GDB.", nindy_open, nindy_close, 0, nindy_detach, nindy_resume, nindy_wait, nindy_fetch_registers, nindy_store_registers, - nindy_prepare_to_store, 0, 0, /* conv_from, conv_to */ + nindy_prepare_to_store, nindy_xfer_inferior_memory, nindy_files_info, 0, 0, /* insert_breakpoint, remove_breakpoint, */ 0, 0, 0, 0, 0, /* Terminal crud */ diff --git a/gdb/remote-st2000.c b/gdb/remote-st2000.c index 0c70ec05ca3..f7904fa9d50 100644 --- a/gdb/remote-st2000.c +++ b/gdb/remote-st2000.c @@ -781,8 +781,6 @@ the speed to connect at in bits per second.", st2000_fetch_register, st2000_store_register, st2000_prepare_to_store, - 0, - 0, /* conv_to, conv_from */ st2000_xfer_inferior_memory, st2000_files_info, st2000_insert_breakpoint, diff --git a/gdb/remote-udi.c b/gdb/remote-udi.c index 9794efbb3ed..4309774a5a4 100644 --- a/gdb/remote-udi.c +++ b/gdb/remote-udi.c @@ -1332,7 +1332,7 @@ static struct target_ops udi_ops = { udi_open, udi_close, udi_attach, udi_detach, udi_resume, udi_wait, udi_fetch_registers, udi_store_registers, - udi_prepare_to_store, 0, 0, /* conv_to, conv_from */ + udi_prepare_to_store, udi_xfer_inferior_memory, udi_files_info, udi_insert_breakpoint, udi_remove_breakpoint, /* Breakpoints */ diff --git a/gdb/remote-vx.c b/gdb/remote-vx.c index 635ffe3aa78..de9aa65f2e0 100644 --- a/gdb/remote-vx.c +++ b/gdb/remote-vx.c @@ -55,8 +55,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ extern void symbol_file_command (); extern int stop_soon_quietly; /* for wait_for_inferior */ -extern void host_convert_to_virtual (); -extern void host_convert_from_virtual (); static int net_ptrace_clnt_call (); /* Forward decl */ static enum clnt_stat net_clnt_call (); /* Forward decl */ @@ -1333,7 +1331,7 @@ Specify the name of the machine to connect to.", vx_open, vx_close, vx_attach, 0, /* vx_detach, */ 0, 0, /* resume, wait */ 0, 0, /* read_reg, write_reg */ - 0, host_convert_to_virtual, host_convert_from_virtual, /* prep_to_store, */ + 0, /* prep_to_store, */ vx_xfer_memory, vx_files_info, 0, 0, /* insert_breakpoint, remove_breakpoint */ 0, 0, 0, 0, 0, /* terminal stuff */ @@ -1355,7 +1353,7 @@ struct target_ops vx_run_ops = { vx_proc_open, vx_proc_close, 0, vx_detach, /* vx_attach */ vx_resume, vx_wait, vx_read_register, vx_write_register, - vx_prepare_to_store, host_convert_to_virtual, host_convert_from_virtual, + vx_prepare_to_store, vx_xfer_memory, vx_run_files_info, vx_insert_breakpoint, vx_remove_breakpoint, 0, 0, 0, 0, 0, /* terminal stuff */ diff --git a/gdb/remote.c b/gdb/remote.c index 03d4deeb093..86df56a8e48 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -270,7 +270,7 @@ device is attached to the remote system (e.g. /dev/ttya)."); if (baud_rate) { - if (1 != sscanf (baud_rate, "%d ", &a_rate)) + if (sscanf (baud_rate, "%d", &a_rate) == 1) { b_rate = damn_b (a_rate); baudrate_set = 1; @@ -416,8 +416,8 @@ remote_wait (status) void (*ofunc)(); unsigned char *p; int i; - int regno; - unsigned char regs[8]; /* Better be big enough for largest reg */ + long regno; + unsigned char regs[MAX_REGISTER_RAW_SIZE]; WSETEXIT ((*status), 0); @@ -430,15 +430,21 @@ remote_wait (status) if (buf[0] == 'T') { /* Expedited reply, containing Signal, {regno, reg} repeat */ + /* format is: 'Tssn...:r...;n...:r...;n...:r...;#cc', where + ss = signal number + n... = register number + r... = register contents + */ + p = &buf[3]; /* after Txx */ while (*p) { - regno = fromhex (p[0]) * 16 + fromhex (p[1]); - p += 2; - if (regno >= NUM_REGS) - error ("Remote sent illegal register number %d (0x%x)", regno, - regno); + regno = strtol (p, &p, 16); /* Read the register number */ + + if (*p++ != ':' + || regno >= NUM_REGS) + error ("Remote sent bad register number %s", buf); for (i = 0; i < REGISTER_RAW_SIZE (regno); i++) { @@ -448,6 +454,9 @@ remote_wait (status) p += 2; } + if (*p++ != ';') + error("Remote register badly formatted: %s", buf); + supply_register (regno, regs); } } @@ -1045,8 +1054,6 @@ Specify the serial device it is connected to (e.g. /dev/ttya).", /* to_doc */ remote_fetch_registers, /* to_fetch_registers */ remote_store_registers, /* to_store_registers */ remote_prepare_to_store, /* to_prepare_to_store */ - NULL, /* to_convert_to_virtual */ - NULL, /* to_convert_from_virtual */ remote_xfer_memory, /* to_xfer_memory */ remote_files_info, /* to_files_info */ NULL, /* to_insert_breakpoint */ diff --git a/gdb/xcoffexec.c b/gdb/xcoffexec.c index d4586ee8288..ddc1d23c1d8 100644 --- a/gdb/xcoffexec.c +++ b/gdb/xcoffexec.c @@ -991,7 +991,7 @@ Specify the filename of the executable file.", exec_file_command, exec_close, /* open, close */ child_attach, 0, 0, 0, /* attach, detach, resume, wait, */ 0, 0, /* fetch_registers, store_registers, */ - 0, 0, 0, /* prepare_to_store, conv_to, conv_from, */ + 0, /* prepare_to_store */ xfer_memory, exec_files_info, 0, 0, /* insert_breakpoint, remove_breakpoint, */ 0, 0, 0, 0, 0, /* terminal stuff */ -- 2.30.2