From 136e0eeecfc5b1d6574d38977a1e52f106c442f7 Mon Sep 17 00:00:00 2001 From: simonmar Date: Mon, 20 Aug 2001 14:44:05 +0000 Subject: [PATCH] [project @ 2001-08-20 14:44:05 by simonmar] This StablePtr test is old, most of the features it uses are deprecated and have been replaced by newer mechanisms (eg. foreign export) which is tested elsewhere. --- ghc/tests/io/Makefile | 7 ----- ghc/tests/io/stable001/Main.hs | 26 ------------------- ghc/tests/io/stable001/Main.lhs | 50 ------------------------------------ ghc/tests/io/stable001/Makefile | 10 -------- ghc/tests/io/stable001/cbits.c | 20 --------------- ghc/tests/io/stable001/registers.h | 2 -- 6 files changed, 115 deletions(-) delete mode 100644 ghc/tests/io/Makefile delete mode 100644 ghc/tests/io/stable001/Main.hs delete mode 100644 ghc/tests/io/stable001/Main.lhs delete mode 100644 ghc/tests/io/stable001/Makefile delete mode 100644 ghc/tests/io/stable001/cbits.c delete mode 100644 ghc/tests/io/stable001/registers.h diff --git a/ghc/tests/io/Makefile b/ghc/tests/io/Makefile deleted file mode 100644 index cec20c1..0000000 --- a/ghc/tests/io/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -TOP = .. -include $(TOP)/mk/boilerplate.mk - -SUBDIRS = should_run - -include $(TOP)/mk/target.mk - diff --git a/ghc/tests/io/stable001/Main.hs b/ghc/tests/io/stable001/Main.hs deleted file mode 100644 index d0cb982..0000000 --- a/ghc/tests/io/stable001/Main.hs +++ /dev/null @@ -1,26 +0,0 @@ --- This is a rather exciting experiment in using the new call --- makeStablePtr# and performIO. It doesn't do much but it took an --- incredible effort to get it to do it. - -import Stable -import GlaExts -import CString - --- module Main(main) where - -main = makeStablePtr test >>= \ stablePtr -> - ((_casm_GC_ ``SaveAllStgRegs(); test1(%0); RestoreAllStgRegs();'' stablePtr) - :: PrimIO ()) - >>= \ _ -> - return () - -test :: IO Int -test = - let f x = sum [1..x] - f :: Int -> Int - in - _ccall_ printf - (packString "The stable pointer has just been used to print this number %d\n") (f 100) - >>= \ _ -> - return 5 - diff --git a/ghc/tests/io/stable001/Main.lhs b/ghc/tests/io/stable001/Main.lhs deleted file mode 100644 index 6950a54..0000000 --- a/ghc/tests/io/stable001/Main.lhs +++ /dev/null @@ -1,50 +0,0 @@ -\begin{code} -module Main(main) where - ---import PreludeGlaST ---old:import GHCio(stThen) ---old:import PreludeGlaMisc - -main = makeStablePtr test >>= \ stablePtr -> - ((_casm_GC_ ``SaveAllStgRegs(); test1(%0); RestoreAllStgRegs();'' stablePtr) - :: PrimIO ()) - >>= \ _ -> - return () - -test :: IO Int -test = - let f x = sum [1..x] - f :: Int -> Int - in - _ccall_ printf - "The stable pointer has just been used to print this number %d\n" (f 100) - >>= \ _ -> - return 5 -\end{code} - -This is a rather exciting experiment in using the new call -@makeStablePtr#@ and @performIO@. It doesn't do much but it took an -incredible effort to get it to do it. - -\begin{code}[C-code] -#define NULL_REG_MAP -#include "stgdefs.h" - -int -test1( stableIOPtr ) - StgStablePtr stableIOPtr; -{ - int i; - int result; - - printf("Using stable pointer %x\n", stableIOPtr); - - for( i = 0; i != 10; i = i + 1 ) { - printf( "Calling stable pointer for %dth time\n", i ); - performIO( stableIOPtr ); - printf( "Returned after stable pointer\n" ); - } - - return 1; -} -\end{code} diff --git a/ghc/tests/io/stable001/Makefile b/ghc/tests/io/stable001/Makefile deleted file mode 100644 index 4f04e7f..0000000 --- a/ghc/tests/io/stable001/Makefile +++ /dev/null @@ -1,10 +0,0 @@ -TOP = ../.. -include $(TOP)/mk/boilerplate.mk -SRC_HC_OPTS += -fglasgow-exts -include $(TOP)/mk/should_run.mk - -SRC_HC_OPTS += -dcore-lint - -.PRECIOUS: %.o %.bin -include $(TOP)/mk/target.mk - diff --git a/ghc/tests/io/stable001/cbits.c b/ghc/tests/io/stable001/cbits.c deleted file mode 100644 index dfa8753..0000000 --- a/ghc/tests/io/stable001/cbits.c +++ /dev/null @@ -1,20 +0,0 @@ -#define NULL_REG_MAP -#include "../../../includes/Stg.h" - -int -test1( stableIOPtr ) - StgStablePtr stableIOPtr; -{ - int i; - int result; - - printf("Using stable pointer %x\n", stableIOPtr); - - for( i = 0; i != 10; i = i + 1 ) { - printf( "Calling stable pointer for %dth time\n", i ); - performIO( stableIOPtr ); - printf( "Returned after stable pointer\n" ); - } - - return 1; -} diff --git a/ghc/tests/io/stable001/registers.h b/ghc/tests/io/stable001/registers.h deleted file mode 100644 index 84e92d7..0000000 --- a/ghc/tests/io/stable001/registers.h +++ /dev/null @@ -1,2 +0,0 @@ -#define UpdateStgRegs _SaveStgRegs() -#define ReloadStgRegs _RestoreStgRegs() -- 1.7.10.4