Blame SOURCES/gdb-rhbz1420304-s390x-26of35.patch

e1d87d
commit f65e204425b5b46a5927d9501c42f25d98a866ce
e1d87d
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
e1d87d
Date:   Tue Jun 13 15:20:32 2017 +0200
e1d87d
e1d87d
    write_pieced_value: Notify memory_changed observers
e1d87d
    
e1d87d
    So far write_pieced_value uses write_memory when writing memory pieces to
e1d87d
    the target.  However, this is a case where GDB potentially overwrites a
e1d87d
    watchpoint value.  In such a case write_memory_with_notification should be
e1d87d
    used instead, so that memory_changed observers get notified.
e1d87d
    
e1d87d
    gdb/ChangeLog:
e1d87d
    
e1d87d
            * dwarf2loc.c (write_pieced_value): When writing the data for a
e1d87d
            memory piece, use write_memory_with_notification instead of
e1d87d
            write_memory.
e1d87d
e1d87d
### a/gdb/ChangeLog
e1d87d
### b/gdb/ChangeLog
e1d87d
## -1,5 +1,11 @@
e1d87d
 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
e1d87d
 
e1d87d
+	* dwarf2loc.c (write_pieced_value): When writing the data for a
e1d87d
+	memory piece, use write_memory_with_notification instead of
e1d87d
+	write_memory.
e1d87d
+
e1d87d
+2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
e1d87d
+
e1d87d
 	* valops.c (read_value_memory): Change embedded_offset to
e1d87d
 	represent a bit offset instead of a byte offset.
e1d87d
 	* value.h (read_value_memory): Adjust comment.
e1d87d
--- a/gdb/dwarf2loc.c
e1d87d
+++ b/gdb/dwarf2loc.c
e1d87d
@@ -2025,9 +2025,9 @@ write_pieced_value (struct value *to, struct value *from)
e1d87d
 		&& offset % 8 == 0)
e1d87d
 	      {
e1d87d
 		/* Everything is byte-aligned; no buffer needed.  */
e1d87d
-		write_memory (start_addr,
e1d87d
-			      contents + offset / 8,
e1d87d
-			      this_size_bits / 8);
e1d87d
+		write_memory_with_notification (start_addr,
e1d87d
+						contents + offset / 8,
e1d87d
+						this_size_bits / 8);
e1d87d
 		break;
e1d87d
 	      }
e1d87d
 
e1d87d
@@ -2054,7 +2054,8 @@ write_pieced_value (struct value *to, struct value *from)
e1d87d
 	    copy_bitwise (buffer.data (), bits_to_skip % 8,
e1d87d
 			  contents, offset,
e1d87d
 			  this_size_bits, bits_big_endian);
e1d87d
-	    write_memory (start_addr, buffer.data (), this_size);
e1d87d
+	    write_memory_with_notification (start_addr, buffer.data (),
e1d87d
+					    this_size);
e1d87d
 	  }
e1d87d
 	  break;
e1d87d
 	default: