mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-25 16:57:52 +00:00
gdb:
* corefile.c (write_memory_with_notification): New. * gdbcore.h: Declare write_memory_with_notification. * ada-lang.c (ada_value_assign): Replace 'write_memory' and 'observer_notify_memory_changed' with 'write_memory_with_notification'. * valops.c (value_assign): Likewise. * python/py-inferior.c (infpy_write_memory): Call 'write_memory_with_notification'.
This commit is contained in:
@@ -1,3 +1,13 @@
|
||||
2012-06-24 Yao Qi <yao@codesourcery.com>
|
||||
|
||||
* corefile.c (write_memory_with_notification): New.
|
||||
* gdbcore.h: Declare write_memory_with_notification.
|
||||
* ada-lang.c (ada_value_assign): Replace 'write_memory' and
|
||||
'observer_notify_memory_changed' with 'write_memory_with_notification'.
|
||||
* valops.c (value_assign): Likewise.
|
||||
* python/py-inferior.c (infpy_write_memory): Call
|
||||
'write_memory_with_notification'.
|
||||
|
||||
2012-06-24 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* cc-with-index.sh: Use also -ex "set auto-load no".
|
||||
|
||||
@@ -2534,8 +2534,7 @@ ada_value_assign (struct value *toval, struct value *fromval)
|
||||
else
|
||||
move_bits (buffer, value_bitpos (toval),
|
||||
value_contents (fromval), 0, bits, 0);
|
||||
write_memory (to_addr, buffer, len);
|
||||
observer_notify_memory_changed (to_addr, len, buffer);
|
||||
write_memory_with_notification (to_addr, buffer, len);
|
||||
|
||||
val = value_copy (toval);
|
||||
memcpy (value_contents_raw (val), value_contents (fromval),
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "gdb_stat.h"
|
||||
#include "completer.h"
|
||||
#include "exceptions.h"
|
||||
#include "observer.h"
|
||||
|
||||
/* Local function declarations. */
|
||||
|
||||
@@ -361,6 +362,16 @@ write_memory (CORE_ADDR memaddr,
|
||||
memory_error (status, memaddr);
|
||||
}
|
||||
|
||||
/* Same as write_memory, but notify 'memory_changed' observers. */
|
||||
|
||||
void
|
||||
write_memory_with_notification (CORE_ADDR memaddr, const bfd_byte *myaddr,
|
||||
ssize_t len)
|
||||
{
|
||||
write_memory (memaddr, myaddr, len);
|
||||
observer_notify_memory_changed (memaddr, len, myaddr);
|
||||
}
|
||||
|
||||
/* Store VALUE at ADDR in the inferior as a LEN-byte unsigned
|
||||
integer. */
|
||||
void
|
||||
|
||||
@@ -86,6 +86,12 @@ CORE_ADDR read_memory_typed_address (CORE_ADDR addr, struct type *type);
|
||||
extern void write_memory (CORE_ADDR memaddr, const gdb_byte *myaddr,
|
||||
ssize_t len);
|
||||
|
||||
/* Same as write_memory, but notify 'memory_changed' observers. */
|
||||
|
||||
extern void write_memory_with_notification (CORE_ADDR memaddr,
|
||||
const bfd_byte *myaddr,
|
||||
ssize_t len);
|
||||
|
||||
/* Store VALUE at ADDR in the inferior as a LEN-byte unsigned integer. */
|
||||
extern void write_memory_unsigned_integer (CORE_ADDR addr, int len,
|
||||
enum bfd_endian byte_order,
|
||||
|
||||
@@ -493,7 +493,7 @@ infpy_write_memory (PyObject *self, PyObject *args, PyObject *kw)
|
||||
error = 1;
|
||||
break;
|
||||
}
|
||||
write_memory (addr, buffer, length);
|
||||
write_memory_with_notification (addr, buffer, length);
|
||||
}
|
||||
GDB_PY_HANDLE_EXCEPTION (except);
|
||||
|
||||
|
||||
@@ -1299,9 +1299,7 @@ value_assign (struct value *toval, struct value *fromval)
|
||||
dest_buffer = value_contents (fromval);
|
||||
}
|
||||
|
||||
write_memory (changed_addr, dest_buffer, changed_len);
|
||||
observer_notify_memory_changed (changed_addr, changed_len,
|
||||
dest_buffer);
|
||||
write_memory_with_notification (changed_addr, dest_buffer, changed_len);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user