Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'include/elf')
-rw-r--r--include/elf/ChangeLog11
-rw-r--r--include/elf/cris.h76
-rw-r--r--include/elf/ppc.h5
3 files changed, 92 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index ae259dcbc..964f6cfe5 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,14 @@
+2008-10-10 Nathan Froyd <froydnj@codesourcery.com>
+
+ * ppc.h: Add Tag_GNU_Power_ABI_Struct_Return.
+
+2008-10-04 Hans-Peter Nilsson <hp@axis.com>
+
+ * cris.h (R_CRIS_32_GOT_GD, R_CRIS_16_GOT_GD, R_CRIS_32_GD)
+ (R_CRIS_DTP, R_CRIS_32_DTPREL, R_CRIS_16_DTPREL, R_CRIS_DTPMOD)
+ (R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL, R_CRIS_32_TPREL)
+ (R_CRIS_16_TPREL): New relocations.
+
2008-08-20 Bob Wilson <bob.wilson@acm.org>
* xtensa.h (R_XTENSA_TLSDESC_FN, R_XTENSA_TLSDESC_ARG)
diff --git a/include/elf/cris.h b/include/elf/cris.h
index 8225baa41..550955df4 100644
--- a/include/elf/cris.h
+++ b/include/elf/cris.h
@@ -91,6 +91,82 @@ START_RELOC_NUMBERS (elf_cris_reloc_type)
The BFD equivalent is BFD_RELOC_CRIS_32_PLT_PCREL. */
RELOC_NUMBER (R_CRIS_32_PLT_PCREL, 19)
+ /* An assembler-generated-only relocation, instructing the linker to
+ reserve two GOT slots, carrying the R_CRIS_DTP relocation for the
+ symbol (pointing to the first slot, the relocation fills in
+ both). The value is a 32-bit-value, relative to the start of the
+ GOT. Assembly syntax: "sym:GDGOTREL". */
+ RELOC_NUMBER (R_CRIS_32_GOT_GD, 20)
+
+ /* Similar to R_CRIS_32_GOT_GD, but the value is a 16-bit unsigned
+ number, limiting access to 65536/4 global symbols per module (or
+ 65536/8 thread variables; loosely speaking G*4+T*8 < 65536, where
+ T is the number of thread variables and G is the number of other
+ external global variables and functions). Assembly syntax:
+ "sym:GDGOTREL16". */
+ RELOC_NUMBER (R_CRIS_16_GOT_GD, 21)
+
+ /* Similar to R_CRIS_32_GOT_GD, but the value is the absolute
+ address of the GOT entry. Disallowed in DSOs created with
+ -shared. Assembly syntax: "sym:GD". */
+ RELOC_NUMBER (R_CRIS_32_GD, 22)
+
+ /* A linker-generated-only relocation, instructing the dynamic
+ linker to fill in the module ID and module-relative-TLS-block
+ offset of the symbol in question, used for GOT entries. Note
+ that this relocation instructs to fill in two 32-bit values. */
+ RELOC_NUMBER (R_CRIS_DTP, 23)
+
+ /* An assembler-generated-only relocation, instructing the linker to
+ reserve the first two GOT slots, and attach the R_CRIS_DTPMOD
+ relocation(*) for the module to the first slot, the second
+ containing zero. The value is 32 bits, the offset from the start
+ of the TLS block of the module to the thread-local symbol
+ mentioned in the relocation. This relocation must only be applied
+ to module-local symbols. Assembly syntax: "expr:DTPREL". */
+ RELOC_NUMBER (R_CRIS_32_DTPREL, 24)
+
+ /* Similar to R_CRIS_32_DTPREL, but the value is a 16-bit signed
+ number, limiting the size of thread-variables of the DSO to 32768
+ bytes. (Note: matches both model 1 and 2 and allows use of addo.w
+ as the instruction where this relocation is used.) Assembly
+ syntax: "expr:DTPREL16". */
+ RELOC_NUMBER (R_CRIS_16_DTPREL, 25)
+
+ /* An assembler-generated-only relocation, instructing the linker to
+ reserve a GOT slot and attach the R_CRIS_32_TPREL relocation for
+ the symbol in question. The value is 32 bits, which is the
+ GOT-relative offset of the slot. Assembly syntax:
+ "sym:TPOFFGOT". */
+ RELOC_NUMBER (R_CRIS_32_GOT_TPREL, 26)
+
+ /* Similar to R_CRIS_32_TPREL, but the value is a 16-bit positive
+ number, limiting the number of thread- and global variables of
+ the DSO to 32768/4. Assembly syntax: "sym:TPOFFGOT16". */
+ RELOC_NUMBER (R_CRIS_16_GOT_TPREL, 27)
+
+ /* An assembler- and linker-generated relocation, instructing to
+ resolve the symbol in question yielding the TLS offset of the
+ thread variable; relative to the module's TLS data if in a DSO,
+ but relative to the executable's thread data if in an
+ executable. Not allowed as input when generating a DSO. Assembly
+ syntax: "expr:TPOFF". */
+ RELOC_NUMBER (R_CRIS_32_TPREL, 28)
+
+ /* Similar to R_CRIS_32_TPREL, but only applicable to executables
+ compiled with -msmall-tls. Not allowed in a DSO. The value is a
+ 16-bit signed number, limiting the size of thread-variables of
+ the executable to 32768 bytes. (Note: being signed makes it match
+ both model 1 and 2 and allows use of addo.w as the instruction
+ where this relocation is applied.) Assembly syntax:
+ "expr:TPOFF16". */
+ RELOC_NUMBER (R_CRIS_16_TPREL, 29)
+
+ /* A linker-generated-only relocation, instructing the dynamic
+ linker to fill in the current module ID, used for GOT entries
+ (always the fourth one). */
+ RELOC_NUMBER (R_CRIS_DTPMOD, 30)
+
/* No other relocs must be visible outside the assembler. */
END_RELOC_NUMBERS (R_CRIS_max)
diff --git a/include/elf/ppc.h b/include/elf/ppc.h
index 95cccce24..a0c16f1a7 100644
--- a/include/elf/ppc.h
+++ b/include/elf/ppc.h
@@ -186,6 +186,11 @@ enum
registers, 3 for SPE registers; 0 for not tagged or not using any
ABIs affected by the differences. */
Tag_GNU_Power_ABI_Vector = 8,
+
+ /* Value 1 for ABIs using r3/r4 for returning structures <= 8 bytes,
+ 2 for ABIs using memory; 0 for not tagged or not using any ABIs
+ affected by the differences. */
+ Tag_GNU_Power_ABI_Struct_Return = 12
};
#endif /* _ELF_PPC_H */