Thu Sep 28 14:32:11 1995 steve chamberlain <sac@slash.cygnus.com>

* callback.[ch]: New files.
	* remote-rdp.c: Support for the ARM RDP monitor.
	* Makefile: Update.
	* arm-tdep.c (arm_othernames): New.
	(_initialize_arm_tdep): install 'othernames' command.
	(arm_nullified_insn, shifted_reg_val, arm_get_next_pc): New.
	* configure.in: Check for termios.h, termio.h and sgtty.h.
	(i[345]86-*-win32*): New host.
	* configure: Regenerated.
	* inflow.c: Clean up inclusions.
	* main.c (main): Check for WINGDB, not WIN32.
	* printcmd.c (do_examine): Put QUIT test in loop.
	* remote-hms.c (e7000_load): Delete.
	(hms_ops): Point to generic_load instead.
	* remote-hms.c (hms_ops): Point to generic_load.
	* remote-sim.c (sim_callback_write_stdout): Becomes
	gdbsim_write_stdout.
	(gdbsim_load): Call generic_load.
	* remote-utils.c (gr_load_image): Delete.
	* ser-unix.c (terminal.h): Include instead of havig
	own #if tree.
	(hardwire_flush_input): Reset input buffer too.
	* source.c (openp): If WIN32 then open file in binary mode.
	* terminal.h: Configure IO mechanism using autoconf defines if available and
	not overriden.
	* utils.c (quit, pollquit, notice_quit): WIN32 check becomes WINGDB check.
	* config/arm/arm.mt (TDEPFILES): Add remote-rdp.o
	* config/arm/tm-arm.h (TARGET_BYTE_ORDER): becomes TARGET_BYTE_ORDER_SELECTABLE.
	(ADDR_BITS_REMOVE): New.
	(ORIGINAL_REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): New.
	(INST_xx): New
	(FRAME_FIND_SAVED_REGS): Pass the right argument.
	(arm_get_next_pc): Declare.
	* mswin/prebuilt/*/bfdtarget.h (SELECT_ARCHITECTURES): Need leading &.
This commit is contained in:
Steve Chamberlain 1995-09-29 00:14:01 +00:00
parent b91537be61
commit dedcc91de6
18 changed files with 1886 additions and 181 deletions

View file

@ -629,70 +629,6 @@ gr_store_word (addr, word)
dcache_poke (gr_get_dcache(), addr, word);
}
/* general purpose load a file specified on the command line
into target memory. */
void
gr_load_image (args, fromtty)
char *args;
int fromtty;
{
bfd *abfd;
asection *s;
struct cleanup *old_cleanups;
int delta = 4096;
char *buffer = xmalloc (delta);
abfd = bfd_openr (args, (char *) 0);
if (!abfd)
/* FIXME: should be using bfd_errmsg, not assuming it was
bfd_error_system_call. */
perror_with_name (args);
/* FIXME: should be checking for errors from bfd_close (for one thing,
on error it does not free all the storage associated with the
bfd). */
old_cleanups = make_cleanup (bfd_close, abfd);
QUIT;
if (!bfd_check_format (abfd, bfd_object))
error ("It doesn't seem to be an object file.\n");
for (s = abfd->sections; s && !quit_flag; s = s->next)
{
if (bfd_get_section_flags (abfd, s) & SEC_LOAD)
{
int i;
printf_filtered ("%s\t: 0x%4x .. 0x%4x ",
s->name, s->vma, s->vma + s->_raw_size);
fflush (stdout);
for (i = 0; i < s->_raw_size && !quit_flag; i += delta)
{
int sub_delta = delta;
if (sub_delta > s->_raw_size - i)
sub_delta = s->_raw_size - i;
QUIT;
bfd_get_section_contents (abfd, s, buffer, i, sub_delta);
target_write_memory (s->vma + i, buffer, sub_delta);
printf_filtered ("*");
fflush (stdout);
}
printf_filtered ("\n");
}
}
free (buffer);
write_pc (bfd_get_start_address (abfd));
if (!bfd_close (abfd))
warning ("cannot close \"%s\": %s",
args, bfd_errmsg (bfd_get_error ()));
discard_cleanups (old_cleanups);
}
void
_initialize_sr_support ()
{