diff options
author | Herbert Valerio Riedel <hvr@gnu.org> | 2016-03-28 11:36:21 +0200 |
---|---|---|
committer | Herbert Valerio Riedel <hvr@gnu.org> | 2016-03-28 11:51:11 +0200 |
commit | 0bca3f3a56c606e5060be03227f0ea9ca2197acc (patch) | |
tree | bda242960f5a882e99f750e4b8d1be38f15f4dfa | |
parent | 61df7f8fb4e76fc8987c0b4f02aa9ec795be7afb (diff) | |
download | haskell-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.m4 | 4 | ||||
-rw-r--r-- | compiler/ghc.mk | 10 | ||||
-rw-r--r-- | includes/ghc.mk | 5 | ||||
-rw-r--r-- | libraries/base/System/CPUTime.hsc | 2 | ||||
-rw-r--r-- | libraries/base/include/HsBase.h | 2 | ||||
-rw-r--r-- | rts/posix/GetTime.c | 6 | ||||
-rw-r--r-- | rts/posix/OSMem.c | 15 |
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); |