[commit: ghc] master: Scrap IRIX support (0bca3f3)

git at git.haskell.org git at git.haskell.org
Mon Mar 28 09:49:58 UTC 2016


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/0bca3f3a56c606e5060be03227f0ea9ca2197acc/ghc

>---------------------------------------------------------------

commit 0bca3f3a56c606e5060be03227f0ea9ca2197acc
Author: Herbert Valerio Riedel <hvr at gnu.org>
Date:   Mon Mar 28 11:36:21 2016 +0200

    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


>---------------------------------------------------------------

0bca3f3a56c606e5060be03227f0ea9ca2197acc
 aclocal.m4                        |  4 ++--
 compiler/ghc.mk                   | 10 ----------
 includes/ghc.mk                   |  5 -----
 libraries/base/System/CPUTime.hsc |  2 +-
 libraries/base/include/HsBase.h   |  2 +-
 rts/posix/GetTime.c               |  6 +++---
 rts/posix/OSMem.c                 | 15 +--------------
 7 files changed, 8 insertions(+), 36 deletions(-)

diff --git a/aclocal.m4 b/aclocal.m4
index dd1ba73..7616cf4 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 d3cd2a5..9f45a51 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 aacca08..31b2650 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 0475975..6bc90f1 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 a5512cc..3fe514e 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 24d0d50..ab0d15e 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 2a3c294..20d27be 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);



More information about the ghc-commits mailing list