summaryrefslogtreecommitdiff
path: root/coregrind/launcher-linux.c
diff options
context:
space:
mode:
Diffstat (limited to 'coregrind/launcher-linux.c')
-rw-r--r--coregrind/launcher-linux.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/coregrind/launcher-linux.c b/coregrind/launcher-linux.c
index e7c9c7f7..e70152dc 100644
--- a/coregrind/launcher-linux.c
+++ b/coregrind/launcher-linux.c
@@ -205,6 +205,10 @@ static const char *select_platform(const char *clientname)
(ehdr->e_ident[EI_OSABI] == ELFOSABI_SYSV ||
ehdr->e_ident[EI_OSABI] == ELFOSABI_LINUX)) {
platform = "ppc64-linux";
+ } else if (ehdr->e_machine == EM_S390 &&
+ (ehdr->e_ident[EI_OSABI] == ELFOSABI_SYSV ||
+ ehdr->e_ident[EI_OSABI] == ELFOSABI_LINUX)) {
+ platform = "s390x-linux";
}
}
}
@@ -278,7 +282,8 @@ int main(int argc, char** argv, char** envp)
(0==strcmp(VG_PLATFORM,"amd64-linux")) ||
(0==strcmp(VG_PLATFORM,"ppc32-linux")) ||
(0==strcmp(VG_PLATFORM,"ppc64-linux")) ||
- (0==strcmp(VG_PLATFORM,"arm-linux")))
+ (0==strcmp(VG_PLATFORM,"arm-linux")) ||
+ (0==strcmp(VG_PLATFORM,"s390x-linux")))
default_platform = VG_PLATFORM;
else
barf("Unknown VG_PLATFORM '%s'", VG_PLATFORM);