aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Evans <dje@google.com>2000-03-07 21:04:31 +0000
committerDoug Evans <dje@google.com>2000-03-07 21:04:31 +0000
commitc1b7949f6edaec243c82466c4ed128c5ecf34918 (patch)
tree9318f0a719d129490fa142bfce0c737fb63eef53
parenta05391975eb6083cd3b30bcf0b7d2347692d4f57 (diff)
downloadgdb-c1b7949f6edaec243c82466c4ed128c5ecf34918.zip
gdb-c1b7949f6edaec243c82466c4ed128c5ecf34918.tar.gz
gdb-c1b7949f6edaec243c82466c4ed128c5ecf34918.tar.bz2
* reloc.c (reloc_howto_struct): Fix partial_inplace comment.
* bfd-in2.h: Rebuild.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/bfd-in2.h17
-rw-r--r--bfd/reloc.c17
3 files changed, 35 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index cdb4986..0602aa1 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2000-03-07 Doug Evans <dje@casey.transmeta.com>
+
+ * reloc.c (reloc_howto_struct): Fix partial_inplace comment.
+ * bfd-in2.h: Rebuild.
+
2000-03-06 Nick Clifton <nickc@cygnus.com>
* peicode.h (struct pe_ILF_vars): Add sym_ptr_table and
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 5c8338e..0771773 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -1605,8 +1605,21 @@ struct reloc_howto_struct
/* The textual name of the relocation type. */
char *name;
- /* When performing a partial link, some formats must modify the
- relocations rather than the data - this flag signals this.*/
+ /* Some formats record a relocation addend in the section contents
+ rather than with the relocation. For ELF formats this is the
+ distinction between USE_REL and USE_RELA (though the code checks
+ for USE_REL == 1/0). The value of this field is TRUE if the
+ addend is recorded with the section contents; when performing a
+ partial link (ld -r) the section contents (the data) will be
+ modified. The value of this field is FALSE if addends are
+ recorded with the relocation (in arelent.addend); when performing
+ a partial link the relocation will be modified.
+ All relocations for all ELF USE_RELA targets should set this field
+ to FALSE (values of TRUE should be looked on with suspicion).
+ However, the converse is not true: not all relocations of all ELF
+ USE_REL targets set this field to TRUE. Why this is so is peculiar
+ to each particular target. For relocs that aren't used in partial
+ links (e.g. GOT stuff) it doesn't matter what this is set to. */
boolean partial_inplace;
/* The src_mask selects which parts of the read in data
diff --git a/bfd/reloc.c b/bfd/reloc.c
index 7edeeaa..7ffe381 100644
--- a/bfd/reloc.c
+++ b/bfd/reloc.c
@@ -340,8 +340,21 @@ CODE_FRAGMENT
. {* The textual name of the relocation type. *}
. char *name;
.
-. {* When performing a partial link, some formats must modify the
-. relocations rather than the data - this flag signals this.*}
+. {* Some formats record a relocation addend in the section contents
+. rather than with the relocation. For ELF formats this is the
+. distinction between USE_REL and USE_RELA (though the code checks
+. for USE_REL == 1/0). The value of this field is TRUE if the
+. addend is recorded with the section contents; when performing a
+. partial link (ld -r) the section contents (the data) will be
+. modified. The value of this field is FALSE if addends are
+. recorded with the relocation (in arelent.addend); when performing
+. a partial link the relocation will be modified.
+. All relocations for all ELF USE_RELA targets should set this field
+. to FALSE (values of TRUE should be looked on with suspicion).
+. However, the converse is not true: not all relocations of all ELF
+. USE_REL targets set this field to TRUE. Why this is so is peculiar
+. to each particular target. For relocs that aren't used in partial
+. links (e.g. GOT stuff) it doesn't matter what this is set to. *}
. boolean partial_inplace;
.
. {* The src_mask selects which parts of the read in data