diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2009-07-14 14:55:06 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2009-07-14 14:55:06 +0000 |
commit | b101f7a1257f10f7e9d596bef5c59b4ae082f4ab (patch) | |
tree | 1582ba2b8e4607b8e79239dc6d537164b8d70c7e /gdb | |
parent | 217f1f79547fc2edab20e6fd0f30814c758d86d9 (diff) | |
download | ppe42-binutils-b101f7a1257f10f7e9d596bef5c59b4ae082f4ab.tar.gz ppe42-binutils-b101f7a1257f10f7e9d596bef5c59b4ae082f4ab.zip |
* objfiles.c (objfile_relocate): Do not relocate the same
BLOCKVECTOR_MAP address map multiple times.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/objfiles.c | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2056b31d98..690f76a046 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2009-07-14 Ulrich Weigand <uweigand@de.ibm.com> + * objfiles.c (objfile_relocate): Do not relocate the same + BLOCKVECTOR_MAP address map multiple times. + +2009-07-14 Ulrich Weigand <uweigand@de.ibm.com> + * remote.c (process_stop_reply): Access expedited target registers in target_gdbarch. diff --git a/gdb/objfiles.c b/gdb/objfiles.c index 795d53b3f5..69b366f0e6 100644 --- a/gdb/objfiles.c +++ b/gdb/objfiles.c @@ -570,6 +570,10 @@ objfile_relocate (struct objfile *objfile, struct section_offsets *new_offsets) continue; bv = BLOCKVECTOR (s); + if (BLOCKVECTOR_MAP (bv)) + addrmap_relocate (BLOCKVECTOR_MAP (bv), + ANOFFSET (delta, s->block_line_section)); + for (i = 0; i < BLOCKVECTOR_NBLOCKS (bv); ++i) { struct block *b; @@ -579,9 +583,6 @@ objfile_relocate (struct objfile *objfile, struct section_offsets *new_offsets) b = BLOCKVECTOR_BLOCK (bv, i); BLOCK_START (b) += ANOFFSET (delta, s->block_line_section); BLOCK_END (b) += ANOFFSET (delta, s->block_line_section); - if (BLOCKVECTOR_MAP (bv)) - addrmap_relocate (BLOCKVECTOR_MAP (bv), - ANOFFSET (delta, s->block_line_section)); ALL_BLOCK_SYMBOLS (b, iter, sym) { |