diff options
Diffstat (limited to 'libphobos/libdruntime/core/sys/linux/link.d')
-rw-r--r-- | libphobos/libdruntime/core/sys/linux/link.d | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/libphobos/libdruntime/core/sys/linux/link.d b/libphobos/libdruntime/core/sys/linux/link.d index b57b5e5d00f..e242d2b2876 100644 --- a/libphobos/libdruntime/core/sys/linux/link.d +++ b/libphobos/libdruntime/core/sys/linux/link.d @@ -18,8 +18,10 @@ version (PPC) version = PPC_Any; version (PPC64) version = PPC_Any; version (RISCV32) version = RISCV_Any; version (RISCV64) version = RISCV_Any; +version (S390) version = IBMZ_Any; version (SPARC) version = SPARC_Any; version (SPARC64) version = SPARC_Any; +version (SystemZ) version = IBMZ_Any; version (X86) version = X86_Any; version (X86_64) version = X86_Any; @@ -71,11 +73,14 @@ else version (SPARC_Any) alias __WORDSIZE __ELF_NATIVE_CLASS; alias uint32_t Elf_Symndx; } -else version (SystemZ) +else version (IBMZ_Any) { // http://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/s390/bits/elfclass.h alias __WORDSIZE __ELF_NATIVE_CLASS; - alias uint64_t Elf_Symndx; + static if (__WORDSIZE == 64) + alias uint64_t Elf_Symndx; + else + alias uint32_t Elf_Symndx; } else static assert(0, "unimplemented"); |