diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-06-08 19:48:15 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-06-08 19:48:15 +0000 |
commit | 6b27ebe85129c4c6f9b6d5fc2ad48d51ab80d8f8 (patch) | |
tree | 5bbdfa31666213e8584a2b0096444fea3b663576 /gdb/remote-nindy.c | |
parent | 3b4cc5ecfb9bf0716cc73aaf008b33a03ded5397 (diff) | |
download | gdb-6b27ebe85129c4c6f9b6d5fc2ad48d51ab80d8f8.zip gdb-6b27ebe85129c4c6f9b6d5fc2ad48d51ab80d8f8.tar.gz gdb-6b27ebe85129c4c6f9b6d5fc2ad48d51ab80d8f8.tar.bz2 |
* symfile.{c,h} (generic_load): New function.
remote{,-nindy,-eb,-mips}.c: Use it.
Diffstat (limited to 'gdb/remote-nindy.c')
-rw-r--r-- | gdb/remote-nindy.c | 56 |
1 files changed, 4 insertions, 52 deletions
diff --git a/gdb/remote-nindy.c b/gdb/remote-nindy.c index 047e809..e28fe8a 100644 --- a/gdb/remote-nindy.c +++ b/gdb/remote-nindy.c @@ -102,6 +102,7 @@ NINDY ROM monitor at the other end of the line. #include "frame.h" #include "inferior.h" +#include "symfile.h" #include "target.h" #include "gdbcore.h" #include "command.h" @@ -271,57 +272,8 @@ nindy_files_info () nindy_initial_brk? " with initial break": ""); } -/****************************************************************************** - * remote_load: - * Download an object file to the remote system by invoking the "comm960" - * utility. We look for "comm960" in $G960BIN, $G960BASE/bin, and - * DEFAULT_BASE/bin/HOST/bin where - * DEFAULT_BASE is defined in env.h, and - * HOST must be defined on the compiler invocation line. - ******************************************************************************/ - -static void -nindy_load( filename, from_tty ) - char *filename; - int from_tty; -{ - asection *s; - /* Can't do unix style forking on a VMS system, so we'll use bfd to do - all the work for us - */ - - bfd *file = bfd_openr(filename,0); - if (!file) - { - perror_with_name(filename); - return; - } - - if (!bfd_check_format(file, bfd_object)) - { - error("can't prove it's an object file\n"); - return; - } - - for ( s = file->sections; s; s=s->next) - { - if (s->flags & SEC_LOAD) - { - char *buffer = xmalloc(s->_raw_size); - bfd_get_section_contents(file, s, buffer, 0, s->_raw_size); - printf("Loading section %s, size %x vma %x\n", - s->name, - s->_raw_size, - s->vma); - ninMemPut(s->vma, buffer, s->_raw_size); - free(buffer); - } - } - bfd_close(file); -} - -/* Return the number of characters in the buffer before the first DLE character. - */ +/* Return the number of characters in the buffer before + the first DLE character. */ static int @@ -955,7 +907,7 @@ specified when you started GDB.", 0, 0, /* insert_breakpoint, remove_breakpoint, */ 0, 0, 0, 0, 0, /* Terminal crud */ nindy_kill, - nindy_load, + generic_load, 0, /* lookup_symbol */ nindy_create_inferior, nindy_mourn_inferior, |