/* Core dump and executable file functions above target vector, for GDB.
Copyright (C) 1986, 1987, 1989, 1991, 1992, 1993, 1994, 1996, 1997, 1998,
- 1999, 2000, 2001, 2003, 2006, 2007, 2008, 2009
+ 1999, 2000, 2001, 2003, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GDB.
char *filename;
int res;
struct stat st;
- long mtime;
struct cleanup *cleanups;
/* Don't do anything if there isn't an exec file. */
read_memory (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
int status;
+
status = target_read_memory (memaddr, myaddr, len);
if (status != 0)
memory_error (status, memaddr);
read_stack (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
int status;
+
status = target_read_stack (memaddr, myaddr, len);
if (status != 0)
memory_error (status, memaddr);
if successful. */
int
-safe_read_memory_integer (CORE_ADDR memaddr, int len, enum bfd_endian byte_order,
+safe_read_memory_integer (CORE_ADDR memaddr, int len,
+ enum bfd_endian byte_order,
LONGEST *return_value)
{
int status;
struct captured_read_memory_integer_arguments args;
+
args.memaddr = memaddr;
args.len = len;
args.byte_order = byte_order;
read_memory_typed_address (CORE_ADDR addr, struct type *type)
{
gdb_byte *buf = alloca (TYPE_LENGTH (type));
+
read_memory (addr, buf, TYPE_LENGTH (type));
return extract_typed_address (buf, type);
}
write_memory (CORE_ADDR memaddr, const bfd_byte *myaddr, int len)
{
int status;
+
status = target_write_memory (memaddr, myaddr, len);
if (status != 0)
memory_error (status, memaddr);
/* Store VALUE at ADDR in the inferior as a LEN-byte unsigned integer. */
void
-write_memory_unsigned_integer (CORE_ADDR addr, int len, enum bfd_endian byte_order,
+write_memory_unsigned_integer (CORE_ADDR addr, int len,
+ enum bfd_endian byte_order,
ULONGEST value)
{
gdb_byte *buf = alloca (len);
+
store_unsigned_integer (buf, len, byte_order, value);
write_memory (addr, buf, len);
}
/* Store VALUE at ADDR in the inferior as a LEN-byte signed integer. */
void
-write_memory_signed_integer (CORE_ADDR addr, int len, enum bfd_endian byte_order,
+write_memory_signed_integer (CORE_ADDR addr, int len,
+ enum bfd_endian byte_order,
LONGEST value)
{
gdb_byte *buf = alloca (len);
+
store_signed_integer (buf, len, byte_order, value);
write_memory (addr, buf, len);
}
_initialize_core (void)
{
struct cmd_list_element *c;
+
c = add_cmd ("core-file", class_files, core_file_command, _("\
Use FILE as core dump for examining memory and registers.\n\
No arg means have no core file. This command has been superseded by the\n\