summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHerbert Valerio Riedel <hvr@gnu.org>2016-03-28 11:36:21 +0200
committerHerbert Valerio Riedel <hvr@gnu.org>2016-03-28 11:51:11 +0200
commit0bca3f3a56c606e5060be03227f0ea9ca2197acc (patch)
treebda242960f5a882e99f750e4b8d1be38f15f4dfa
parent61df7f8fb4e76fc8987c0b4f02aa9ec795be7afb (diff)
downloadhaskell-0bca3f3a56c606e5060be03227f0ea9ca2197acc.tar.gz
Scrap IRIX support
Long time ago, IRIX was way ahead of its time in the last century with its SMP capabilities of scaling up to 1024 processors and other features such as XFS or OpenGL that originated in IRIX and live on to this day in other operating systems. However, IRIX's last software update was in 2006 and support ended around 2013 according to [1], so it's considered an extinct platform by now. So this commit message is effectively an obituary for GHC's IRIX support. R.I.P. IRIX [1]: https://en.wikipedia.org/wiki/IRIX
-rw-r--r--aclocal.m44
-rw-r--r--compiler/ghc.mk10
-rw-r--r--includes/ghc.mk5
-rw-r--r--libraries/base/System/CPUTime.hsc2
-rw-r--r--libraries/base/include/HsBase.h2
-rw-r--r--rts/posix/GetTime.c6
-rw-r--r--rts/posix/OSMem.c15
7 files changed, 8 insertions, 36 deletions
diff --git a/aclocal.m4 b/aclocal.m4
index dd1ba73cc9..7616cf4598 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -277,7 +277,7 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_VARS],
nto-qnx)
test -z "[$]2" || eval "[$]2=OSQNXNTO"
;;
- dragonfly|osf1|hpux|linuxaout|freebsd2|gnu|nextstep2|nextstep3|sunos4|ultrix|irix)
+ dragonfly|osf1|hpux|linuxaout|freebsd2|gnu|nextstep2|nextstep3|sunos4|ultrix)
test -z "[$]2" || eval "[$]2=OSUnknown"
;;
aix)
@@ -1884,7 +1884,7 @@ case "$1-$2" in
$3="linux"
;;
# As far as I'm aware, none of these have relevant variants
- freebsd|netbsd|openbsd|dragonfly|osf1|osf3|hpux|linuxaout|kfreebsdgnu|freebsd2|solaris2|mingw32|darwin|gnu|nextstep2|nextstep3|sunos4|ultrix|irix|haiku)
+ freebsd|netbsd|openbsd|dragonfly|osf1|osf3|hpux|linuxaout|kfreebsdgnu|freebsd2|solaris2|mingw32|darwin|gnu|nextstep2|nextstep3|sunos4|ultrix|haiku)
$3="$1"
;;
aix*) # e.g. powerpc-ibm-aix7.1.3.0
diff --git a/compiler/ghc.mk b/compiler/ghc.mk
index d3cd2a5ffc..9f45a51842 100644
--- a/compiler/ghc.mk
+++ b/compiler/ghc.mk
@@ -177,11 +177,6 @@ compiler/stage1/$(PLATFORM_H) : mk/config.mk mk/project.mk | $$(dir $$@)/.
@echo "#define BUILD_OS \"$(BuildOS_CPP)\"" >> $@
@echo "#define HOST_OS \"$(HostOS_CPP)\"" >> $@
@echo "#define TARGET_OS \"$(TargetOS_CPP)\"" >> $@
-ifeq "$(TargetOS_CPP)" "irix"
- @echo "#ifndef $(IRIX_MAJOR)_TARGET_OS" >> $@
- @echo "#define $(IRIX_MAJOR)_TARGET_OS 1" >> $@
- @echo "#endif" >> $@
-endif
@echo >> $@
@echo "#define $(BuildVendor_CPP)_BUILD_VENDOR 1" >> $@
@echo "#define $(HostVendor_CPP)_HOST_VENDOR 1" >> $@
@@ -223,11 +218,6 @@ compiler/stage2/$(PLATFORM_H) : mk/config.mk mk/project.mk | $$(dir $$@)/.
@echo "#define BUILD_OS \"$(HostOS_CPP)\"" >> $@
@echo "#define HOST_OS \"$(TargetOS_CPP)\"" >> $@
@echo "#define TARGET_OS \"$(TargetOS_CPP)\"" >> $@
-ifeq "$(TargetOS_CPP)" "irix"
- @echo "#ifndef $(IRIX_MAJOR)_TARGET_OS" >> $@
- @echo "#define $(IRIX_MAJOR)_TARGET_OS 1" >> $@
- @echo "#endif" >> $@
-endif
@echo >> $@
@echo "#define $(HostVendor_CPP)_BUILD_VENDOR 1" >> $@
@echo "#define $(TargetVendor_CPP)_HOST_VENDOR 1" >> $@
diff --git a/includes/ghc.mk b/includes/ghc.mk
index aacca0805b..31b26508f6 100644
--- a/includes/ghc.mk
+++ b/includes/ghc.mk
@@ -143,11 +143,6 @@ $(includes_H_PLATFORM) : includes/Makefile | $$(dir $$@)/.
@echo "#define $(TargetOS_CPP)_HOST_OS 1" >> $@
@echo "#define BUILD_OS \"$(HostOS_CPP)\"" >> $@
@echo "#define HOST_OS \"$(TargetOS_CPP)\"" >> $@
-ifeq "$(HostOS_CPP)" "irix"
- @echo "#ifndef $(IRIX_MAJOR)_HOST_OS" >> $@
- @echo "#define $(IRIX_MAJOR)_HOST_OS 1" >> $@
- @echo "#endif" >> $@
-endif
@echo >> $@
@echo "#define $(HostVendor_CPP)_BUILD_VENDOR 1" >> $@
@echo "#define $(TargetVendor_CPP)_HOST_VENDOR 1" >> $@
diff --git a/libraries/base/System/CPUTime.hsc b/libraries/base/System/CPUTime.hsc
index 04759759cc..6bc90f168a 100644
--- a/libraries/base/System/CPUTime.hsc
+++ b/libraries/base/System/CPUTime.hsc
@@ -37,7 +37,7 @@ import qualified System.CPUTime.Windows as I
#elif _POSIX_TIMERS > 0 && defined(_POSIX_CPUTIME) && _POSIX_CPUTIME >= 0
import qualified System.CPUTime.Posix.ClockGetTime as I
-#elif defined(HAVE_GETRUSAGE) && ! irix_HOST_OS && ! solaris2_HOST_OS
+#elif defined(HAVE_GETRUSAGE) && ! solaris2_HOST_OS
import qualified System.CPUTime.Posix.RUsage as I
-- @getrusage()@ is right royal pain to deal with when targetting multiple
diff --git a/libraries/base/include/HsBase.h b/libraries/base/include/HsBase.h
index a5512cc29a..3fe514e555 100644
--- a/libraries/base/include/HsBase.h
+++ b/libraries/base/include/HsBase.h
@@ -111,7 +111,7 @@
# include <mach/mach_time.h>
#endif
-#if !defined(_WIN32) && !defined(irix_HOST_OS)
+#if !defined(_WIN32)
# if HAVE_SYS_RESOURCE_H
# include <sys/resource.h>
# endif
diff --git a/rts/posix/GetTime.c b/rts/posix/GetTime.c
index 24d0d50e8a..ab0d15e129 100644
--- a/rts/posix/GetTime.c
+++ b/rts/posix/GetTime.c
@@ -21,11 +21,11 @@
# include <sys/times.h>
#endif
-#if ! ((defined(HAVE_GETRUSAGE) && !irix_HOST_OS) || defined(HAVE_TIMES))
+#if ! (defined(HAVE_GETRUSAGE) || defined(HAVE_TIMES))
#error No implementation for getProcessCPUTime() available.
#endif
-#if defined(HAVE_GETTIMEOFDAY) && defined(HAVE_GETRUSAGE) && !irix_HOST_OS
+#if defined(HAVE_GETTIMEOFDAY) && defined(HAVE_GETRUSAGE)
// we'll implement getProcessCPUTime() and getProcessElapsedTime()
// separately, using getrusage() and gettimeofday() respectively
@@ -190,7 +190,7 @@ void getUnixEpochTime(StgWord64 *sec, StgWord32 *nsec)
W_
getPageFaults(void)
{
-#if !defined(HAVE_GETRUSAGE) || irix_HOST_OS || haiku_HOST_OS
+#if !defined(HAVE_GETRUSAGE) || haiku_HOST_OS
return 0;
#else
struct rusage t;
diff --git a/rts/posix/OSMem.c b/rts/posix/OSMem.c
index 2a3c294fba..20d27bec4f 100644
--- a/rts/posix/OSMem.c
+++ b/rts/posix/OSMem.c
@@ -164,20 +164,7 @@ my_mmap (void *addr, W_ size, int operation)
else
flags = 0;
-#if defined(irix_HOST_OS)
- {
- if (operation & MEM_RESERVE)
- {
- int fd = open("/dev/zero",O_RDONLY);
- ret = mmap(addr, size, prot, flags | MAP_PRIVATE, fd, 0);
- close(fd);
- }
- else
- {
- ret = mmap(addr, size, prot, flags | MAP_PRIVATE, -1, 0);
- }
- }
-#elif hpux_HOST_OS
+#if hpux_HOST_OS
ret = mmap(addr, size, prot, flags | MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
#elif linux_HOST_OS
ret = mmap(addr, size, prot, flags | MAP_ANON | MAP_PRIVATE, -1, 0);