summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2002-12-06 00:17:21 -0800
committerLinus Torvalds <torvalds@penguin.transmeta.com>2002-12-06 00:17:21 -0800
commita00fcb01afb834956d2ce3d7164436439b6ffb42 (patch)
tree161c5abd95e33af8e4c1d8cab1890bb37a3171c4 /include/linux
parent4b9c82e0fb30b06b7bfc20940b71e8966e74a64d (diff)
[PATCH] s390: relocations.
Add s390 elf relocations.
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/elf.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/include/linux/elf.h b/include/linux/elf.h
index fb984d1d55f4..f5702e3c7c20 100644
--- a/include/linux/elf.h
+++ b/include/linux/elf.h
@@ -448,6 +448,37 @@ typedef struct {
/* Keep this the last entry. */
#define R_390_NUM 27
+/* s390 relocations defined by the ABIs */
+#define R_390_NONE 0 /* No reloc. */
+#define R_390_8 1 /* Direct 8 bit. */
+#define R_390_12 2 /* Direct 12 bit. */
+#define R_390_16 3 /* Direct 16 bit. */
+#define R_390_32 4 /* Direct 32 bit. */
+#define R_390_PC32 5 /* PC relative 32 bit. */
+#define R_390_GOT12 6 /* 12 bit GOT offset. */
+#define R_390_GOT32 7 /* 32 bit GOT offset. */
+#define R_390_PLT32 8 /* 32 bit PC relative PLT address. */
+#define R_390_COPY 9 /* Copy symbol at runtime. */
+#define R_390_GLOB_DAT 10 /* Create GOT entry. */
+#define R_390_JMP_SLOT 11 /* Create PLT entry. */
+#define R_390_RELATIVE 12 /* Adjust by program base. */
+#define R_390_GOTOFF 13 /* 32 bit offset to GOT. */
+#define R_390_GOTPC 14 /* 32 bit PC relative offset to GOT. */
+#define R_390_GOT16 15 /* 16 bit GOT offset. */
+#define R_390_PC16 16 /* PC relative 16 bit. */
+#define R_390_PC16DBL 17 /* PC relative 16 bit shifted by 1. */
+#define R_390_PLT16DBL 18 /* 16 bit PC rel. PLT shifted by 1. */
+#define R_390_PC32DBL 19 /* PC relative 32 bit shifted by 1. */
+#define R_390_PLT32DBL 20 /* 32 bit PC rel. PLT shifted by 1. */
+#define R_390_GOTPCDBL 21 /* 32 bit PC rel. GOT shifted by 1. */
+#define R_390_64 22 /* Direct 64 bit. */
+#define R_390_PC64 23 /* PC relative 64 bit. */
+#define R_390_GOT64 24 /* 64 bit GOT offset. */
+#define R_390_PLT64 25 /* 64 bit PC relative PLT address. */
+#define R_390_GOTENT 26 /* 32 bit PC rel. to GOT entry >> 1. */
+/* Keep this the last entry. */
+#define R_390_NUM 27
+
/* Legal values for e_flags field of Elf64_Ehdr. */
#define EF_ALPHA_32BIT 1 /* All addresses are below 2GB */