summaryrefslogtreecommitdiff
path: root/rts
diff options
context:
space:
mode:
authorSergei Trofimovich <siarheit@google.com>2015-12-30 12:40:56 +0000
committerSergei Trofimovich <siarheit@google.com>2015-12-30 13:49:24 +0000
commitd3a79bcc035d7dab4f16a807984225e4bd4fccd8 (patch)
treee569b09caacf22e1a5ba7c2f6929d4c04f18a981 /rts
parente9ab6d5939014e11b4f9368984f991de4d4cf041 (diff)
downloadhaskell-d3a79bcc035d7dab4f16a807984225e4bd4fccd8.tar.gz
rts/Linker.c: mark ia64 as 64-bit ELF, drop unused branches
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
Diffstat (limited to 'rts')
-rw-r--r--rts/Linker.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/rts/Linker.c b/rts/Linker.c
index c0ab664987..cb90c97a22 100644
--- a/rts/Linker.c
+++ b/rts/Linker.c
@@ -4169,6 +4169,8 @@ ocRunInit_PEi386 ( ObjectCode *oc )
# define ELF_TARGET_AMD64 /* Used inside <elf.h> on Solaris 11 */
#elif defined(powerpc64_HOST_ARCH) || defined(powerpc64le_HOST_ARCH)
# define ELF_64BIT
+#elif defined(ia64_HOST_ARCH)
+# define ELF_64BIT
#endif
#if !defined(openbsd_HOST_OS)
@@ -5296,7 +5298,7 @@ do_Elf_Rela_relocations ( ObjectCode* oc, char* ehdrC,
#if defined(SHN_XINDEX)
Elf_Word* shndx_table = get_shndx_table((Elf_Ehdr*)ehdrC);
#endif
-#if defined(DEBUG) || defined(sparc_HOST_ARCH) || defined(ia64_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
+#if defined(DEBUG) || defined(sparc_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
/* This #ifdef only serves to avoid unused-var warnings. */
Elf_Addr targ = (Elf_Addr) oc->sections[target_shndx].start;
#endif
@@ -5314,13 +5316,13 @@ do_Elf_Rela_relocations ( ObjectCode* oc, char* ehdrC,
}
for (j = 0; j < nent; j++) {
-#if defined(DEBUG) || defined(sparc_HOST_ARCH) || defined(ia64_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
+#if defined(DEBUG) || defined(sparc_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
/* This #ifdef only serves to avoid unused-var warnings. */
Elf_Addr offset = rtab[j].r_offset;
Elf_Addr P = targ + offset;
Elf_Addr A = rtab[j].r_addend;
#endif
-#if defined(sparc_HOST_ARCH) || defined(ia64_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
+#if defined(sparc_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
Elf_Addr value;
#endif
Elf_Addr info = rtab[j].r_info;
@@ -5386,7 +5388,7 @@ do_Elf_Rela_relocations ( ObjectCode* oc, char* ehdrC,
(void*)P, (void*)S, (void*)A ));
/* checkProddableBlock ( oc, (void*)P ); */
-#if defined(sparc_HOST_ARCH) || defined(ia64_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
+#if defined(sparc_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH)
value = S + A;
#endif