mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-18 21:38:49 +00:00
Minor bug fixes from BSD Net2 gdb:
* blockframe.c (get_prev_frame_info): If FRAME_CHAIN_COMBINE returns 0, there is no previous frame. * breakpoint.c (commands_command): If !from_tty, don't call input_from_terminal_p(). * dbxread.c (record_misc_function): Speed up slightly. (compare_psymbols): Ditto. * infcmd.c (do_registers_info): Take a second argument to determine whether to print float registers. "info registers" does not do so anymore. "info all-registers" does, now. * mips-tdep.c, pyr-tdep.c (xxx_do_registers_info): Take second arg and ignore it. * tm-mips.h, tm-pyr.h (DO_REGISTERS_INFO): Pass second arg. * inflow.c (initialize_inflow): Set tflags_ours correctly.
This commit is contained in:
@@ -8,19 +8,19 @@
|
|||||||
|
|
||||||
This file is part of GDB.
|
This file is part of GDB.
|
||||||
|
|
||||||
GDB is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
the Free Software Foundation; either version 1, or (at your option)
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
any later version.
|
(at your option) any later version.
|
||||||
|
|
||||||
GDB is distributed in the hope that it will be useful,
|
This program is distributed in the hope that it will be useful,
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
GNU General Public License for more details.
|
GNU General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU General Public License
|
||||||
along with GDB; see the file COPYING. If not, write to
|
along with this program; if not, write to the Free Software
|
||||||
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||||
|
|
||||||
/* FIXME: Can a MIPS porter/tester determine which of these include
|
/* FIXME: Can a MIPS porter/tester determine which of these include
|
||||||
files we still need? -- gnu@cygnus.com */
|
files we still need? -- gnu@cygnus.com */
|
||||||
@@ -295,7 +295,8 @@ FRAME_ADDR mips_frame_chain(frame)
|
|||||||
else
|
else
|
||||||
{ /* This hack depends on the internals of __start. */
|
{ /* This hack depends on the internals of __start. */
|
||||||
/* We also assume the breakpoints are *not* inserted */
|
/* We also assume the breakpoints are *not* inserted */
|
||||||
if (read_memory_integer (saved_pc + 8, 4) & 0xFC00003F == 0xD)
|
if (saved_pc == 0
|
||||||
|
|| read_memory_integer (saved_pc + 8, 4) & 0xFC00003F == 0xD)
|
||||||
return 0; /* break */
|
return 0; /* break */
|
||||||
}
|
}
|
||||||
proc_desc = find_proc_desc(saved_pc, frame);
|
proc_desc = find_proc_desc(saved_pc, frame);
|
||||||
@@ -579,8 +580,10 @@ static mips_print_register(regnum, all)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
mips_do_registers_info(regnum)
|
/* Replacement for generic do_registers_info. fpregs is currently ignored. */
|
||||||
|
mips_do_registers_info (regnum, fpregs)
|
||||||
int regnum;
|
int regnum;
|
||||||
|
int fpregs;
|
||||||
{
|
{
|
||||||
if (regnum != -1) {
|
if (regnum != -1) {
|
||||||
mips_print_register (regnum, 0);
|
mips_print_register (regnum, 0);
|
||||||
|
|||||||
@@ -46,10 +46,12 @@ pyr_print_registers(reg_buf, regnum)
|
|||||||
"usp", usp);
|
"usp", usp);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Print the register regnum, or all registers if regnum is -1. */
|
/* Print the register regnum, or all registers if regnum is -1.
|
||||||
|
fpregs is currently ignored. */
|
||||||
|
|
||||||
pyr_do_registers_info (regnum)
|
pyr_do_registers_info (regnum, fpregs)
|
||||||
int regnum;
|
int regnum;
|
||||||
|
int fpregs;
|
||||||
{
|
{
|
||||||
/* On a pyr, we know a virtual register can always fit in an long.
|
/* On a pyr, we know a virtual register can always fit in an long.
|
||||||
Here (and elsewhere) we take advantage of that. Yuk. */
|
Here (and elsewhere) we take advantage of that. Yuk. */
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||||||
/* Define DO_REGISTERS_INFO() to do machine-specific formatting
|
/* Define DO_REGISTERS_INFO() to do machine-specific formatting
|
||||||
of register dumps. */
|
of register dumps. */
|
||||||
|
|
||||||
#define DO_REGISTERS_INFO(_regnum) mips_do_registers_info(_regnum)
|
#define DO_REGISTERS_INFO(_regnum, fp) mips_do_registers_info(_regnum, fp)
|
||||||
|
|
||||||
#define REGISTER_U_ADDR(addr, blockend, regno) \
|
#define REGISTER_U_ADDR(addr, blockend, regno) \
|
||||||
if (blockend == 0) { \
|
if (blockend == 0) { \
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||||||
/* Define DO_REGISTERS_INFO() to do machine-specific formatting
|
/* Define DO_REGISTERS_INFO() to do machine-specific formatting
|
||||||
of register dumps. */
|
of register dumps. */
|
||||||
|
|
||||||
#define DO_REGISTERS_INFO(_regnum) pyr_do_registers_info(_regnum)
|
#define DO_REGISTERS_INFO(_regnum, fp) pyr_do_registers_info(_regnum, fp)
|
||||||
|
|
||||||
/* need this so we can find the global registers: they never get saved. */
|
/* need this so we can find the global registers: they never get saved. */
|
||||||
extern unsigned int global_reg_offset;
|
extern unsigned int global_reg_offset;
|
||||||
|
|||||||
Reference in New Issue
Block a user