diff options
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/dwarf2loc.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 0845c61..ee4c9d8 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2017-06-13 Andreas Arnez <arnez@linux.vnet.ibm.com> + * dwarf2loc.c (write_pieced_value): Include transfer size in + byte-wise check. + +2017-06-13 Andreas Arnez <arnez@linux.vnet.ibm.com> + * dwarf2loc.c (write_pieced_value): Fix copy/paste error in the calculation of this_size. diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c index 1122c8a..2849dad 100644 --- a/gdb/dwarf2loc.c +++ b/gdb/dwarf2loc.c @@ -1986,7 +1986,10 @@ write_pieced_value (struct value *to, struct value *from) this_size = (this_size_bits + dest_offset_bits % 8 + 7) / 8; source_offset = source_offset_bits / 8; dest_offset = dest_offset_bits / 8; - if (dest_offset_bits % 8 == 0 && source_offset_bits % 8 == 0) + + /* Check whether the data can be transferred byte-wise. */ + if (dest_offset_bits % 8 == 0 && source_offset_bits % 8 == 0 + && this_size_bits % 8 == 0) { source_buffer = contents + source_offset; need_bitwise = 0; |