From 5bb05c2781a5b8b0803af9cbbfe1aee028eb593c Mon Sep 17 00:00:00 2001
From: sof <unknown>
Date: Thu, 31 Jul 1997 01:50:46 +0000
Subject: [PATCH] [project @ 1997-07-31 01:46:24 by sof] Moved to main compiler
 regression test directory

---
 ghc/compiler/tests/ccall/Makefile            |   32 -
 ghc/compiler/tests/ccall/cc001.hs            |   25 -
 ghc/compiler/tests/ccall/cc001.stderr        |  333 ------
 ghc/compiler/tests/ccall/cc002.hs            |   22 -
 ghc/compiler/tests/ccall/cc002.stderr        |    9 -
 ghc/compiler/tests/ccall/cc003.hs            |    9 -
 ghc/compiler/tests/ccall/cc003.stderr        |  115 --
 ghc/compiler/tests/ccall/cc004.hs            |   27 -
 ghc/compiler/tests/ccall/cc004.stderr        |    9 -
 ghc/compiler/tests/ccall/cc005.hs            |   25 -
 ghc/compiler/tests/ccall/cc005.stderr        | 1100 ------------------
 ghc/compiler/tests/ccall/cc006.hs            |   22 -
 ghc/compiler/tests/ccall/cc006.stderr        |  671 -----------
 ghc/compiler/tests/ccall/cc007.hs            |   27 -
 ghc/compiler/tests/ccall/cc007.stderr        |    9 -
 ghc/compiler/tests/simplCore/Makefile        |   16 -
 ghc/compiler/tests/simplCore/simpl001.hs     |   13 -
 ghc/compiler/tests/simplCore/simpl001.stderr |  111 --
 ghc/compiler/tests/simplCore/simpl002.hs     |   10 -
 ghc/compiler/tests/simplCore/simpl002.stderr |  138 ---
 ghc/compiler/tests/stranal/default.lhs       |   16 -
 ghc/compiler/tests/stranal/default.stderr    |  133 ---
 ghc/compiler/tests/stranal/fact.lhs          |    3 -
 ghc/compiler/tests/stranal/fact.stderr       |   35 -
 ghc/compiler/tests/stranal/fun.lhs           |    6 -
 ghc/compiler/tests/stranal/fun.stderr        |    0
 ghc/compiler/tests/stranal/goo.lhs           |   10 -
 ghc/compiler/tests/stranal/goo.stderr        |    0
 ghc/compiler/tests/stranal/ins.lhs           |   27 -
 ghc/compiler/tests/stranal/ins.stderr        |  191 ---
 ghc/compiler/tests/stranal/map.lhs           |   32 -
 ghc/compiler/tests/stranal/map.stderr        |    0
 ghc/compiler/tests/stranal/moo.lhs           |    6 -
 ghc/compiler/tests/stranal/moo.stderr        |    0
 ghc/compiler/tests/stranal/sim.lhs           |  103 --
 ghc/compiler/tests/stranal/sim.stderr        |  132 ---
 ghc/compiler/tests/stranal/syn.lhs           |   15 -
 ghc/compiler/tests/stranal/syn.stderr        |   90 --
 ghc/compiler/tests/stranal/test.lhs          |    6 -
 ghc/compiler/tests/stranal/test.stderr       |   53 -
 ghc/compiler/tests/stranal/tst.lhs           |    3 -
 ghc/compiler/tests/stranal/tst.stderr        |   19 -
 ghc/compiler/tests/stranal/unu.lhs           |   76 --
 ghc/compiler/tests/stranal/unu.stderr        |  153 ---
 44 files changed, 3832 deletions(-)
 delete mode 100644 ghc/compiler/tests/ccall/Makefile
 delete mode 100644 ghc/compiler/tests/ccall/cc001.hs
 delete mode 100644 ghc/compiler/tests/ccall/cc001.stderr
 delete mode 100644 ghc/compiler/tests/ccall/cc002.hs
 delete mode 100644 ghc/compiler/tests/ccall/cc002.stderr
 delete mode 100644 ghc/compiler/tests/ccall/cc003.hs
 delete mode 100644 ghc/compiler/tests/ccall/cc003.stderr
 delete mode 100644 ghc/compiler/tests/ccall/cc004.hs
 delete mode 100644 ghc/compiler/tests/ccall/cc004.stderr
 delete mode 100644 ghc/compiler/tests/ccall/cc005.hs
 delete mode 100644 ghc/compiler/tests/ccall/cc005.stderr
 delete mode 100644 ghc/compiler/tests/ccall/cc006.hs
 delete mode 100644 ghc/compiler/tests/ccall/cc006.stderr
 delete mode 100644 ghc/compiler/tests/ccall/cc007.hs
 delete mode 100644 ghc/compiler/tests/ccall/cc007.stderr
 delete mode 100644 ghc/compiler/tests/simplCore/Makefile
 delete mode 100644 ghc/compiler/tests/simplCore/simpl001.hs
 delete mode 100644 ghc/compiler/tests/simplCore/simpl001.stderr
 delete mode 100644 ghc/compiler/tests/simplCore/simpl002.hs
 delete mode 100644 ghc/compiler/tests/simplCore/simpl002.stderr
 delete mode 100644 ghc/compiler/tests/stranal/default.lhs
 delete mode 100644 ghc/compiler/tests/stranal/default.stderr
 delete mode 100644 ghc/compiler/tests/stranal/fact.lhs
 delete mode 100644 ghc/compiler/tests/stranal/fact.stderr
 delete mode 100644 ghc/compiler/tests/stranal/fun.lhs
 delete mode 100644 ghc/compiler/tests/stranal/fun.stderr
 delete mode 100644 ghc/compiler/tests/stranal/goo.lhs
 delete mode 100644 ghc/compiler/tests/stranal/goo.stderr
 delete mode 100644 ghc/compiler/tests/stranal/ins.lhs
 delete mode 100644 ghc/compiler/tests/stranal/ins.stderr
 delete mode 100644 ghc/compiler/tests/stranal/map.lhs
 delete mode 100644 ghc/compiler/tests/stranal/map.stderr
 delete mode 100644 ghc/compiler/tests/stranal/moo.lhs
 delete mode 100644 ghc/compiler/tests/stranal/moo.stderr
 delete mode 100644 ghc/compiler/tests/stranal/sim.lhs
 delete mode 100644 ghc/compiler/tests/stranal/sim.stderr
 delete mode 100644 ghc/compiler/tests/stranal/syn.lhs
 delete mode 100644 ghc/compiler/tests/stranal/syn.stderr
 delete mode 100644 ghc/compiler/tests/stranal/test.lhs
 delete mode 100644 ghc/compiler/tests/stranal/test.stderr
 delete mode 100644 ghc/compiler/tests/stranal/tst.lhs
 delete mode 100644 ghc/compiler/tests/stranal/tst.stderr
 delete mode 100644 ghc/compiler/tests/stranal/unu.lhs
 delete mode 100644 ghc/compiler/tests/stranal/unu.stderr

diff --git a/ghc/compiler/tests/ccall/Makefile b/ghc/compiler/tests/ccall/Makefile
deleted file mode 100644
index a02df9bee1f2..000000000000
--- a/ghc/compiler/tests/ccall/Makefile
+++ /dev/null
@@ -1,32 +0,0 @@
-TOP = ../../..
-include $(TOP)/mk/boilerplate.mk
-
-HS_SRCS = $(wildcard *.hs)
-
-SRC_RUNTEST_OPTS += -o1 $*.stdout -o2 $*.stderr -x 0
-HC_OPTS += -dcore-lint -fglasgow-exts
-
-cc002_RUNTEST_OPTS = -x 1
-cc004_RUNTEST_OPTS = -x 1
-cc007_RUNTEST_OPTS = -x 1
-
-# Note that these tests are still in a state of flux... don't believe errors
-# they report. In fact, these aren't really very good tests at all...
-
-cc001_HC_OPTS = -noC -ddump-tc -ddump-ds 
-cc002_HC_OPTS = -noC -ddump-tc -ddump-ds 
-cc003_HC_OPTS = -noC -ddump-tc -ddump-ds
-cc004_HC_OPTS = -noC -ddump-tc -ddump-ds 
-cc005_HC_OPTS = -fvia-C -ddump-stg -ddump-flatC
-cc006_HC_OPTS = -fvia-C -ddump-stg -ddump-flatC
-cc007_HC_OPTS = -fvia-C -ddump-stg -ddump-flatC
-
-
-%.o : %.hs
-
-%.o : %.hs
-	$(RUNTEST) $(HC) $(RUNTEST_OPTS) $(HC_OPTS) -c $< -o $@ -osuf $(subst .,,$(suffix $@)) 
-
-all :: $(HS_OBJS)
-
-include $(TOP)/mk/target.mk
diff --git a/ghc/compiler/tests/ccall/cc001.hs b/ghc/compiler/tests/ccall/cc001.hs
deleted file mode 100644
index 8aeca950fcd0..000000000000
--- a/ghc/compiler/tests/ccall/cc001.hs
+++ /dev/null
@@ -1,25 +0,0 @@
---!!! cc001 -- ccall with standard boxed arguments and results
-
-module Test where
-
-import GlaExts
-
--- simple functions
-
-a :: PrimIO Int
-a = _ccall_ a
-
-b :: Int -> PrimIO Int
-b x = _ccall_ b x
-
-c :: Int -> Char -> Float -> Double -> PrimIO Float
-c x1 x2 x3 x4 = _ccall_ c x1 x2 x3 x4
-
--- simple monadic code
-
-d =	a		`thenPrimIO` \ x ->
-	b x		`thenPrimIO` \ y ->
-	c y 'f' 1.0 2.0
-
-
-	
diff --git a/ghc/compiler/tests/ccall/cc001.stderr b/ghc/compiler/tests/ccall/cc001.stderr
deleted file mode 100644
index 952647f47a43..000000000000
--- a/ghc/compiler/tests/ccall/cc001.stderr
+++ /dev/null
@@ -1,333 +0,0 @@
-
-
-================================================================================
-Typechecked:
-{- nonrec -}
-{- nonrec -}
-{- nonrec -}
-d.Fractional_a16j =
-    PrelNum.$d23{-rtW,p-}
-fromRational_a16o =
-    PrelNum.fromRational{-8T,p-}
-	PrelBase.Float{-3c,p-}
-	d.Fractional_a16j
-lit_a16r =
-    fromRational_a16o
-	1.0000000000000000
-d.Fractional_a16n =
-    PrelNum.$d14{-rtM,p-}
-fromRational_a16q =
-    PrelNum.fromRational{-8T,p-}
-	PrelBase.Double{-3a,p-}
-	d.Fractional_a16n
-lit_a16p =
-    fromRational_a16q
-	2.0000000000000000
-{- nonrec -}
-AbsBinds [] [] [([], c{-r5,x-}, c_a15h)]
-    c_a15h
-	x1_r4l x2_r4n x3_r4p x4_r4r
-		=   STBase.ST{-5G,p-}{i}
-			[GHC.RealWorld{-3s,p-}, PrelBase.Float{-3c,p-}]
-			_ccall_ c
-			    x1_r4l x2_r4n x3_r4p x4_r4r
-{- nonrec -}
-{- nonrec -}
-AbsBinds [] [] [([], b{-r3,x-}, b_a15F)]
-    b_a15F
-	x_r4j   =   STBase.ST{-5G,p-}{i}
-			[GHC.RealWorld{-3s,p-}, PrelBase.Int{-3g,p-}]
-			_ccall_ b
-			    x_r4j
-{- nonrec -}
-{- nonrec -}
-AbsBinds [] [] [([], a{-r1,x-}, a_a15R)]
-    a_a15R
-	=   STBase.ST{-5G,p-}{i}
-		[GHC.RealWorld{-3s,p-}, PrelBase.Int{-3g,p-}]
-		_ccall_ a
-{- nonrec -}
-{- nonrec -}
-AbsBinds [] [] [([], d{-r7,x-}, d_a15Y)]
-    d_a15Y
-	=   STBase.thenPrimIO{-r4w,p-}
-		[PrelBase.Int{-3g,p-}, PrelBase.Float{-3c,p-}]
-		a{-r1,x-}
-		(\ x_r4t   ->  STBase.thenPrimIO{-r4w,p-}
-				   [PrelBase.Int{-3g,p-}, PrelBase.Float{-3c,p-}]
-				   (b{-r3,x-}
-					x_r4t)
-				   (\ y_r4v   ->  c{-r5,x-}
-						      y_r4v 'f' lit_a16r lit_a16p))
-{- nonrec -}
-
-
-================================================================================
-Desugared:
-Rec {
-d.Fractional_a16j  :: 
-    {PrelNum.Fractional{-26,p-} PrelBase.Float{-3c,p-}}
-{-# L #-}
-d.Fractional_a16j =
-    PrelNum.$d23{-rtW,p-}
-fromRational_a16o  :: 
-    PrelNum.Rational{-3r,p-} -> PrelBase.Float{-3c,p-}
-{-# L #-}
-fromRational_a16o =
-    PrelNum.fromRational{-8T,p-}
-	_@_ PrelBase.Float{-3c,p-} d.Fractional_a16j
-lit_a16r  :: 
-    PrelBase.Float{-3c,p-}
-{-# L #-}
-lit_a16r =
-    fromRational_a16o
-	_rational_  1 1
-d.Fractional_a16n  :: 
-    {PrelNum.Fractional{-26,p-} PrelBase.Double{-3a,p-}}
-{-# L #-}
-d.Fractional_a16n =
-    PrelNum.$d14{-rtM,p-}
-fromRational_a16q  :: 
-    PrelNum.Rational{-3r,p-} -> PrelBase.Double{-3a,p-}
-{-# L #-}
-fromRational_a16q =
-    PrelNum.fromRational{-8T,p-}
-	_@_ PrelBase.Double{-3a,p-} d.Fractional_a16n
-lit_a16p  :: 
-    PrelBase.Double{-3a,p-}
-{-# L #-}
-lit_a16p =
-    fromRational_a16q
-	_rational_  2 1
-c_a15h  :: 
-    PrelBase.Int{-3g,p-}
-    -> PrelBase.Char{-38,p-}
-    -> PrelBase.Float{-3c,p-}
-    -> PrelBase.Double{-3a,p-}
-    -> STBase.PrimIO{-3P,p-} PrelBase.Float{-3c,p-}
-{-# L #-}
-c_a15h =
-    \ x1_r4l  :: 
-	  PrelBase.Int{-3g,p-}
-      {-# L #-}
-      x1_r4l x2_r4n  :: 
-		 PrelBase.Char{-38,p-}
-	     {-# L #-}
-	     x2_r4n x3_r4p  :: 
-			PrelBase.Float{-3c,p-}
-		    {-# L #-}
-		    x3_r4p x4_r4r  :: 
-			       PrelBase.Double{-3a,p-}
-			   {-# L #-}
-			   x4_r4r ->
-	let {
-	  ds_d1et  :: 
-	      STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	      -> (PrelBase.Float{-3c,p-}, STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-	  {-# L #-}
-	  ds_d1et =
-	      \ ds_d1ez  :: 
-		    STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		{-# L #-}
-		ds_d1ez ->
-		  case ds_d1ez of { STBase.S#{-5D,p-}{i} ds_d1eI  ->
-		  case x1_r4l of { PrelBase.I#{-5b,p-}{i} ds_d1eR  ->
-		  case x2_r4n of { PrelBase.C#{-54,p-}{i} ds_d1f0  ->
-		  case x3_r4p of { PrelBase.F#{-59,p-}{i} ds_d1f9  ->
-		  case x4_r4r of { PrelBase.D#{-56,p-}{i} ds_d1fw  ->
-		  case
-		      _ccall_ c [(STBase.StateAndFloat#{-3C,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.Int#{-3f,p-} GHC.Char#{-37,p-} GHC.Float#{-3b,p-} GHC.Double#{-39,p-}]!
-			  ds_d1eI ds_d1eR ds_d1f0 ds_d1f9 ds_d1fw
-		  of {
-		  STBase.StateAndFloat#{-5u,p-}{i} ds_d1fZ ds_d1fX  ->
-		  let {
-		    ds_d1fO  :: 
-			PrelBase.Float{-3c,p-}
-		    {-# L #-}
-		    ds_d1fO =
-			PrelBase.F#{-59,p-}{i}
-			    {ds_d1fX} } in
-		  let {
-		    ds_d1fS  :: 
-			STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		    {-# L #-}
-		    ds_d1fS =
-			STBase.S#{-5D,p-}{i}
-			    {_@_ GHC.RealWorld{-3s,p-} ds_d1fZ}
-		  } in 
-		    PrelTup.(,){-62,p-}{i}
-			{_@_ PrelBase.Float{-3c,p-}
-			 _@_ (STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-			 ds_d1fO
-			 ds_d1fS};};};};};};}
-	} in 
-	  STBase.ST{-5G,p-}{i}
-	      _@_ GHC.RealWorld{-3s,p-} _@_ PrelBase.Float{-3c,p-} ds_d1et
-c{-r5,x-}  :: 
-    PrelBase.Int{-3g,p-}
-    -> PrelBase.Char{-38,p-}
-    -> PrelBase.Float{-3c,p-}
-    -> PrelBase.Double{-3a,p-}
-    -> STBase.PrimIO{-3P,p-} PrelBase.Float{-3c,p-}
-{-# L #-}
-c{-r5,x-} =
-    c_a15h
-b_a15F  :: 
-    PrelBase.Int{-3g,p-} -> STBase.PrimIO{-3P,p-} PrelBase.Int{-3g,p-}
-{-# L #-}
-b_a15F =
-    \ x_r4j  :: 
-	  PrelBase.Int{-3g,p-}
-      {-# L #-}
-      x_r4j ->
-	let {
-	  ds_d1gj  :: 
-	      STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	      -> (PrelBase.Int{-3g,p-}, STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-	  {-# L #-}
-	  ds_d1gj =
-	      \ ds_d1gp  :: 
-		    STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		{-# L #-}
-		ds_d1gp ->
-		  case ds_d1gp of { STBase.S#{-5D,p-}{i} ds_d1gy  ->
-		  case x_r4j of { PrelBase.I#{-5b,p-}{i} ds_d1gM  ->
-		  case
-		      _ccall_ b [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.Int#{-3f,p-}]!
-			  ds_d1gy ds_d1gM
-		  of {
-		  STBase.StateAndInt#{-5v,p-}{i} ds_d1hf ds_d1hd  ->
-		  let {
-		    ds_d1h4  :: 
-			PrelBase.Int{-3g,p-}
-		    {-# L #-}
-		    ds_d1h4 =
-			PrelBase.I#{-5b,p-}{i}
-			    {ds_d1hd} } in
-		  let {
-		    ds_d1h8  :: 
-			STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		    {-# L #-}
-		    ds_d1h8 =
-			STBase.S#{-5D,p-}{i}
-			    {_@_ GHC.RealWorld{-3s,p-} ds_d1hf}
-		  } in 
-		    PrelTup.(,){-62,p-}{i}
-			{_@_ PrelBase.Int{-3g,p-}
-			 _@_ (STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-			 ds_d1h4
-			 ds_d1h8};};};}
-	} in 
-	  STBase.ST{-5G,p-}{i}
-	      _@_ GHC.RealWorld{-3s,p-} _@_ PrelBase.Int{-3g,p-} ds_d1gj
-b{-r3,x-}  :: 
-    PrelBase.Int{-3g,p-} -> STBase.PrimIO{-3P,p-} PrelBase.Int{-3g,p-}
-{-# L #-}
-b{-r3,x-} =
-    b_a15F
-a_a15R  :: 
-    STBase.PrimIO{-3P,p-} PrelBase.Int{-3g,p-}
-{-# L #-}
-a_a15R =
-    let {
-      ds_d1hy  :: 
-	  STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	  -> (PrelBase.Int{-3g,p-}, STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-      {-# L #-}
-      ds_d1hy =
-	  \ ds_d1hE  :: 
-		STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	    {-# L #-}
-	    ds_d1hE ->
-	      case ds_d1hE of { STBase.S#{-5D,p-}{i} ds_d1hP  ->
-	      case
-		  _ccall_ a [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]!
-		      ds_d1hP
-	      of {
-	      STBase.StateAndInt#{-5v,p-}{i} ds_d1ii ds_d1ig  ->
-	      let {
-		ds_d1i7  :: 
-		    PrelBase.Int{-3g,p-}
-		{-# L #-}
-		ds_d1i7 =
-		    PrelBase.I#{-5b,p-}{i}
-			{ds_d1ig} } in
-	      let {
-		ds_d1ib  :: 
-		    STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		{-# L #-}
-		ds_d1ib =
-		    STBase.S#{-5D,p-}{i}
-			{_@_ GHC.RealWorld{-3s,p-} ds_d1ii}
-	      } in 
-		PrelTup.(,){-62,p-}{i}
-		    {_@_ PrelBase.Int{-3g,p-}
-		     _@_ (STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-		     ds_d1i7
-		     ds_d1ib};};}
-    } in 
-      STBase.ST{-5G,p-}{i}
-	  _@_ GHC.RealWorld{-3s,p-} _@_ PrelBase.Int{-3g,p-} ds_d1hy
-a{-r1,x-}  :: 
-    STBase.PrimIO{-3P,p-} PrelBase.Int{-3g,p-}
-{-# L #-}
-a{-r1,x-} =
-    a_a15R
-d_a15Y  :: 
-    STBase.PrimIO{-3P,p-} PrelBase.Float{-3c,p-}
-{-# L #-}
-d_a15Y =
-    let {
-      ds_d1iE  :: 
-	  PrelBase.Int{-3g,p-}
-	  -> STBase.PrimIO{-3P,p-} PrelBase.Float{-3c,p-}
-      {-# L #-}
-      ds_d1iE =
-	  \ x_r4t  :: 
-		PrelBase.Int{-3g,p-}
-	    {-# L #-}
-	    x_r4t ->
-	      let {
-		ds_d1iT  :: 
-		    STBase.PrimIO{-3P,p-} PrelBase.Int{-3g,p-}
-		{-# L #-}
-		ds_d1iT =
-		    b{-r3,x-}
-			x_r4t } in
-	      let {
-		ds_d1iX  :: 
-		    PrelBase.Int{-3g,p-}
-		    -> STBase.PrimIO{-3P,p-} PrelBase.Float{-3c,p-}
-		{-# L #-}
-		ds_d1iX =
-		    \ y_r4v  :: 
-			  PrelBase.Int{-3g,p-}
-		      {-# L #-}
-		      y_r4v ->
-			let {
-			  ds_d1jf  :: 
-			      PrelBase.Char{-38,p-}
-			  {-# L #-}
-			  ds_d1jf =
-			      PrelBase.C#{-54,p-}{i}
-				  {'f'}
-			} in 
-			  c{-r5,x-}
-			      y_r4v ds_d1jf lit_a16r lit_a16p
-	      } in 
-		STBase.thenPrimIO{-r4w,p-}
-		    _@_ PrelBase.Int{-3g,p-} _@_ PrelBase.Float{-3c,p-} ds_d1iT ds_d1iX
-    } in 
-      STBase.thenPrimIO{-r4w,p-}
-	  _@_ PrelBase.Int{-3g,p-}
-	  _@_ PrelBase.Float{-3c,p-}
-	  a{-r1,x-}
-	  ds_d1iE
-d{-r7,x-}  :: 
-    STBase.PrimIO{-3P,p-} PrelBase.Float{-3c,p-}
-{-# L #-}
-d{-r7,x-} =
-    d_a15Y
-end Rec }
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
diff --git a/ghc/compiler/tests/ccall/cc002.hs b/ghc/compiler/tests/ccall/cc002.hs
deleted file mode 100644
index c970d8854b8b..000000000000
--- a/ghc/compiler/tests/ccall/cc002.hs
+++ /dev/null
@@ -1,22 +0,0 @@
---!!! cc002 -- ccall with non-standard boxed arguments and results
-
-module Test where
-
-import GlaExts
-import Foreign
-
--- Test returning results
-
-a :: PrimIO ForeignObj
-a = _ccall_ a
-
-b :: PrimIO (StablePtr Double)
-b = _ccall_ b
-
--- Test taking arguments
-
-c :: ForeignObj -> PrimIO Int
-c x = _ccall_ c x
-
-d :: StablePtr Int -> PrimIO Int
-d x = _ccall_ d x
diff --git a/ghc/compiler/tests/ccall/cc002.stderr b/ghc/compiler/tests/ccall/cc002.stderr
deleted file mode 100644
index 4d70998fca38..000000000000
--- a/ghc/compiler/tests/ccall/cc002.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
- 
-cc002.hs:11: No instance for:
-		 `Foreign.CReturnable Foreign.ForeignObj'
-    cc002.hs:11:
-	in the result of the _ccall_ to a
-    When checking signature(s) for: `a'
-
-
-Compilation had errors
diff --git a/ghc/compiler/tests/ccall/cc003.hs b/ghc/compiler/tests/ccall/cc003.hs
deleted file mode 100644
index b8c8d3501ab7..000000000000
--- a/ghc/compiler/tests/ccall/cc003.hs
+++ /dev/null
@@ -1,9 +0,0 @@
---!!! cc003 -- ccall with unresolved polymorphism (should fail)
---!!! not anymore (as of 0.29, result type will default to ())
-module Test where
-
-import GlaExts
-
-fubar :: PrimIO Int
-fubar = _ccall_ f `seqPrimIO` _ccall_ b
-		     --^ result type of f "lost" (never gets generalised)
diff --git a/ghc/compiler/tests/ccall/cc003.stderr b/ghc/compiler/tests/ccall/cc003.stderr
deleted file mode 100644
index 1f8dfdc06083..000000000000
--- a/ghc/compiler/tests/ccall/cc003.stderr
+++ /dev/null
@@ -1,115 +0,0 @@
-
-
-================================================================================
-Typechecked:
-{- nonrec -}
-{- nonrec -}
-AbsBinds [] [] [([], fubar{-r1,x-}, fubar_aZa)]
-    fubar_aZa
-	=   STBase.seqPrimIO{-r46,p-}
-		[PrelBase.(){-40,p-}, PrelBase.Int{-3g,p-}]
-		(STBase.ST{-5G,p-}{i}
-		     [GHC.RealWorld{-3s,p-}, PrelBase.(){-40,p-}]
-		     _ccall_ f)
-		(STBase.ST{-5G,p-}{i}
-		     [GHC.RealWorld{-3s,p-}, PrelBase.Int{-3g,p-}]
-		     _ccall_ b)
-{- nonrec -}
-
-
-================================================================================
-Desugared:
-fubar_aZa  :: 
-    STBase.PrimIO{-3P,p-} PrelBase.Int{-3g,p-}
-{-# L #-}
-fubar_aZa =
-    let { ds_d110  :: 
-	      STBase.ST{-3O,p-} GHC.RealWorld{-3s,p-} PrelBase.(){-40,p-}
-	  {-# L #-}
-	  ds_d110 =
-      let {
-	ds_d11g  :: 
-	    STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	    -> (PrelBase.(){-40,p-}, STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-	{-# L #-}
-	ds_d11g =
-	    \ ds_d11m  :: 
-		  STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	      {-# L #-}
-	      ds_d11m ->
-		case ds_d11m of { STBase.S#{-5D,p-}{i} ds_d11x  ->
-		case
-		    _ccall_ f [(STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]!
-			ds_d11x
-		of {
-		STBase.S#{-5D,p-}{i} ds_d11X  ->
-		let {
-		  ds_d11Q  :: 
-		      STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		  {-# L #-}
-		  ds_d11Q =
-		      STBase.S#{-5D,p-}{i}
-			  {_@_ GHC.RealWorld{-3s,p-} ds_d11X}
-		} in 
-		  PrelTup.(,){-62,p-}{i}
-		      {_@_ PrelBase.(){-40,p-}
-		       _@_ (STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-		       PrelBase.(){-60,p-}{i}
-		       ds_d11Q};};}
-      } in 
-	STBase.ST{-5G,p-}{i}
-	    _@_ GHC.RealWorld{-3s,p-} _@_ PrelBase.(){-40,p-} ds_d11g
-    } in
-    let { ds_d114  :: 
-	      STBase.ST{-3O,p-} GHC.RealWorld{-3s,p-} PrelBase.Int{-3g,p-}
-	  {-# L #-}
-	  ds_d114 =
-      let {
-	ds_d12a  :: 
-	    STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	    -> (PrelBase.Int{-3g,p-}, STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-	{-# L #-}
-	ds_d12a =
-	    \ ds_d12g  :: 
-		  STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-	      {-# L #-}
-	      ds_d12g ->
-		case ds_d12g of { STBase.S#{-5D,p-}{i} ds_d12r  ->
-		case
-		    _ccall_ b [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]!
-			ds_d12r
-		of {
-		STBase.StateAndInt#{-5v,p-}{i} ds_d12U ds_d12S  ->
-		let {
-		  ds_d12J  :: 
-		      PrelBase.Int{-3g,p-}
-		  {-# L #-}
-		  ds_d12J =
-		      PrelBase.I#{-5b,p-}{i}
-			  {ds_d12S} } in
-		let {
-		  ds_d12N  :: 
-		      STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		  {-# L #-}
-		  ds_d12N =
-		      STBase.S#{-5D,p-}{i}
-			  {_@_ GHC.RealWorld{-3s,p-} ds_d12U}
-		} in 
-		  PrelTup.(,){-62,p-}{i}
-		      {_@_ PrelBase.Int{-3g,p-}
-		       _@_ (STBase.State{-3M,p-} GHC.RealWorld{-3s,p-})
-		       ds_d12J
-		       ds_d12N};};}
-      } in 
-	STBase.ST{-5G,p-}{i}
-	    _@_ GHC.RealWorld{-3s,p-} _@_ PrelBase.Int{-3g,p-} ds_d12a
-    } in
-    STBase.seqPrimIO{-r46,p-}
-	_@_ PrelBase.(){-40,p-} _@_ PrelBase.Int{-3g,p-} ds_d110 ds_d114
-fubar{-r1,x-}  :: 
-    STBase.PrimIO{-3P,p-} PrelBase.Int{-3g,p-}
-{-# L #-}
-fubar{-r1,x-} =
-    fubar_aZa
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
diff --git a/ghc/compiler/tests/ccall/cc004.hs b/ghc/compiler/tests/ccall/cc004.hs
deleted file mode 100644
index f53c61d500ff..000000000000
--- a/ghc/compiler/tests/ccall/cc004.hs
+++ /dev/null
@@ -1,27 +0,0 @@
---!!! cc004 -- ccall with synonyms, polymorphic type variables and user type variables.
-module Test where
-
-import GlaExts
-
--- Since I messed up the handling of polymorphism originally, I'll
--- explicitly test code with UserSysTyVar (ie an explicit polymorphic
--- signature)
-
-foo = _ccall_ f	`thenADR` \ a -> returnPrimIO (a + 1)
- where 
-   thenADR :: PrimIO a -> (a -> PrimIO b) -> PrimIO b
-   thenADR = thenPrimIO
-
--- and with a PolySysTyVar (ie no explicit signature)
-
-bar = _ccall_ f	`thenADR` \ a -> returnPrimIO (a + 1)
- where 
-   -- thenADR :: PrimIO a -> (a -> PrimIO b) -> PrimIO b
-   thenADR = thenPrimIO
-
--- and with a type synonym
-
-type INT = Int
-barfu :: PrimIO INT
-barfu = _ccall_ b
-
diff --git a/ghc/compiler/tests/ccall/cc004.stderr b/ghc/compiler/tests/ccall/cc004.stderr
deleted file mode 100644
index b8cd850f30bd..000000000000
--- a/ghc/compiler/tests/ccall/cc004.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
- 
-cc004.hs:2: Cannot generalise these overloadings (in a _ccall_):
-		`Foreign.CReturnable t{-a12p-}'
- 
-cc004.hs:2: Cannot generalise these overloadings (in a _ccall_):
-		`Foreign.CReturnable t{-a138-}'
-
-
-Compilation had errors
diff --git a/ghc/compiler/tests/ccall/cc005.hs b/ghc/compiler/tests/ccall/cc005.hs
deleted file mode 100644
index 8aeca950fcd0..000000000000
--- a/ghc/compiler/tests/ccall/cc005.hs
+++ /dev/null
@@ -1,25 +0,0 @@
---!!! cc001 -- ccall with standard boxed arguments and results
-
-module Test where
-
-import GlaExts
-
--- simple functions
-
-a :: PrimIO Int
-a = _ccall_ a
-
-b :: Int -> PrimIO Int
-b x = _ccall_ b x
-
-c :: Int -> Char -> Float -> Double -> PrimIO Float
-c x1 x2 x3 x4 = _ccall_ c x1 x2 x3 x4
-
--- simple monadic code
-
-d =	a		`thenPrimIO` \ x ->
-	b x		`thenPrimIO` \ y ->
-	c y 'f' 1.0 2.0
-
-
-	
diff --git a/ghc/compiler/tests/ccall/cc005.stderr b/ghc/compiler/tests/ccall/cc005.stderr
deleted file mode 100644
index ed9f6bbb536f..000000000000
--- a/ghc/compiler/tests/ccall/cc005.stderr
+++ /dev/null
@@ -1,1100 +0,0 @@
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
-
-
-================================================================================
-STG syntax:
-nrlit_s25b =
-     PrelNum.:%{-5l,p-}{i}! [PrelNum.integer_2{-8e,p-} PrelNum.integer_1{-8d,p-}];
-lit_a19u =
-    (False, True, False, False, True) [] \u []
-	case
-	    PrelNum.$d14{-rtM,p-} ::{PrelNum.Fractional{-26,p-} PrelBase.Double{-3a,p-}}
-	of {
-	    -- lvs: []; rhs lvs: []; uniq: c2b9
-	  PrelTup.(,,,){-64,p-}{i} tpl_s1V1 tpl_s1V2 tpl_s1V3 tpl_s1V0 ->
-	      tpl_s1V0
-		  nrlit_s25b;
-	};
-nrlit_s25c =
-     PrelNum.:%{-5l,p-}{i}! [PrelNum.integer_1{-8d,p-} PrelNum.integer_1{-8d,p-}];
-lit_a19w =
-    (False, True, False, False, True) [] \u []
-	case
-	    PrelNum.$d23{-rtW,p-} ::{PrelNum.Fractional{-26,p-} PrelBase.Float{-3c,p-}}
-	of {
-	    -- lvs: []; rhs lvs: []; uniq: c2ba
-	  PrelTup.(,,,){-64,p-}{i} tpl_s1Vt tpl_s1Vu tpl_s1Vv tpl_s1Vs ->
-	      tpl_s1Vs
-		  nrlit_s25c;
-	};
-s_s1MF =
-     [] \r [ds_s1VJ]
-	case ds_s1VJ ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-} of {
-	    -- lvs: [ds_s1VJ]; rhs lvs: []; uniq: c2bb
-	  STBase.S#{-5D,p-}{i} ds_s1Wa ->
-	      case
-		  _ccall_ a [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]# [ds_s1Wa] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-	      of {
-		  -- lvs: [ds_s1Wa]; rhs lvs: []; uniq: c2bc
-		STBase.StateAndInt#{-5v,p-}{i} ds_s1Wk ds_s1W9 ->
-		    let {
-		      ds_s1WA =
-			   PrelBase.I#{-5b,p-}{i}! [ds_s1W9]; } in
-		    let {
-		      ds_s1Wz =
-			   STBase.S#{-5D,p-}{i}! [ds_s1Wk];
-		    } in 
-		      PrelTup.(,){-62,p-}{i}! [ds_s1WA ds_s1Wz];
-	      };
-	};
-s_s1Xu =
-     [] \r [ds_s1WI]
-	case ds_s1WI ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-} of {
-	    -- lvs: [ds_s1WI]; rhs lvs: []; uniq: c2bd
-	  STBase.S#{-5D,p-}{i} ds_s1X9 ->
-	      case
-		  _ccall_ a [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]# [ds_s1X9] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-	      of {
-		  -- lvs: [ds_s1X9]; rhs lvs: []; uniq: c2be
-		STBase.StateAndInt#{-5v,p-}{i} ds_s1Xj ds_s1X8 ->
-		    let {
-		      ds_s1XP =
-			   PrelBase.I#{-5b,p-}{i}! [ds_s1X8]; } in
-		    let {
-		      ds_s1XO =
-			   STBase.S#{-5D,p-}{i}! [ds_s1Xj];
-		    } in 
-		      PrelTup.(,){-62,p-}{i}! [ds_s1XP ds_s1XO];
-	      };
-	};
-a{-r1,x-} =
-     [] \u []
-	s_s1Xu;
-b{-r3,x-} =
-     [] \r [x_s1XY]
-	let {
-	  stg_c2ac =
-	      (False, True, False, False, True) [x_s1XY] \r [ds_s1XN]
-		  case
-		      ds_s1XN{-lvs:x_s1XY-} ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		  of {
-		      -- lvs: [ds_s1XN x_s1XY]; rhs lvs: [x_s1XY]; uniq: c2bf
-		    STBase.S#{-5D,p-}{i} ds_s1XZ ->
-			case x_s1XY{-lvs:ds_s1XZ-} ::PrelBase.Int{-3g,p-} of {
-			    -- lvs: [x_s1XY ds_s1XZ]; rhs lvs: [ds_s1XZ]; uniq: c2bg
-			  PrelBase.I#{-5b,p-}{i} ds_s1Yp ->
-			      case
-				  _ccall_ b [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.Int#{-3f,p-}]# [ds_s1XZ ds_s1Yp] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-			      of {
-				  -- lvs: [ds_s1XZ ds_s1Yp]; rhs lvs: []; uniq: c2bh
-				STBase.StateAndInt#{-5v,p-}{i} ds_s1YA ds_s1Yq ->
-				    let {
-				      ds_s1Za =
-					   PrelBase.I#{-5b,p-}{i}! [ds_s1Yq]; } in
-				    let {
-				      ds_s1Z9 =
-					   STBase.S#{-5D,p-}{i}! [ds_s1YA];
-				    } in 
-				      PrelTup.(,){-62,p-}{i}! [ds_s1Za ds_s1Z9];
-			      };
-			};
-		  };
-	} in 
-	  stg_c2ac;
-c{-r5,x-} =
-     [] \r [x1_s1Zj x2_s1Zt x3_s1ZD x4_s1ZN]
-	let {
-	  stg_c29C =
-	      (False, True, False, False, True) [x1_s1Zj x2_s1Zt x3_s1ZD x4_s1ZN] \r [ds_s1Z8]
-		  case
-		      ds_s1Z8{-lvs:x1_s1Zj, x2_s1Zt, x3_s1ZD, x4_s1ZN-} ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		  of {
-		      -- lvs: [ds_s1Z8 x1_s1Zj x2_s1Zt x3_s1ZD x4_s1ZN]; rhs lvs: [x1_s1Zj x2_s1Zt x3_s1ZD x4_s1ZN]; uniq: c2bi
-		    STBase.S#{-5D,p-}{i} ds_s1Zk ->
-			case
-			    x1_s1Zj{-lvs:ds_s1Zk, x2_s1Zt, x3_s1ZD, x4_s1ZN-} ::PrelBase.Int{-3g,p-}
-			of {
-			    -- lvs: [x1_s1Zj ds_s1Zk x2_s1Zt x3_s1ZD x4_s1ZN]; rhs lvs: [ds_s1Zk x2_s1Zt x3_s1ZD x4_s1ZN]; uniq: c2bj
-			  PrelBase.I#{-5b,p-}{i} ds_s1Zu ->
-			      case
-				  x2_s1Zt{-lvs:ds_s1Zk, ds_s1Zu, x3_s1ZD, x4_s1ZN-} ::PrelBase.Char{-38,p-}
-			      of {
-				  -- lvs: [ds_s1Zk x2_s1Zt ds_s1Zu x3_s1ZD x4_s1ZN]; rhs lvs: [ds_s1Zk ds_s1Zu x3_s1ZD x4_s1ZN]; uniq: c2bk
-				PrelBase.C#{-54,p-}{i} ds_s1ZE ->
-				    case
-					x3_s1ZD{-lvs:ds_s1Zk, ds_s1Zu, ds_s1ZE, x4_s1ZN-} ::PrelBase.Float{-3c,p-}
-				    of {
-					-- lvs: [ds_s1Zk ds_s1Zu x3_s1ZD ds_s1ZE x4_s1ZN]; rhs lvs: [ds_s1Zk ds_s1Zu ds_s1ZE x4_s1ZN]; uniq: c2bl
-				      PrelBase.F#{-59,p-}{i} ds_s1ZO ->
-					  case
-					      x4_s1ZN{-lvs:ds_s1Zk, ds_s1Zu, ds_s1ZE, ds_s1ZO-} ::PrelBase.Double{-3a,p-}
-					  of {
-					      -- lvs: [ds_s1Zk ds_s1Zu ds_s1ZE x4_s1ZN ds_s1ZO]; rhs lvs: [ds_s1Zk ds_s1Zu ds_s1ZE ds_s1ZO]; uniq: c2bm
-					    PrelBase.D#{-56,p-}{i} ds_s20e ->
-						case
-						    _ccall_ c [(STBase.StateAndFloat#{-3C,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.Int#{-3f,p-} GHC.Char#{-37,p-} GHC.Float#{-3b,p-} GHC.Double#{-39,p-}]# [ds_s1Zk ds_s1Zu ds_s1ZE ds_s1ZO ds_s20e] ::STBase.StateAndFloat#{-3C,p-} GHC.RealWorld{-3s,p-}
-						of {
-						    -- lvs: [ds_s1Zk ds_s1Zu ds_s1ZE ds_s1ZO ds_s20e]; rhs lvs: []; uniq: c2bn
-						  STBase.StateAndFloat#{-5u,p-}{i} ds_s20p ds_s20f ->
-						      let {
-							ds_s217 =
-							     PrelBase.F#{-59,p-}{i}! [ds_s20f]; } in
-						      let {
-							ds_s216 =
-							     STBase.S#{-5D,p-}{i}! [ds_s20p];
-						      } in 
-							PrelTup.(,){-62,p-}{i}! [ds_s217 ds_s216];
-						};
-					  };
-				    };
-			      };
-			};
-		  };
-	} in 
-	  stg_c29C;
-d{-r7,x-} =
-     [] \u []
-	let {
-	  ds_s258 =
-	       [] \r [x_s21g]
-		  let { s_s22a =  [x_s21g] \r [ds_s215]
-			  case
-			      ds_s215{-lvs:x_s21g-} ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-			  of {
-			      -- lvs: [ds_s215 x_s21g]; rhs lvs: [x_s21g]; uniq: c2bo
-			    STBase.S#{-5D,p-}{i} ds_s21h ->
-				case x_s21g{-lvs:ds_s21h-} ::PrelBase.Int{-3g,p-} of {
-				    -- lvs: [x_s21g ds_s21h]; rhs lvs: [ds_s21h]; uniq: c2bp
-				  PrelBase.I#{-5b,p-}{i} ds_s21H ->
-				      case
-					  _ccall_ b [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.Int#{-3f,p-}]# [ds_s21h ds_s21H] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-				      of {
-					  -- lvs: [ds_s21h ds_s21H]; rhs lvs: []; uniq: c2bq
-					STBase.StateAndInt#{-5v,p-}{i} ds_s21S ds_s21I ->
-					    let {
-					      ds_s22c =
-						   PrelBase.I#{-5b,p-}{i}! [ds_s21I]; } in
-					    let {
-					      ds_s22b =
-						   STBase.S#{-5D,p-}{i}! [ds_s21S];
-					    } in 
-					      PrelTup.(,){-62,p-}{i}! [ds_s22c ds_s22b];
-				      };
-				};
-			  } } in
-		  let { s_s23h =  [x_s21g] \r [ds_s22k]
-			  case
-			      ds_s22k{-lvs:x_s21g-} ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-			  of {
-			      -- lvs: [x_s21g ds_s22k]; rhs lvs: [x_s21g]; uniq: c2br
-			    STBase.S#{-5D,p-}{i} ds_s22t ->
-				case x_s21g{-lvs:ds_s22t-} ::PrelBase.Int{-3g,p-} of {
-				    -- lvs: [x_s21g ds_s22t]; rhs lvs: [ds_s22t]; uniq: c2bs
-				  PrelBase.I#{-5b,p-}{i} ds_s22T ->
-				      case
-					  _ccall_ b [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.Int#{-3f,p-}]# [ds_s22t ds_s22T] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-				      of {
-					  -- lvs: [ds_s22t ds_s22T]; rhs lvs: []; uniq: c2bt
-					STBase.StateAndInt#{-5v,p-}{i} ds_s234 ds_s22U ->
-					    let {
-					      ds_s23A =
-						   PrelBase.I#{-5b,p-}{i}! [ds_s22U]; } in
-					    let {
-					      ds_s23z =
-						   STBase.S#{-5D,p-}{i}! [ds_s234];
-					    } in 
-					      PrelTup.(,){-62,p-}{i}! [ds_s23A ds_s23z];
-				      };
-				};
-			  } } in
-		  let {
-		    ds_s24V =
-			 [] \r [y_s23K]
-			    let {
-			      stg_c28E =
-				  (False, True, False, False, True) [y_s23K] \r [ds_s23y]
-				      case
-					  ds_s23y{-lvs:y_s23K-} ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-				      of {
-					  -- lvs: [ds_s23y y_s23K]; rhs lvs: [y_s23K]; uniq: c2bu
-					STBase.S#{-5D,p-}{i} ds_s23L ->
-					    case y_s23K{-lvs:ds_s23L-} ::PrelBase.Int{-3g,p-} of {
-						-- lvs: [y_s23K ds_s23L]; rhs lvs: [ds_s23L]; uniq: c2bv
-					      PrelBase.I#{-5b,p-}{i} ds_s23U ->
-						  case
-						      lit_a19w{-lvs:ds_s23L, ds_s23U-} ::PrelBase.Float{-3c,p-}
-						  of {
-						      -- lvs: [ds_s23L ds_s23U]; rhs lvs: [ds_s23L ds_s23U]; uniq: c2bw
-						    PrelBase.F#{-59,p-}{i} ds_s243 ->
-							case
-							    lit_a19u{-lvs:ds_s23L, ds_s23U, ds_s243-} ::PrelBase.Double{-3a,p-}
-							of {
-							    -- lvs: [ds_s23L ds_s23U ds_s243]; rhs lvs: [ds_s23L ds_s23U ds_s243]; uniq: c2bx
-							  PrelBase.D#{-56,p-}{i} ds_s24t ->
-							      case
-								  _ccall_ c [(STBase.StateAndFloat#{-3C,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.Int#{-3f,p-} GHC.Char#{-37,p-} GHC.Float#{-3b,p-} GHC.Double#{-39,p-}]# [ds_s23L ds_s23U 'f' ds_s243 ds_s24t] ::STBase.StateAndFloat#{-3C,p-} GHC.RealWorld{-3s,p-}
-							      of {
-								  -- lvs: [ds_s23L ds_s23U ds_s243 ds_s24t]; rhs lvs: []; uniq: c2by
-								STBase.StateAndFloat#{-5u,p-}{i} ds_s24E ds_s24u ->
-								    let {
-								      ds_s24U =
-									   PrelBase.F#{-59,p-}{i}! [ds_s24u]; } in
-								    let {
-								      ds_s24T =
-									   STBase.S#{-5D,p-}{i}! [ds_s24E];
-								    } in 
-								      PrelTup.(,){-62,p-}{i}! [ds_s24U ds_s24T];
-							      };
-							};
-						  };
-					    };
-				      };
-			    } in 
-			      stg_c28E;
-		  } in 
-		    STBase.thenPrimIO{-r4w,p-}
-			s_s23h ds_s24V;
-	} in 
-	  STBase.thenPrimIO{-r4w,p-}
-	      s_s1Xu ds_s258;
-
-
-================================================================================
-Flat Abstract C:
-ED_(PrelNum_integerZu2_closure);
-ED_(PrelNum_integerZu1_closure);
-SET_STATIC_HDR(s25b_closure,PrelNum_ZcZ37_static_info,0,static ,ED_RO_)
-  , (W_)PrelNum_integerZu2_closure, (W_)PrelNum_integerZu1_closure
-};
-IFN_(ret_c2b9) {
-ID_(s25b_closure);
-	FB_
-	SpA[-1]=s25b_closure;
-	RetReg=StdUpdRetVecReg;
-	R1=R6;
-	SpA=SpA-1;
-	SpB=SpB-1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(6,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2b9,ret_c2b9)
-STATIC_ITBL(a19u_info,a19u_entry,StdErrorCode,1,-1,(STATIC_VHS+
-						    2),0,static const,IF_,0,0,0);
-IFN_(a19u_entry) {
-ED_(PrelNum_Z36d14_closure);
-	FB_
-	STK_CHK(1,1,5,0,0,0,1);
-	HEAP_CHK(1,(BH_HS+2),1);
-	SET_BH_HDR(Hp-(BH_HS+1),BH_UPD_info,0,(BH_VHS+2),0);
-	UPD_CAF(R1.p,Hp-(BH_HS+1));
-	PUSH_STD_UPD_FRAME(Hp-(BH_HS+1),0,0);
-	RetReg=(StgRetAddr)UNVEC(ret_c2b9,vtbl_c2b9);
-	R1.p=PrelNum_Z36d14_closure;
-	SpB=SpB+5;
-	ENT_VIA_NODE();
-	GRAN_EXEC(19,2,2,8,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(a19u_closure,a19u_info,0,static ,ID_RO_)
-  , (W_)0, (W_)0
-};
-ED_(PrelNum_integerZu1_closure);
-SET_STATIC_HDR(s25c_closure,PrelNum_ZcZ37_static_info,0,static ,ED_RO_)
-  , (W_)PrelNum_integerZu1_closure, (W_)PrelNum_integerZu1_closure
-};
-IFN_(ret_c2ba) {
-ID_(s25c_closure);
-	FB_
-	SpA[-1]=s25c_closure;
-	RetReg=StdUpdRetVecReg;
-	R1=R6;
-	SpA=SpA-1;
-	SpB=SpB-1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(6,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2ba,ret_c2ba)
-STATIC_ITBL(a19w_info,a19w_entry,StdErrorCode,1,-1,(STATIC_VHS+
-						    2),0,static const,IF_,0,0,0);
-IFN_(a19w_entry) {
-ED_(PrelNum_Z36d23_closure);
-	FB_
-	STK_CHK(1,1,5,0,0,0,1);
-	HEAP_CHK(1,(BH_HS+2),1);
-	SET_BH_HDR(Hp-(BH_HS+1),BH_UPD_info,0,(BH_VHS+2),0);
-	UPD_CAF(R1.p,Hp-(BH_HS+1));
-	PUSH_STD_UPD_FRAME(Hp-(BH_HS+1),0,0);
-	RetReg=(StgRetAddr)UNVEC(ret_c2ba,vtbl_c2ba);
-	R1.p=PrelNum_Z36d23_closure;
-	SpB=SpB+5;
-	ENT_VIA_NODE();
-	GRAN_EXEC(19,2,2,8,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(a19w_closure,a19w_info,0,static ,ID_RO_)
-  , (W_)0, (W_)0
-};
-IFN_(ret_c2bb) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s1W9;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (a());
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1W9=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s1W9);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,21,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bb,ret_c2bb)
-STATIC_ITBL(s1MF_info,s1MF_entry,StdErrorCode,1,-1,STATIC_VHS,0,static const,IF_,0,0,0);
-IFN_(s1MF_entry) {
-ID_(s1MF_closure);
-IF_(s1MF_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,s1MF_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s1MF_fast1);
-	FE_
-}
-IFN_(s1MF_fast1) {
-	FB_
-	STK_CHK(1,0,1,0,0,0,0);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c2bb,vtbl_c2bb);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(s1MF_closure,s1MF_info,0,static ,ID_RO_)
-};
-IFN_(ret_c2bd) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s1X8;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (a());
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1X8=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s1X8);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,21,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bd,ret_c2bd)
-STATIC_ITBL(s1Xu_info,s1Xu_entry,StdErrorCode,1,-1,STATIC_VHS,0,static const,IF_,0,0,0);
-IFN_(s1Xu_entry) {
-ID_(s1Xu_closure);
-IF_(s1Xu_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,s1Xu_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s1Xu_fast1);
-	FE_
-}
-IFN_(s1Xu_fast1) {
-	FB_
-	STK_CHK(1,0,1,0,0,0,0);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c2bd,vtbl_c2bd);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(s1Xu_closure,s1Xu_info,0,static ,ID_RO_)
-};
-STATIC_ITBL(Test_a_info,Test_a_entry,StdErrorCode,1,-1,(STATIC_VHS+
-							2),0,const,EF_,0,0,0);
-FN_(Test_a_entry) {
-IF_(s1Xu_entry);
-	FB_
-	STK_CHK(1,0,4,0,0,0,1);
-	HEAP_CHK(1,(BH_HS+2),1);
-	SET_BH_HDR(Hp-(BH_HS+1),BH_UPD_info,0,(BH_VHS+2),0);
-	UPD_CAF(R1.p,Hp-(BH_HS+1));
-	PUSH_STD_UPD_FRAME(Hp-(BH_HS+1),0,0);
-	RetReg=StdUpdRetVecReg;
-	SpB=SpB+4;
-	GRAN_EXEC(16,2,1,8,0);
-	JMP_(s1Xu_entry);
-	FE_
-}
-SET_STATIC_HDR(Test_a_closure,Test_a_info,0,,ED_RO_)
-  , (W_)0, (W_)0
-};
-IFN_(ret_c2bg) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s1Yq;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	I_ _ccall_arg1=R3.i;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (b((_ccall_arg1)));
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1Yq=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s1Yq);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,22,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bg,ret_c2bg)
-IFN_(ret_c2bf) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bg,vtbl_c2bg);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bf,ret_c2bf)
-SPEC_N_ITBL(c2ac_info,c2ac_entry,StdErrorCode,1,-1,1,1,static const,IF_,0,0,0);
-IFN_(c2ac_entry) {
-IF_(c2ac_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(c2ac_fast1);
-	FE_
-}
-IFN_(c2ac_fast1) {
-	FB_
-	STK_CHK(3,1,1,0,0,0,1);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c2bf,vtbl_c2bf);
-	SpA[-1]=(P_)(R1.p[_FHS]);
-	R1=R2;
-	SpA=SpA-1;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-STATIC_ITBL(Test_b_info,Test_b_entry,StdErrorCode,1,-1,STATIC_VHS,0,const,EF_,0,0,0);
-FN_(Test_b_entry) {
-ED_(Test_b_closure);
-EF_(Test_b_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,Test_b_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(Test_b_fast1);
-	FE_
-}
-FN_(Test_b_fast1) {
-ID_RO_(c2ac_info);
-IF_(c2ac_entry);
-	FB_
-	HEAP_CHK(1,(_FHS+1),0);
-	SET_SPEC_HDR(Hp-_FHS,c2ac_info,0,1,1);
-	*Hp=(W_)(R1.p);
-	R1.p=Hp-_FHS;
-	GRAN_EXEC(5,2,0,2,0);
-	JMP_(c2ac_entry);
-	FE_
-}
-SET_STATIC_HDR(Test_b_closure,Test_b_info,0,,ED_RO_)
-};
-IFN_(ret_c2bm) {
-ED_RO_(PrelBase_FZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-StgFloat s20f;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	StgFloat _ccall_result;
-	I_ _ccall_arg1=(I_)(SpB[-2]);
-	StgChar _ccall_arg2=(StgChar)(SpB[-1]);
-	StgFloat _ccall_arg3=PK_FLT(SpB);
-	StgDouble _ccall_arg4=DblReg1;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (c((_ccall_arg1),(_ccall_arg2),(_ccall_arg3),(_ccall_arg4)));
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s20f=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_FZh_con_info,0,1,0);
-	ASSIGN_FLT(Hp,s20f);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-4;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,25,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bm,ret_c2bm)
-IFN_(ret_c2bl) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bm,vtbl_c2bm);
-	R1.p=*SpA;
-	ASSIGN_FLT(SpB+1,FltReg1);
-	SpA=SpA+4;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(4,1,2,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bl,ret_c2bl)
-IFN_(ret_c2bk) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bl,vtbl_c2bl);
-	R1.p=SpA[1];
-	SpB[1]=(W_)(R3.c);
-	SpA[1]=StkStubReg;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bk,ret_c2bk)
-IFN_(ret_c2bj) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bk,vtbl_c2bk);
-	R1.p=SpA[2];
-	SpB[1]=(W_)(R3.i);
-	SpA[2]=StkStubReg;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bj,ret_c2bj)
-IFN_(ret_c2bi) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bj,vtbl_c2bj);
-	R1.p=SpA[3];
-	SpA[3]=StkStubReg;
-	ENT_VIA_NODE();
-	GRAN_EXEC(2,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bi,ret_c2bi)
-SPEC_N_ITBL(c29C_info,c29C_entry,StdErrorCode,1,-1,4,4,static const,IF_,0,0,0);
-IFN_(c29C_entry) {
-IF_(c29C_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(c29C_fast1);
-	FE_
-}
-IFN_(c29C_fast1) {
-	FB_
-	STK_CHK(3,4,4,0,0,0,1);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c2bi,vtbl_c2bi);
-	SpA[-4]=(P_)(R1.p[(_FHS+3)]);
-	SpA[-3]=(P_)(R1.p[(_FHS+2)]);
-	SpA[-2]=(P_)(R1.p[(_FHS+1)]);
-	SpA[-1]=(P_)(R1.p[_FHS]);
-	R1=R2;
-	SpA=SpA-4;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,5,5,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-STATIC_ITBL(Test_c_info,Test_c_entry,StdErrorCode,1,-1,STATIC_VHS,0,const,EF_,0,0,0);
-FN_(Test_c_entry) {
-ED_(Test_c_closure);
-EF_(Test_c_fast4);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(4,Test_c_closure);
-	R1.p=*SpA;
-	R2.p=SpA[1];
-	R3.p=SpA[2];
-	R4.p=SpA[3];
-	SpA=SpA+4;
-	GRAN_EXEC(5,2,4,0,0);
-	JMP_(Test_c_fast4);
-	FE_
-}
-FN_(Test_c_fast4) {
-ID_RO_(c29C_info);
-IF_(c29C_entry);
-	FB_
-	HEAP_CHK(15,(_FHS+4),0);
-	SET_SPEC_HDR(Hp-(_FHS+3),c29C_info,0,4,4);
-	Hp[-3]=(W_)(R1.p);
-	Hp[-2]=(W_)(R2.p);
-	Hp[-1]=(W_)(R3.p);
-	*Hp=(W_)(R4.p);
-	R1.p=Hp-(_FHS+3);
-	GRAN_EXEC(5,2,0,5,0);
-	JMP_(c29C_entry);
-	FE_
-}
-SET_STATIC_HDR(Test_c_closure,Test_c_info,0,,ED_RO_)
-};
-IFN_(ret_c2bp) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s21I;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	I_ _ccall_arg1=R3.i;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (b((_ccall_arg1)));
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s21I=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s21I);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,22,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bp,ret_c2bp)
-IFN_(ret_c2bo) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bp,vtbl_c2bp);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bo,ret_c2bo)
-SPEC_N_ITBL(s22a_info,s22a_entry,StdErrorCode,1,-1,1,1,static const,IF_,0,0,0);
-IFN_(s22a_entry) {
-IF_(s22a_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s22a_fast1);
-	FE_
-}
-IFN_(s22a_fast1) {
-	FB_
-	STK_CHK(3,1,1,0,0,0,1);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c2bo,vtbl_c2bo);
-	SpA[-1]=(P_)(R1.p[_FHS]);
-	R1=R2;
-	SpA=SpA-1;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-IFN_(ret_c2bs) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s22U;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	I_ _ccall_arg1=R3.i;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (b((_ccall_arg1)));
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s22U=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s22U);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,22,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bs,ret_c2bs)
-IFN_(ret_c2br) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bs,vtbl_c2bs);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2br,ret_c2br)
-SPEC_N_ITBL(s23h_info,s23h_entry,StdErrorCode,1,-1,1,1,static const,IF_,0,0,0);
-IFN_(s23h_entry) {
-IF_(s23h_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s23h_fast1);
-	FE_
-}
-IFN_(s23h_fast1) {
-	FB_
-	STK_CHK(3,1,1,0,0,0,1);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c2br,vtbl_c2br);
-	SpA[-1]=(P_)(R1.p[_FHS]);
-	R1=R2;
-	SpA=SpA-1;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-IFN_(ret_c2bx) {
-ED_RO_(PrelBase_FZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-StgFloat s24u;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	StgFloat _ccall_result;
-	I_ _ccall_arg1=(I_)(SpB[-1]);
-	StgChar _ccall_arg2=(C_)'f';
-	StgFloat _ccall_arg3=PK_FLT(SpB);
-	StgDouble _ccall_arg4=DblReg1;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (c((_ccall_arg1),(_ccall_arg2),(_ccall_arg3),(_ccall_arg4)));
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s24u=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_FZh_con_info,0,1,0);
-	ASSIGN_FLT(Hp,s24u);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-3;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(11,2,24,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bx,ret_c2bx)
-IFN_(ret_c2bw) {
-ID_(a19u_closure);
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bx,vtbl_c2bx);
-	R1.p=a19u_closure;
-	ASSIGN_FLT(SpB+1,FltReg1);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bw,ret_c2bw)
-IFN_(ret_c2bv) {
-ID_(a19w_closure);
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bw,vtbl_c2bw);
-	R1.p=a19w_closure;
-	SpB[1]=(W_)(R3.i);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bv,ret_c2bv)
-IFN_(ret_c2bu) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c2bv,vtbl_c2bv);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c2bu,ret_c2bu)
-SPEC_N_ITBL(c28E_info,c28E_entry,StdErrorCode,1,-1,1,1,static const,IF_,0,0,0);
-IFN_(c28E_entry) {
-IF_(c28E_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(c28E_fast1);
-	FE_
-}
-IFN_(c28E_fast1) {
-	FB_
-	STK_CHK(3,1,3,0,0,0,1);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c2bu,vtbl_c2bu);
-	SpA[-1]=(P_)(R1.p[_FHS]);
-	R1=R2;
-	SpA=SpA-1;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SPEC_N_ITBL(s24V_info,s24V_entry,StdErrorCode,1,-1,1,0,static const,IF_,0,0,0);
-IFN_(s24V_entry) {
-IF_(s24V_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s24V_fast1);
-	FE_
-}
-IFN_(s24V_fast1) {
-ID_RO_(c28E_info);
-IF_(c28E_entry);
-	FB_
-	HEAP_CHK(3,(_FHS+1),1);
-	SET_SPEC_HDR(Hp-_FHS,c28E_info,0,1,1);
-	*Hp=(W_)(R2.p);
-	R1.p=Hp-_FHS;
-	GRAN_EXEC(5,2,0,2,0);
-	JMP_(c28E_entry);
-	FE_
-}
-SPEC_N_ITBL(s258_info,s258_entry,StdErrorCode,1,-1,1,0,static const,IF_,0,0,0);
-IFN_(s258_entry) {
-IF_(s258_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s258_fast1);
-	FE_
-}
-IFN_(s258_fast1) {
-ID_RO_(s22a_info);
-ID_RO_(s23h_info);
-ID_RO_(s24V_info);
-ED_(STBase_thenPrimIO_closure);
-	FB_
-	STK_CHK(3,2,0,0,0,0,1);
-	HEAP_CHK(3,((_FHS*3)+3),1);
-	SET_SPEC_HDR(Hp-((_FHS*3)+2),s22a_info,0,1,1);
-	Hp[-((_FHS*2)+2)]=(W_)(R2.p);
-	SET_SPEC_HDR(Hp-((_FHS*2)+1),s23h_info,0,1,1);
-	Hp[-(_FHS+1)]=(W_)(R2.p);
-	SET_SPEC_HDR(Hp-_FHS,s24V_info,0,1,0);
-	SpA[-1]=Hp-_FHS;
-	SpA[-2]=Hp-((_FHS*2)+1);
-	R1.p=STBase_thenPrimIO_closure;
-	SpA=SpA-2;
-	ENT_VIA_NODE();
-	GRAN_EXEC(11,2,3,7,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-STATIC_ITBL(Test_d_info,Test_d_entry,StdErrorCode,1,-1,(STATIC_VHS+
-							2),0,const,EF_,0,0,0);
-FN_(Test_d_entry) {
-ID_RO_(s258_info);
-ID_(s1Xu_closure);
-ED_(STBase_thenPrimIO_closure);
-	FB_
-	STK_CHK(1,2,4,0,0,0,1);
-	HEAP_CHK(1,(BH_HS+_FHS+3),1);
-	SET_BH_HDR(Hp-(BH_HS+_FHS+2),BH_UPD_info,0,(BH_VHS+2),0);
-	UPD_CAF(R1.p,Hp-(BH_HS+_FHS+2));
-	PUSH_STD_UPD_FRAME(Hp-(BH_HS+_FHS+2),0,0);
-	SET_SPEC_HDR(Hp-_FHS,s258_info,0,1,0);
-	SpA[-1]=Hp-_FHS;
-	SpA[-2]=s1Xu_closure;
-	RetReg=StdUpdRetVecReg;
-	R1.p=STBase_thenPrimIO_closure;
-	SpA=SpA-2;
-	SpB=SpB+4;
-	ENT_VIA_NODE();
-	GRAN_EXEC(23,2,3,11,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(Test_d_closure,Test_d_info,0,,ED_RO_)
-  , (W_)0, (W_)0
-};
-ghc: module version changed to 1; reason: no old .hi file
diff --git a/ghc/compiler/tests/ccall/cc006.hs b/ghc/compiler/tests/ccall/cc006.hs
deleted file mode 100644
index 27579e9aaf30..000000000000
--- a/ghc/compiler/tests/ccall/cc006.hs
+++ /dev/null
@@ -1,22 +0,0 @@
---!!! cc006 -- ccall with non-standard boxed arguments and results
-
-module Test where
-
-import GlaExts
-import Foreign
-
--- Test returning results
-
-a :: PrimIO Int
-a = _ccall_ a
-
-b :: PrimIO (StablePtr Int)
-b = _ccall_ b
-
--- Test taking arguments
-
-c :: ForeignObj -> PrimIO Int
-c x = _ccall_ c x
-
-d :: StablePtr Int -> PrimIO Int
-d x = _ccall_ d x
diff --git a/ghc/compiler/tests/ccall/cc006.stderr b/ghc/compiler/tests/ccall/cc006.stderr
deleted file mode 100644
index df765d7667cf..000000000000
--- a/ghc/compiler/tests/ccall/cc006.stderr
+++ /dev/null
@@ -1,671 +0,0 @@
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
-
-
-================================================================================
-STG syntax:
-d{-r5y,x-} =
-     [] \r [x_s1vw]
-	let {
-	  stg_c1Fh =
-	      (False, True, False, False, True) [x_s1vw] \r [ds_s1vn]
-		  case
-		      ds_s1vn{-lvs:x_s1vw-} ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		  of {
-		      -- lvs: [ds_s1vn x_s1vw]; rhs lvs: [x_s1vw]; uniq: c1Fi
-		    STBase.S#{-5D,p-}{i} ds_s1vx ->
-			case
-			    x_s1vw{-lvs:ds_s1vx-} ::Foreign.StablePtr{-3w,p-} PrelBase.Int{-3g,p-}
-			of {
-			    -- lvs: [x_s1vw ds_s1vx]; rhs lvs: [ds_s1vx]; uniq: c1Fj
-			  Foreign.StablePtr{-5o,p-}{i} ds_s1vX ->
-			      case
-				  _ccall_ d [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) (GHC.StablePtr#{-3v,p-} PrelBase.Int{-3g,p-})]# [ds_s1vx ds_s1vX] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-			      of {
-				  -- lvs: [ds_s1vx ds_s1vX]; rhs lvs: []; uniq: c1Fk
-				STBase.StateAndInt#{-5v,p-}{i} ds_s1w8 ds_s1vY ->
-				    let {
-				      ds_s1wC =
-					   PrelBase.I#{-5b,p-}{i}! [ds_s1vY]; } in
-				    let {
-				      ds_s1wB =
-					   STBase.S#{-5D,p-}{i}! [ds_s1w8];
-				    } in 
-				      PrelTup.(,){-62,p-}{i}! [ds_s1wC ds_s1wB];
-			      };
-			};
-		  };
-	} in 
-	  stg_c1Fh;
-c{-r5x,x-} =
-     [] \r [x_s1wL]
-	let {
-	  stg_c1EH =
-	      (False, True, False, False, True) [x_s1wL] \r [ds_s1wA]
-		  case
-		      ds_s1wA{-lvs:x_s1wL-} ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-}
-		  of {
-		      -- lvs: [ds_s1wA x_s1wL]; rhs lvs: [x_s1wL]; uniq: c1Fl
-		    STBase.S#{-5D,p-}{i} ds_s1wM ->
-			case x_s1wL{-lvs:ds_s1wM-} ::Foreign.ForeignObj{-3l,p-} of {
-			    -- lvs: [x_s1wL ds_s1wM]; rhs lvs: [ds_s1wM]; uniq: c1Fm
-			  Foreign.ForeignObj{-5f,p-}{i} ds_s1xc ->
-			      case
-				  _ccall_ c [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-}) GHC.ForeignObj#{-3k,p-}]# [ds_s1wM ds_s1xc] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-			      of {
-				  -- lvs: [ds_s1wM ds_s1xc]; rhs lvs: []; uniq: c1Fn
-				STBase.StateAndInt#{-5v,p-}{i} ds_s1xn ds_s1xd ->
-				    let {
-				      ds_s1xL =
-					   PrelBase.I#{-5b,p-}{i}! [ds_s1xd]; } in
-				    let {
-				      ds_s1xK =
-					   STBase.S#{-5D,p-}{i}! [ds_s1xn];
-				    } in 
-				      PrelTup.(,){-62,p-}{i}! [ds_s1xL ds_s1xK];
-			      };
-			};
-		  };
-	} in 
-	  stg_c1EH;
-s_s1sE =
-     [] \r [ds_s1xJ]
-	case ds_s1xJ ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-} of {
-	    -- lvs: [ds_s1xJ]; rhs lvs: []; uniq: c1Fo
-	  STBase.S#{-5D,p-}{i} ds_s1yc ->
-	      case
-		  _ccall_ b [(Foreign.StateAndStablePtr#{-3J,p-} GHC.RealWorld{-3s,p-} PrelBase.Int{-3g,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]# [ds_s1yc] ::Foreign.StateAndStablePtr#{-3J,p-} GHC.RealWorld{-3s,p-} PrelBase.Int{-3g,p-}
-	      of {
-		  -- lvs: [ds_s1yc]; rhs lvs: []; uniq: c1Fp
-		Foreign.StateAndStablePtr#{-5B,p-}{i} ds_s1ym ds_s1yb ->
-		    let {
-		      ds_s1yC =
-			   Foreign.StablePtr{-5o,p-}{i}! [ds_s1yb]; } in
-		    let {
-		      ds_s1yB =
-			   STBase.S#{-5D,p-}{i}! [ds_s1ym];
-		    } in 
-		      PrelTup.(,){-62,p-}{i}! [ds_s1yC ds_s1yB];
-	      };
-	};
-s_s1zw =
-    (False, True, False, False, True) [] \r [ds_s1yK]
-	case ds_s1yK ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-} of {
-	    -- lvs: [ds_s1yK]; rhs lvs: []; uniq: c1Fq
-	  STBase.S#{-5D,p-}{i} ds_s1zb ->
-	      case
-		  _ccall_ b [(Foreign.StateAndStablePtr#{-3J,p-} GHC.RealWorld{-3s,p-} PrelBase.Int{-3g,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]# [ds_s1zb] ::Foreign.StateAndStablePtr#{-3J,p-} GHC.RealWorld{-3s,p-} PrelBase.Int{-3g,p-}
-	      of {
-		  -- lvs: [ds_s1zb]; rhs lvs: []; uniq: c1Fr
-		Foreign.StateAndStablePtr#{-5B,p-}{i} ds_s1zl ds_s1za ->
-		    let {
-		      ds_s1zL =
-			   Foreign.StablePtr{-5o,p-}{i}! [ds_s1za]; } in
-		    let {
-		      ds_s1zK =
-			   STBase.S#{-5D,p-}{i}! [ds_s1zl];
-		    } in 
-		      PrelTup.(,){-62,p-}{i}! [ds_s1zL ds_s1zK];
-	      };
-	};
-b{-r5w,x-} =
-     [] \u []
-	s_s1zw;
-s_s1uE =
-     [] \r [ds_s1zJ]
-	case ds_s1zJ ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-} of {
-	    -- lvs: [ds_s1zJ]; rhs lvs: []; uniq: c1Fs
-	  STBase.S#{-5D,p-}{i} ds_s1Ac ->
-	      case
-		  _ccall_ a [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]# [ds_s1Ac] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-	      of {
-		  -- lvs: [ds_s1Ac]; rhs lvs: []; uniq: c1Ft
-		STBase.StateAndInt#{-5v,p-}{i} ds_s1Am ds_s1Ab ->
-		    let {
-		      ds_s1AC =
-			   PrelBase.I#{-5b,p-}{i}! [ds_s1Ab]; } in
-		    let {
-		      ds_s1AB =
-			   STBase.S#{-5D,p-}{i}! [ds_s1Am];
-		    } in 
-		      PrelTup.(,){-62,p-}{i}! [ds_s1AC ds_s1AB];
-	      };
-	};
-s_s1Bw =
-    (False, True, False, False, True) [] \r [ds_s1AK]
-	case ds_s1AK ::STBase.State{-3M,p-} GHC.RealWorld{-3s,p-} of {
-	    -- lvs: [ds_s1AK]; rhs lvs: []; uniq: c1Fu
-	  STBase.S#{-5D,p-}{i} ds_s1Bb ->
-	      case
-		  _ccall_ a [(STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}) (GHC.State#{-3L,p-} GHC.RealWorld{-3s,p-})]# [ds_s1Bb] ::STBase.StateAndInt#{-3D,p-} GHC.RealWorld{-3s,p-}
-	      of {
-		  -- lvs: [ds_s1Bb]; rhs lvs: []; uniq: c1Fv
-		STBase.StateAndInt#{-5v,p-}{i} ds_s1Bl ds_s1Ba ->
-		    let {
-		      ds_s1BE =
-			   PrelBase.I#{-5b,p-}{i}! [ds_s1Ba]; } in
-		    let {
-		      ds_s1BF =
-			   STBase.S#{-5D,p-}{i}! [ds_s1Bl];
-		    } in 
-		      PrelTup.(,){-62,p-}{i}! [ds_s1BE ds_s1BF];
-	      };
-	};
-a{-r5v,x-} =
-     [] \u []
-	s_s1Bw;
-
-
-================================================================================
-Flat Abstract C:
-IFN_(ret_c1Fj) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s1vY;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	StgStablePtr _ccall_arg1=R3.i;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (d((_ccall_arg1)));
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1vY=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s1vY);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,22,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fj,ret_c1Fj)
-IFN_(ret_c1Fi) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fj,vtbl_c1Fj);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fi,ret_c1Fi)
-SPEC_N_ITBL(c1Fh_info,c1Fh_entry,StdErrorCode,1,-1,1,1,static const,IF_,0,0,0);
-IFN_(c1Fh_entry) {
-IF_(c1Fh_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(c1Fh_fast1);
-	FE_
-}
-IFN_(c1Fh_fast1) {
-	FB_
-	STK_CHK(3,1,1,0,0,0,1);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fi,vtbl_c1Fi);
-	SpA[-1]=(P_)(R1.p[_FHS]);
-	R1=R2;
-	SpA=SpA-1;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-STATIC_ITBL(Test_d_info,Test_d_entry,StdErrorCode,1,-1,STATIC_VHS,0,const,EF_,0,0,0);
-FN_(Test_d_entry) {
-ED_(Test_d_closure);
-EF_(Test_d_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,Test_d_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(Test_d_fast1);
-	FE_
-}
-FN_(Test_d_fast1) {
-ID_RO_(c1Fh_info);
-IF_(c1Fh_entry);
-	FB_
-	HEAP_CHK(1,(_FHS+1),0);
-	SET_SPEC_HDR(Hp-_FHS,c1Fh_info,0,1,1);
-	*Hp=(W_)(R1.p);
-	R1.p=Hp-_FHS;
-	GRAN_EXEC(5,2,0,2,0);
-	JMP_(c1Fh_entry);
-	FE_
-}
-SET_STATIC_HDR(Test_d_closure,Test_d_info,0,,ED_RO_)
-};
-IFN_(ret_c1Fm) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s1xd;
-	FB_
-	HEAP_CHK(4,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	StgForeignObj _ccall_arg1=ForeignObj_CLOSURE_DATA(R3.p);
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (c((_ccall_arg1)));
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1xd=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s1xd);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,22,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fm,ret_c1Fm)
-IFN_(ret_c1Fl) {
-	FB_
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fm,vtbl_c1Fm);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,2,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fl,ret_c1Fl)
-SPEC_N_ITBL(c1EH_info,c1EH_entry,StdErrorCode,1,-1,1,1,static const,IF_,0,0,0);
-IFN_(c1EH_entry) {
-IF_(c1EH_fast1);
-	FB_
-	ARGS_CHK_A(1);
-	R2.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(c1EH_fast1);
-	FE_
-}
-IFN_(c1EH_fast1) {
-	FB_
-	STK_CHK(3,1,1,0,0,0,1);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fl,vtbl_c1Fl);
-	SpA[-1]=(P_)(R1.p[_FHS]);
-	R1=R2;
-	SpA=SpA-1;
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(5,1,2,2,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-STATIC_ITBL(Test_c_info,Test_c_entry,StdErrorCode,1,-1,STATIC_VHS,0,const,EF_,0,0,0);
-FN_(Test_c_entry) {
-ED_(Test_c_closure);
-EF_(Test_c_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,Test_c_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(Test_c_fast1);
-	FE_
-}
-FN_(Test_c_fast1) {
-ID_RO_(c1EH_info);
-IF_(c1EH_entry);
-	FB_
-	HEAP_CHK(1,(_FHS+1),0);
-	SET_SPEC_HDR(Hp-_FHS,c1EH_info,0,1,1);
-	*Hp=(W_)(R1.p);
-	R1.p=Hp-_FHS;
-	GRAN_EXEC(5,2,0,2,0);
-	JMP_(c1EH_entry);
-	FE_
-}
-SET_STATIC_HDR(Test_c_closure,Test_c_info,0,,ED_RO_)
-};
-IFN_(ret_c1Fo) {
-ED_RO_(Foreign_StablePtr_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-StgStablePtr s1yb;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	StgStablePtr _ccall_result;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (b());
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1yb=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,Foreign_StablePtr_con_info,0,1,0);
-	*Hp=(W_)(s1yb);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,21,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fo,ret_c1Fo)
-STATIC_ITBL(s1sE_info,s1sE_entry,StdErrorCode,1,-1,STATIC_VHS,0,static const,IF_,0,0,0);
-IFN_(s1sE_entry) {
-ID_(s1sE_closure);
-IF_(s1sE_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,s1sE_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s1sE_fast1);
-	FE_
-}
-IFN_(s1sE_fast1) {
-	FB_
-	STK_CHK(1,0,1,0,0,0,0);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fo,vtbl_c1Fo);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(s1sE_closure,s1sE_info,0,static ,ID_RO_)
-};
-IFN_(ret_c1Fq) {
-ED_RO_(Foreign_StablePtr_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-StgStablePtr s1za;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	StgStablePtr _ccall_result;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (b());
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1za=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,Foreign_StablePtr_con_info,0,1,0);
-	*Hp=(W_)(s1za);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,21,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fq,ret_c1Fq)
-STATIC_ITBL(s1zw_info,s1zw_entry,StdErrorCode,1,-1,STATIC_VHS,0,static const,IF_,0,0,0);
-IFN_(s1zw_entry) {
-ID_(s1zw_closure);
-IF_(s1zw_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,s1zw_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s1zw_fast1);
-	FE_
-}
-IFN_(s1zw_fast1) {
-	FB_
-	STK_CHK(1,0,1,0,0,0,0);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fq,vtbl_c1Fq);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(s1zw_closure,s1zw_info,0,static ,ID_RO_)
-};
-STATIC_ITBL(Test_b_info,Test_b_entry,StdErrorCode,1,-1,(STATIC_VHS+
-							2),0,const,EF_,0,0,0);
-FN_(Test_b_entry) {
-IF_(s1zw_entry);
-	FB_
-	STK_CHK(1,0,4,0,0,0,1);
-	HEAP_CHK(1,(BH_HS+2),1);
-	SET_BH_HDR(Hp-(BH_HS+1),BH_UPD_info,0,(BH_VHS+2),0);
-	UPD_CAF(R1.p,Hp-(BH_HS+1));
-	PUSH_STD_UPD_FRAME(Hp-(BH_HS+1),0,0);
-	RetReg=StdUpdRetVecReg;
-	SpB=SpB+4;
-	GRAN_EXEC(16,2,1,8,0);
-	JMP_(s1zw_entry);
-	FE_
-}
-SET_STATIC_HDR(Test_b_closure,Test_b_info,0,,ED_RO_)
-  , (W_)0, (W_)0
-};
-IFN_(ret_c1Fs) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s1Ab;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (a());
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1Ab=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s1Ab);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,21,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fs,ret_c1Fs)
-STATIC_ITBL(s1uE_info,s1uE_entry,StdErrorCode,1,-1,STATIC_VHS,0,static const,IF_,0,0,0);
-IFN_(s1uE_entry) {
-ID_(s1uE_closure);
-IF_(s1uE_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,s1uE_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s1uE_fast1);
-	FE_
-}
-IFN_(s1uE_fast1) {
-	FB_
-	STK_CHK(1,0,1,0,0,0,0);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fs,vtbl_c1Fs);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(s1uE_closure,s1uE_info,0,static ,ID_RO_)
-};
-IFN_(ret_c1Fu) {
-ED_RO_(PrelBase_IZh_con_info);
-ED_(STBase_SZh_static_closure);
-ED_RO_(PrelTup_Z40Z44Z41_inregs_info);
-I_ s1Ba;
-	FB_
-	HEAP_CHK(0,(_FHS+1),0);
-	{
-	I_ _ccall_result;
-	CALLER_SAVE_Base
-	CALLER_SAVE_SpA
-	CALLER_SAVE_SuA
-	CALLER_SAVE_SpB
-	CALLER_SAVE_SuB
-	CALLER_SAVE_Ret
-	CALLER_SAVE_Hp
-	CALLER_SAVE_HpLim
-	_ccall_result = (a());
-	CALLER_RESTORE_Base
-	CALLER_RESTORE_SpA
-	CALLER_RESTORE_SuA
-	CALLER_RESTORE_SpB
-	CALLER_RESTORE_SuB
-	CALLER_RESTORE_Ret
-	CALLER_RESTORE_Hp
-	CALLER_RESTORE_HpLim
-	CALLER_RESTORE_StdUpdRetVec
-	CALLER_RESTORE_StkStub
-	s1Ba=_ccall_result;
-	}
-	SET_SPEC_HDR(Hp-_FHS,PrelBase_IZh_con_info,0,1,0);
-	*Hp=(W_)(s1Ba);
-	R4.p=STBase_SZh_static_closure;
-	R3.p=Hp-_FHS;
-	SpB=SpB-1;
-	R2.d=PrelTup_Z40Z44Z41_inregs_info;
-	GRAN_EXEC(10,2,21,22,0);
-	JMP_(DIRECT((StgRetAddr)(SpB[1])));
-	FE_
-}
-UNVECTBL(static,vtbl_c1Fu,ret_c1Fu)
-STATIC_ITBL(s1Bw_info,s1Bw_entry,StdErrorCode,1,-1,STATIC_VHS,0,static const,IF_,0,0,0);
-IFN_(s1Bw_entry) {
-ID_(s1Bw_closure);
-IF_(s1Bw_fast1);
-	FB_
-	ARGS_CHK_A_LOAD_NODE(1,s1Bw_closure);
-	R1.p=*SpA;
-	SpA=SpA+1;
-	GRAN_EXEC(5,2,1,0,0);
-	JMP_(s1Bw_fast1);
-	FE_
-}
-IFN_(s1Bw_fast1) {
-	FB_
-	STK_CHK(1,0,1,0,0,0,0);
-	SpB[1]=(W_)(RetReg);
-	RetReg=(StgRetAddr)UNVEC(ret_c1Fu,vtbl_c1Fu);
-	SpB=SpB+1;
-	ENT_VIA_NODE();
-	GRAN_EXEC(3,1,1,1,0);
-	JMP_((P_)(ENTRY_CODE((D_)(INFO_PTR(R1.p)))));
-	FE_
-}
-SET_STATIC_HDR(s1Bw_closure,s1Bw_info,0,static ,ID_RO_)
-};
-STATIC_ITBL(Test_a_info,Test_a_entry,StdErrorCode,1,-1,(STATIC_VHS+
-							2),0,const,EF_,0,0,0);
-FN_(Test_a_entry) {
-IF_(s1Bw_entry);
-	FB_
-	STK_CHK(1,0,4,0,0,0,1);
-	HEAP_CHK(1,(BH_HS+2),1);
-	SET_BH_HDR(Hp-(BH_HS+1),BH_UPD_info,0,(BH_VHS+2),0);
-	UPD_CAF(R1.p,Hp-(BH_HS+1));
-	PUSH_STD_UPD_FRAME(Hp-(BH_HS+1),0,0);
-	RetReg=StdUpdRetVecReg;
-	SpB=SpB+4;
-	GRAN_EXEC(16,2,1,8,0);
-	JMP_(s1Bw_entry);
-	FE_
-}
-SET_STATIC_HDR(Test_a_closure,Test_a_info,0,,ED_RO_)
-  , (W_)0, (W_)0
-};
-ghc: module version changed to 1; reason: no old .hi file
diff --git a/ghc/compiler/tests/ccall/cc007.hs b/ghc/compiler/tests/ccall/cc007.hs
deleted file mode 100644
index 42d12608221b..000000000000
--- a/ghc/compiler/tests/ccall/cc007.hs
+++ /dev/null
@@ -1,27 +0,0 @@
---!!! cc007 -- ccall with synonyms, polymorphic type variables and user type variables.
-module Test where
-
-import GlaExts
-
--- Since I messed up the handling of polymorphism originally, I'll
--- explicitly test code with UserSysTyVar (ie an explicit polymorphic
--- signature)
-
-foo = _ccall_ f	`thenADR` \ a -> returnPrimIO (a + 1)
- where 
-   thenADR :: PrimIO a -> (a -> PrimIO b) -> PrimIO b
-   thenADR = thenPrimIO
-
--- and with a PolySysTyVar (ie no explicit signature)
-
-bar = _ccall_ f	`thenADR` \ a -> returnPrimIO (a + 1)
- where 
-   -- thenADR :: PrimIO a -> (a -> PrimIO b) -> PrimIO b
-   thenADR = thenPrimIO
-
--- and with a type synonym
-
-type INT = Int
-barfu :: PrimIO INT
-barfu = _ccall_ b
-
diff --git a/ghc/compiler/tests/ccall/cc007.stderr b/ghc/compiler/tests/ccall/cc007.stderr
deleted file mode 100644
index a5da32ef18cc..000000000000
--- a/ghc/compiler/tests/ccall/cc007.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
- 
-cc007.hs:2: Cannot generalise these overloadings (in a _ccall_):
-		`Foreign.CReturnable t{-a12t-}'
- 
-cc007.hs:2: Cannot generalise these overloadings (in a _ccall_):
-		`Foreign.CReturnable t{-a13c-}'
-
-
-Compilation had errors
diff --git a/ghc/compiler/tests/simplCore/Makefile b/ghc/compiler/tests/simplCore/Makefile
deleted file mode 100644
index ee2596f5ce3a..000000000000
--- a/ghc/compiler/tests/simplCore/Makefile
+++ /dev/null
@@ -1,16 +0,0 @@
-TOP = ../../..
-include $(TOP)/mk/boilerplate.mk
-
-HS_SRCS = $(wildcard *.hs)
-
-SRC_RUNTEST_OPTS += -accept-output -o1 $*.stdout -o2 $*.stderr -x 0
-HC_OPTS += -noC -O -ddump-simpl -dcore-lint
-
-%.o : %.hs
-
-%.o : %.hs
-	$(RUNTEST) $(HC) $(RUNTEST_OPTS) $(HC_OPTS) -c $< -o $@ -osuf $(subst .,,$(suffix $@)) 
-
-all :: $(HS_OBJS)
-
-include $(TOP)/mk/target.mk
diff --git a/ghc/compiler/tests/simplCore/simpl001.hs b/ghc/compiler/tests/simplCore/simpl001.hs
deleted file mode 100644
index c4813656d7bf..000000000000
--- a/ghc/compiler/tests/simplCore/simpl001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
---!!! Desugaring sections with function-type arguments
---  Although this is really a desugaring test, the problem is
--- only tickled by the simplifier
-
--- type Foo a b = a -> (b -> a) -> b
-module Test where
-
-(++++) :: (a -> (b -> a) -> b) -> (a -> (b -> a) -> b) -> a -> (b -> a) -> b
-x ++++ y = y
-
-g a xs = map (++++ a) xs
-
-h b xs = map (b ++++) xs
diff --git a/ghc/compiler/tests/simplCore/simpl001.stderr b/ghc/compiler/tests/simplCore/simpl001.stderr
deleted file mode 100644
index b1ee08d3d8da..000000000000
--- a/ghc/compiler/tests/simplCore/simpl001.stderr
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
-================================================================================
-Simplified:
-++++{-r3h,x-}  :: 
-    _forall_
-    [a{-auX-} b{-auY-}]
-    =>
-    (a{-auX-} -> (b{-auY-} -> a{-auX-}) -> b{-auY-})
-    -> (a{-auX-} -> (b{-auY-} -> a{-auX-}) -> b{-auY-})
-    -> a{-auX-}
-    -> (b{-auY-} -> a{-auX-})
-    -> b{-auY-}
-_A>_ 2 {-# L #-}
-++++{-r3h,x-} =
-    _/\_ a{-sE8-} b{-sE9-} -> \ x_sDl  :: 
-				    a{-sE8-} -> (b{-sE9-} -> a{-sE8-}) -> b{-sE9-}
-				{-# L #-}
-				x_sDl y_sCR  :: 
-					  a{-sE8-} -> (b{-sE9-} -> a{-sE8-}) -> b{-sE9-}
-				      {-# L #-}
-				      y_sCR ->
-	y_sCR
-g{-r3j,x-}  :: 
-    _forall_
-    [a{-avh-} b{-avi-} rk0{-avq-}]
-    =>
-    {PrelBase.Functor{-2b,p-} rk0{-avq-}}
-    -> (a{-avh-} -> (b{-avi-} -> a{-avh-}) -> b{-avi-})
-    -> rk0{-avq-} (a{-avh-} -> (b{-avi-} -> a{-avh-}) -> b{-avi-})
-    -> rk0{-avq-} (a{-avh-} -> (b{-avi-} -> a{-avh-}) -> b{-avi-})
-_A>_ 3 {-# L #-}
-g{-r3j,x-} =
-    _/\_ a{-sEd-} b{-sEe-} rk0{-sEf-} -> \ d.Functor_sDp  :: 
-					       {PrelBase.Functor{-2b,p-} rk0{-sEf-}}
-					   {-# L #-}
-					   d.Functor_sDp a_sDk  :: 
-							     a{-sEd-}
-							     -> (b{-sEe-} -> a{-sEd-})
-							     -> b{-sEe-}
-							 {-# L #-}
-							 a_sDk xs_sDV  :: 
-								   rk0{-sEf-} (a{-sEd-}
-									       -> (b{-sEe-}
-										   -> a{-sEd-})
-									       -> b{-sEe-})
-							       {-# L #-}
-							       xs_sDV ->
-	let {
-	  ds_sDr  :: 
-	      (a{-sEd-} -> (b{-sEe-} -> a{-sEd-}) -> b{-sEe-})
-	      -> a{-sEd-}
-	      -> (b{-sEe-} -> a{-sEd-})
-	      -> b{-sEe-}
-	  _A>_ 1 {-# L #-}
-	  ds_sDr =
-	      \ ds_sDq  :: 
-		    a{-sEd-} -> (b{-sEe-} -> a{-sEd-}) -> b{-sEe-}
-		{-# L #-}
-		ds_sDq ->
-		  a_sDk
-	} in 
-	  d.Functor_sDp
-	      _@_ (a{-sEd-} -> (b{-sEe-} -> a{-sEd-}) -> b{-sEe-})
-	      _@_ (a{-sEd-} -> (b{-sEe-} -> a{-sEd-}) -> b{-sEe-})
-	      ds_sDr
-	      xs_sDV
-h{-r3i,x-}  :: 
-    _forall_
-    [a{-avI-} b{-avK-} rk0{-avT-}]
-    =>
-    {PrelBase.Functor{-2b,p-} rk0{-avT-}}
-    -> (a{-avI-} -> (b{-avK-} -> a{-avI-}) -> b{-avK-})
-    -> rk0{-avT-} (a{-avI-} -> (b{-avK-} -> a{-avI-}) -> b{-avK-})
-    -> rk0{-avT-} (a{-avI-} -> (b{-avK-} -> a{-avI-}) -> b{-avK-})
-_A>_ 3 {-# L #-}
-h{-r3i,x-} =
-    _/\_ a{-sEl-} b{-sEm-} rk0{-sEn-} -> \ d.Functor_sDZ  :: 
-					       {PrelBase.Functor{-2b,p-} rk0{-sEn-}}
-					   {-# L #-}
-					   d.Functor_sDZ b_sEg  :: 
-							     a{-sEl-}
-							     -> (b{-sEm-} -> a{-sEl-})
-							     -> b{-sEm-}
-							 {-# L #-}
-							 b_sEg xs_sEh  :: 
-								   rk0{-sEn-} (a{-sEl-}
-									       -> (b{-sEm-}
-										   -> a{-sEl-})
-									       -> b{-sEm-})
-							       {-# L #-}
-							       xs_sEh ->
-	let {
-	  ds_sE0  :: 
-	      (a{-sEl-} -> (b{-sEm-} -> a{-sEl-}) -> b{-sEm-})
-	      -> a{-sEl-}
-	      -> (b{-sEm-} -> a{-sEl-})
-	      -> b{-sEm-}
-	  _A>_ 1 {-# L #-}
-	  ds_sE0 =
-	      \ ds_sDU  :: 
-		    a{-sEl-} -> (b{-sEm-} -> a{-sEl-}) -> b{-sEm-}
-		{-# L #-}
-		ds_sDU ->
-		  ds_sDU
-	} in 
-	  d.Functor_sDZ
-	      _@_ (a{-sEl-} -> (b{-sEm-} -> a{-sEl-}) -> b{-sEm-})
-	      _@_ (a{-sEl-} -> (b{-sEm-} -> a{-sEl-}) -> b{-sEm-})
-	      ds_sE0
-	      xs_sEh
diff --git a/ghc/compiler/tests/simplCore/simpl002.hs b/ghc/compiler/tests/simplCore/simpl002.hs
deleted file mode 100644
index 578c13a44e42..000000000000
--- a/ghc/compiler/tests/simplCore/simpl002.hs
+++ /dev/null
@@ -1,10 +0,0 @@
---!!! class/instance mumble that failed Lint at one time
---
-module Test where
-class Foo a where
-   op :: Int -> a -> Bool
-
-data Wibble a b c = MkWibble a b c
-
-instance (Foo a, Foo b, Foo c) => Foo (Wibble a b c) where
-    op x y = error "xxx"
diff --git a/ghc/compiler/tests/simplCore/simpl002.stderr b/ghc/compiler/tests/simplCore/simpl002.stderr
deleted file mode 100644
index 49ad874d187a..000000000000
--- a/ghc/compiler/tests/simplCore/simpl002.stderr
+++ /dev/null
@@ -1,138 +0,0 @@
-
-
-================================================================================
-Simplified:
-nrlit_sMT  :: 
-    [PrelBase.Char{-38,p-}]
-{-# L #-}
-nrlit_sMT =
-    PackedString.unpackCString#{-8F,p-}
-	"xxx"
-$d1{-rJ7,x-}  :: 
-    _forall_
-    [a{-r3g-} b{-r3h-} c{-r3i-}]
-    =>
-    {Foo{-r3j,x-} a{-r3g-}}
-    -> {Foo{-r3j,x-} b{-r3h-}}
-    -> {Foo{-r3j,x-} c{-r3i-}}
-    -> {Foo{-r3j,x-} (Wibble{-r3y,x-} a{-r3g-} b{-r3h-} c{-r3i-})}
-_A>_ 3 {-# L #-}
-$d1{-rJ7,x-} =
-    _/\_ a{-sMG-} b{-sMH-} c{-sMI-} -> \ d.Foo_sLN  :: 
-					     {Foo{-r3j,x-} a{-sMG-}}
-					 {-# L #-}
-					 d.Foo_sLN d.Foo_sLM  :: 
-						       {Foo{-r3j,x-} b{-sMH-}}
-						   {-# L #-}
-						   d.Foo_sLM d.Foo_sLL  :: 
-								 {Foo{-r3j,x-} c{-sMI-}}
-							     {-# L #-}
-							     d.Foo_sLL ->
-	let {
-	  op_sLp  :: 
-	      PrelBase.Int{-3g,p-}
-	      -> Wibble{-r3y,x-} a{-sMG-} b{-sMH-} c{-sMI-}
-	      -> PrelBase.Bool{-34,p-}
-	  _A>_ 2 {-# L #-}
-	  op_sLp =
-	      \ x_sLs  :: 
-		    PrelBase.Int{-3g,p-}
-		{-# L #-}
-		x_sLs y_sLq  :: 
-			  Wibble{-r3y,x-} a{-sMG-} b{-sMH-} c{-sMI-}
-		      {-# L #-}
-		      y_sLq ->
-		  IOBase.error{-87,p-}
-		      _@_ PrelBase.Bool{-34,p-} nrlit_sMT } in
-	let {
-	  op_sLO  :: 
-	      PrelBase.Int{-3g,p-}
-	      -> Wibble{-r3y,x-} a{-sMG-} b{-sMH-} c{-sMI-}
-	      -> PrelBase.Bool{-34,p-}
-	  _A>_ 2 {-# L #-}
-	  op_sLO =
-	      op_sLp } in
-	let {
-	  d.Foo_sLP  :: 
-	      {Foo{-r3j,x-} (Wibble{-r3y,x-} a{-sMG-} b{-sMH-} c{-sMI-})}
-	  _A>_ 2 {-# L #-}
-	  d.Foo_sLP =
-	      op_sLp
-	} in 
-	  op_sLp
-$d2{-rJ2,x-}  :: 
-    _forall_
-    [a{-r3s-} b{-r3t-} c{-r3u-}]
-    =>
-    {PrelBase.Eval{-24,p-} (Wibble{-r3y,x-} a{-r3s-} b{-r3t-} c{-r3u-})}
-_A>_ 0 {-# L #-}
-$d2{-rJ2,x-} =
-    _/\_ a{-sMV-} b{-sMW-} c{-sMX-} ->
-	let {
-	  d.Eval_sM2  :: 
-	      {PrelBase.Eval{-24,p-} (Wibble{-r3y,x-} a{-sMV-} b{-sMW-} c{-sMX-})}
-	  {-# L #-}
-	  d.Eval_sM2 =
-	      PrelBase.void{-8G,p-}
-	} in 
-	  PrelBase.void{-8G,p-}
-nrlit_sMU  :: 
-    [PrelBase.Char{-38,p-}]
-{-# L #-}
-nrlit_sMU =
-    PackedString.unpackCString#{-8F,p-}
-	"Class Foo Method op"
-$mop{-rIV,x-}  :: 
-    _forall_
-    [a{-r3w-}]
-    =>
-    {Foo{-r3j,x-} a{-r3w-}}
-    -> PrelBase.Int{-3g,p-}
-    -> a{-r3w-}
-    -> PrelBase.Bool{-34,p-}
-_A>_ 3 {-# L #-}
-$mop{-rIV,x-} =
-    _/\_ a{-sMJ-} -> \ d.Foo_sMg  :: 
-			   {Foo{-r3j,x-} a{-sMJ-}}
-		       {-# L #-}
-		       d.Foo_sMg ->
-	GHCerr.noDefaultMethodError{-8k,p-}
-	    _@_ (PrelBase.Int{-3g,p-} -> a{-sMJ-} -> PrelBase.Bool{-34,p-})
-	    nrlit_sMU
-op{-r3z,x-}  :: 
-    _forall_
-    [a{-r3w-}]
-    =>
-    {Foo{-r3j,x-} a{-r3w-}}
-    -> PrelBase.Int{-3g,p-}
-    -> a{-r3w-}
-    -> PrelBase.Bool{-34,p-}
-_A>_ 1 {-# L #-}
-op{-r3z,x-} =
-    _/\_ a{-sMK-} -> \ tpl_sMf  :: 
-			   {Foo{-r3j,x-} a{-sMK-}}
-		       {-# L #-}
-		       tpl_sMf ->
-	tpl_sMf
-MkWibble{-r3x,x-}{i}  :: 
-    _forall_
-    [a{-r3s-} b{-r3t-} c{-r3u-}]
-    =>
-    a{-r3s-}
-    -> b{-r3t-}
-    -> c{-r3u-}
-    -> Wibble{-r3y,x-} a{-r3s-} b{-r3t-} c{-r3u-}
-_A>_ 3 {-# L #-}
-MkWibble{-r3x,x-}{i} =
-    _/\_ a{-sMO-} b{-sMP-} c{-sMQ-} -> \ tpl_sML  :: 
-					     a{-sMO-}
-					 {-# L #-}
-					 tpl_sML tpl_sMM  :: 
-						     b{-sMP-}
-						 {-# L #-}
-						 tpl_sMM tpl_sMN  :: 
-							     c{-sMQ-}
-							 {-# L #-}
-							 tpl_sMN ->
-	MkWibble{-r3x,x-}{i}
-	    {_@_ a{-sMO-} _@_ b{-sMP-} _@_ c{-sMQ-} tpl_sML tpl_sMM tpl_sMN}
diff --git a/ghc/compiler/tests/stranal/default.lhs b/ghc/compiler/tests/stranal/default.lhs
deleted file mode 100644
index 8557aa69513c..000000000000
--- a/ghc/compiler/tests/stranal/default.lhs
+++ /dev/null
@@ -1,16 +0,0 @@
-> module Test where
-> data Boolean = FF | TT
-> data Pair a b = MkPair a b
-> data LList alpha = Nill | Conss alpha (LList alpha) 
-> data Nat = Zero | Succ Nat
-> data Tree x = Leaf x | Node (Tree x) (Tree x) 
-> data A a = MkA a (A a) 
->
-> append :: LList a -> LList a -> LList a
-> append  xs ys  = case xs of
->                   Conss z zs  -> Conss z (append zs ys) 
->                   v -> ys
-
-
-
-
diff --git a/ghc/compiler/tests/stranal/default.stderr b/ghc/compiler/tests/stranal/default.stderr
deleted file mode 100644
index 1b195587619f..000000000000
--- a/ghc/compiler/tests/stranal/default.stderr
+++ /dev/null
@@ -1,133 +0,0 @@
-
-
---================================================================================
-Simplified:
-`$d5'  :: 
-    `{PrelBase.Eval (Pair a{-r3U-} b{-r3V-})}'
-`$d5' =
-    _/\_ `a{-s1gp-}' `b{-s1gq-}' ->
-	`PrelBase.void'
-`$d4'  :: 
-    `{PrelBase.Eval (LList alpha{-r3S-})}'
-`$d4' =
-    _/\_ `alpha{-s1gr-}' ->
-	`PrelBase.void'
-`$d2'  :: 
-    `{PrelBase.Eval (Tree x{-r3P-})}'
-`$d2' =
-    _/\_ `x{-s1gs-}' ->
-	`PrelBase.void'
-`$d1'  :: 
-    `{PrelBase.Eval (A a{-r3N-})}'
-`$d1' =
-    _/\_ `a{-s1gt-}' ->
-	`PrelBase.void'
-`MkPair'  :: 
-    `a{-r3U-} -> b{-r3V-} -> Pair a{-r3U-} b{-r3V-}'
-`MkPair' =
-    _/\_ `a{-s1gc-}' `b{-s1gd-}' -> \ `tpl'  :: 
-					  `a{-s1gc-}'
-				      `tpl' `tpl'  :: 
-						`b{-s1gd-}'
-					    `tpl' ->
-	`MkPair'
-	    {_@_ `a{-s1gc-}' _@_ `b{-s1gd-}' `tpl' `tpl'}
-`MkA'  :: 
-    `a{-r3N-} -> A a{-r3N-} -> A a{-r3N-}'
-`MkA' =
-    _/\_ `a{-s1ge-}' -> \ `tpl'  :: 
-			      `a{-s1ge-}'
-			  `tpl' `tpl'  :: 
-				    `A a{-s1ge-}'
-				`tpl' ->
-	`MkA'
-	    {_@_ `a{-s1ge-}' `tpl' `tpl'}
-`FF'  :: 
-    `Boolean'
-`FF' =
-    `FF'
-	{}
-`TT'  :: 
-    `Boolean'
-`TT' =
-    `TT'
-	{}
-`Nill'  :: 
-    `LList alpha{-r3S-}'
-`Nill' =
-    _/\_ `alpha{-s1gf-}' ->
-	`Nill'
-	    {_@_ `alpha{-s1gf-}'}
-`Conss'  :: 
-    `alpha{-r3S-} -> LList alpha{-r3S-} -> LList alpha{-r3S-}'
-`Conss' =
-    _/\_ `alpha{-s1gg-}' -> \ `tpl'  :: 
-				  `alpha{-s1gg-}'
-			      `tpl' `tpl'  :: 
-					`LList alpha{-s1gg-}'
-				    `tpl' ->
-	`Conss'
-	    {_@_ `alpha{-s1gg-}' `tpl' `tpl'}
-Rec {
-`append'  :: 
-    `LList a{-aH9-} -> LList a{-aH9-} -> LList a{-aH9-}'
-`append' =
-    _/\_ `a{-s1gh-}' -> \ `xs'  :: 
-			      `LList a{-s1gh-}'
-			  `xs' `ys'  :: 
-				   `LList a{-s1gh-}'
-			       `ys' ->
-	case `xs' of {
-	  `Nill' ->
-	      `ys';
-	  `Conss' `z' `zs' ->
-	      let {
-		`ds'  :: 
-		    `LList a{-s1gh-}'
-		`ds' =
-		    `append'
-			_@_ `a{-s1gh-}' `zs' `ys'
-	      } in 
-		`Conss'
-		    {_@_ `a{-s1gh-}' `z' `ds'};
-	}
-end Rec }
-`Zero'  :: 
-    `Nat'
-`Zero' =
-    `Zero'
-	{}
-`Succ'  :: 
-    `Nat -> Nat'
-`Succ' =
-    \ `tpl'  :: 
-	  `Nat'
-      `tpl' ->
-	`Succ'
-	    {`tpl'}
-`Leaf'  :: 
-    `x{-r3P-} -> Tree x{-r3P-}'
-`Leaf' =
-    _/\_ `x{-s1gl-}' -> \ `tpl'  :: 
-			      `x{-s1gl-}'
-			  `tpl' ->
-	`Leaf'
-	    {_@_ `x{-s1gl-}' `tpl'}
-`Node'  :: 
-    `Tree x{-r3P-} -> Tree x{-r3P-} -> Tree x{-r3P-}'
-`Node' =
-    _/\_ `x{-s1go-}' -> \ `tpl'  :: 
-			      `Tree x{-s1go-}'
-			  `tpl' `tpl'  :: 
-				    `Tree x{-s1go-}'
-				`tpl' ->
-	`Node'
-	    {_@_ `x{-s1go-}' `tpl' `tpl'}
-`$d6'  :: 
-    `{PrelBase.Eval Boolean}'
-`$d6' =
-    `PrelBase.void'
-`$d3'  :: 
-    `{PrelBase.Eval Nat}'
-`$d3' =
-    `PrelBase.void'
diff --git a/ghc/compiler/tests/stranal/fact.lhs b/ghc/compiler/tests/stranal/fact.lhs
deleted file mode 100644
index 20b2256e5633..000000000000
--- a/ghc/compiler/tests/stranal/fact.lhs
+++ /dev/null
@@ -1,3 +0,0 @@
-> module Test where
-> fact :: Int -> Int
-> fact n = if n==0 then 2 else (fact n) * n
diff --git a/ghc/compiler/tests/stranal/fact.stderr b/ghc/compiler/tests/stranal/fact.stderr
deleted file mode 100644
index d4f4b0f1822b..000000000000
--- a/ghc/compiler/tests/stranal/fact.stderr
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
---================================================================================
-Simplified:
-Rec {
-`s1BQ'  :: 
-    `GHC.Int# -> PrelBase.Int'
-`s1BQ' =
-    \ `ww'  :: 
-	  `GHC.Int#'
-      `ww' ->
-	case# `ww' of {
-	  0 ->
-	      `PrelBase.I#'
-		  {2};
-	  `s' ->
-	      case
-		  `s1BQ'
-		      `ww'
-	      of {
-	      `PrelBase.I#' `s1tCY'  ->
-	      case# *#! `s1tCY' `ww' of { `s1tDv' ->
-	      `PrelBase.I#'
-		  {`s1tDv'};};};
-	}
-end Rec }
-`fact'  :: 
-    `PrelBase.Int -> PrelBase.Int'
-`fact' =
-    \ `n'  :: 
-	  `PrelBase.Int'
-      `n' ->
-	case `n' of { `PrelBase.I#' `ww'  ->
-	`s1BQ'
-	    `ww';}
diff --git a/ghc/compiler/tests/stranal/fun.lhs b/ghc/compiler/tests/stranal/fun.lhs
deleted file mode 100644
index 8ab08329633e..000000000000
--- a/ghc/compiler/tests/stranal/fun.lhs
+++ /dev/null
@@ -1,6 +0,0 @@
-> module Test where
-> data Fun = MkFun (Fun -> Fun)
-> data LList a = Nill | Conss a (LList a)
-
-> id :: Fun -> Fun
-> id f = f
diff --git a/ghc/compiler/tests/stranal/fun.stderr b/ghc/compiler/tests/stranal/fun.stderr
deleted file mode 100644
index e69de29bb2d1..000000000000
diff --git a/ghc/compiler/tests/stranal/goo.lhs b/ghc/compiler/tests/stranal/goo.lhs
deleted file mode 100644
index c58b9987613e..000000000000
--- a/ghc/compiler/tests/stranal/goo.lhs
+++ /dev/null
@@ -1,10 +0,0 @@
-> module Test where
-> data Goo a = Gsimpl | Gcompl ([Goo a]) 
-> data Moo a b = Msimple | Mcompl (Moo b a)
-
-
-> idGoo :: Goo a -> Goo a
-> idGoo x = x
-
-> idMoo :: Moo a -> Moo a
-> idMoo x = x
diff --git a/ghc/compiler/tests/stranal/goo.stderr b/ghc/compiler/tests/stranal/goo.stderr
deleted file mode 100644
index e69de29bb2d1..000000000000
diff --git a/ghc/compiler/tests/stranal/ins.lhs b/ghc/compiler/tests/stranal/ins.lhs
deleted file mode 100644
index 71f8ce23ab3e..000000000000
--- a/ghc/compiler/tests/stranal/ins.lhs
+++ /dev/null
@@ -1,27 +0,0 @@
-TEST OF DEFACTORISATION FOR FUNCTIONS THAT DROP 
-             POLYMORPHIC VARIABLES
-
-> module Test where
-> data Boolean = FF | TT
-> data Pair a b = MkPair a b
-> data LList alpha = Nill | Conss alpha (LList alpha) 
-> data Nat = Zero | Succ Nat
-> data Tree x = Leaf x | Node (Tree x) (Tree x) 
-> data A a = MkA a (A a) 
->
-> append :: LList a -> LList a -> LList a
-> append  xs ys  = case xs of
->                   Nill -> ys 
->                   Conss z zs  -> Conss z (append zs ys) 
-
-The following function drops @b@.
-
-> flat :: Tree (Pair a b) -> LList a
-> flat t =  case t of
->               Leaf (MkPair a b) -> Conss a Nill 
->               Node l r -> append (flat l) (flat r)
->
-> fl :: Boolean -> LList Boolean
-> fl x = flat (Leaf (MkPair TT Zero)) 
->
-
diff --git a/ghc/compiler/tests/stranal/ins.stderr b/ghc/compiler/tests/stranal/ins.stderr
deleted file mode 100644
index 641eda7fc0c4..000000000000
--- a/ghc/compiler/tests/stranal/ins.stderr
+++ /dev/null
@@ -1,191 +0,0 @@
-
-
---================================================================================
-Simplified:
-`$d5'  :: 
-    `{PrelBase.Eval (Pair a{-r4b-} b{-r4c-})}'
-`$d5' =
-    _/\_ `a{-s1NX-}' `b{-s1NY-}' ->
-	`PrelBase.void'
-`$d4'  :: 
-    `{PrelBase.Eval (LList alpha{-r49-})}'
-`$d4' =
-    _/\_ `alpha{-s1NZ-}' ->
-	`PrelBase.void'
-`$d2'  :: 
-    `{PrelBase.Eval (Tree x{-r46-})}'
-`$d2' =
-    _/\_ `x{-s1O0-}' ->
-	`PrelBase.void'
-`$d1'  :: 
-    `{PrelBase.Eval (A a{-r44-})}'
-`$d1' =
-    _/\_ `a{-s1O1-}' ->
-	`PrelBase.void'
-`MkPair'  :: 
-    `a{-r4b-} -> b{-r4c-} -> Pair a{-r4b-} b{-r4c-}'
-`MkPair' =
-    _/\_ `a{-s1NI-}' `b{-s1NJ-}' -> \ `tpl'  :: 
-					  `a{-s1NI-}'
-				      `tpl' `tpl'  :: 
-						`b{-s1NJ-}'
-					    `tpl' ->
-	`MkPair'
-	    {_@_ `a{-s1NI-}' _@_ `b{-s1NJ-}' `tpl' `tpl'}
-`MkA'  :: 
-    `a{-r44-} -> A a{-r44-} -> A a{-r44-}'
-`MkA' =
-    _/\_ `a{-s1NK-}' -> \ `tpl'  :: 
-			      `a{-s1NK-}'
-			  `tpl' `tpl'  :: 
-				    `A a{-s1NK-}'
-				`tpl' ->
-	`MkA'
-	    {_@_ `a{-s1NK-}' `tpl' `tpl'}
-`FF'  :: 
-    `Boolean'
-`FF' =
-    `FF'
-	{}
-`TT'  :: 
-    `Boolean'
-`TT' =
-    `TT'
-	{}
-`Nill'  :: 
-    `LList alpha{-r49-}'
-`Nill' =
-    _/\_ `alpha{-s1NL-}' ->
-	`Nill'
-	    {_@_ `alpha{-s1NL-}'}
-`Conss'  :: 
-    `alpha{-r49-} -> LList alpha{-r49-} -> LList alpha{-r49-}'
-`Conss' =
-    _/\_ `alpha{-s1NM-}' -> \ `tpl'  :: 
-				  `alpha{-s1NM-}'
-			      `tpl' `tpl'  :: 
-					`LList alpha{-s1NM-}'
-				    `tpl' ->
-	`Conss'
-	    {_@_ `alpha{-s1NM-}' `tpl' `tpl'}
-Rec {
-`append'  :: 
-    `LList a{-aHq-} -> LList a{-aHq-} -> LList a{-aHq-}'
-`append' =
-    _/\_ `a{-s1NN-}' -> \ `xs'  :: 
-			      `LList a{-s1NN-}'
-			  `xs' `ys'  :: 
-				   `LList a{-s1NN-}'
-			       `ys' ->
-	case `xs' of {
-	  `Nill' ->
-	      `ys';
-	  `Conss' `z' `zs' ->
-	      let {
-		`ds'  :: 
-		    `LList a{-s1NN-}'
-		`ds' =
-		    `append'
-			_@_ `a{-s1NN-}' `zs' `ys'
-	      } in 
-		`Conss'
-		    {_@_ `a{-s1NN-}' `z' `ds'};
-	}
-end Rec }
-Rec {
-`flat'  :: 
-    `Tree (Pair a{-aHT-} b{-aHU-}) -> LList a{-aHT-}'
-`flat' =
-    _/\_ `b{-s1NQ-}' `a{-s1NP-}' -> \ `s'  :: 
-					  `Tree (Pair a{-s1NP-} b{-s1NQ-})'
-				      `s' ->
-	case `s' of {
-	  `Leaf' `ds' ->
-	      case `ds' of { `MkPair' `a' `b'  ->
-	      let {
-		`ds'  :: 
-		    `LList a{-s1NP-}'
-		`ds' =
-		    `Nill'
-			{_@_ `a{-s1NP-}'}
-	      } in 
-		`Conss'
-		    {_@_ `a{-s1NP-}' `a' `ds'};};
-	  `Node' `l' `r' ->
-	      case
-		  `flat'
-		      _@_ `b{-s1NQ-}' _@_ `a{-s1NP-}' `l'
-	      of {
-	      `ds' ->
-	      let {
-		`ds'  :: 
-		    `LList a{-s1NP-}'
-		`ds' =
-		    `flat'
-			_@_ `b{-s1NQ-}' _@_ `a{-s1NP-}' `r'
-	      } in 
-		`append'
-		    _@_ `a{-s1NP-}' `ds' `ds';};
-	}
-end Rec }
-`Zero'  :: 
-    `Nat'
-`Zero' =
-    `Zero'
-	{}
-`Succ'  :: 
-    `Nat -> Nat'
-`Succ' =
-    \ `tpl'  :: 
-	  `Nat'
-      `tpl' ->
-	`Succ'
-	    {`tpl'}
-`Leaf'  :: 
-    `x{-r46-} -> Tree x{-r46-}'
-`Leaf' =
-    _/\_ `x{-s1NU-}' -> \ `tpl'  :: 
-			      `x{-s1NU-}'
-			  `tpl' ->
-	`Leaf'
-	    {_@_ `x{-s1NU-}' `tpl'}
-`Node'  :: 
-    `Tree x{-r46-} -> Tree x{-r46-} -> Tree x{-r46-}'
-`Node' =
-    _/\_ `x{-s1NV-}' -> \ `tpl'  :: 
-			      `Tree x{-s1NV-}'
-			  `tpl' `tpl'  :: 
-				    `Tree x{-s1NV-}'
-				`tpl' ->
-	`Node'
-	    {_@_ `x{-s1NV-}' `tpl' `tpl'}
-`$d6'  :: 
-    `{PrelBase.Eval Boolean}'
-`$d6' =
-    `PrelBase.void'
-`$d3'  :: 
-    `{PrelBase.Eval Nat}'
-`$d3' =
-    `PrelBase.void'
-`s1h2'  :: 
-    `Pair Boolean Nat'
-`s1h2' =
-    `MkPair'
-	{_@_ `Boolean' _@_ `Nat' `TT' `Zero'}
-`s1h7'  :: 
-    `Tree (Pair Boolean Nat)'
-`s1h7' =
-    `Leaf'
-	{_@_ (`Pair' `Boolean' `Nat') `s1h2'}
-`s1l4'  :: 
-    `LList Boolean'
-`s1l4' =
-    `flat'
-	_@_ `Nat' _@_ `Boolean' `s1h7'
-`fl'  :: 
-    `Boolean -> LList Boolean'
-`fl' =
-    \ `x'  :: 
-	  `Boolean'
-      `x' ->
-	`s1l4'
diff --git a/ghc/compiler/tests/stranal/map.lhs b/ghc/compiler/tests/stranal/map.lhs
deleted file mode 100644
index 343e36ad47aa..000000000000
--- a/ghc/compiler/tests/stranal/map.lhs
+++ /dev/null
@@ -1,32 +0,0 @@
-> module Test where
-> data Boolean = FF | TT
-> data Pair a b = MkPair a b
-> data LList alpha = Nill | Conss alpha (LList alpha) 
-> data Nat = Zero | Succ Nat
-> data Tree x = Leaf x | Node (Tree x) (Tree x) 
-> data A a = MkA a (A a) 
-
-> {-
-> map :: (a -> b) -> [a] -> [b]
-> map f xs = case xs of
->              []     -> []
->              (y:ys) -> (f y):(map f ys)
-
-> map_ide :: [[a]] -> [[a]]
-> map_ide = map (\x->x)
->-}
-
-> id :: a -> a
-> id x = x
-
-> idNat :: Nat -> Nat
-> idNat x = x
-
-> idBool :: Boolean -> Boolean
-> idBool x = x
-
-> fun :: (a->b) -> a -> b
-> fun f x = g f
->  where 
->   g f   = f x
-
diff --git a/ghc/compiler/tests/stranal/map.stderr b/ghc/compiler/tests/stranal/map.stderr
deleted file mode 100644
index e69de29bb2d1..000000000000
diff --git a/ghc/compiler/tests/stranal/moo.lhs b/ghc/compiler/tests/stranal/moo.lhs
deleted file mode 100644
index 35967ba27f3c..000000000000
--- a/ghc/compiler/tests/stranal/moo.lhs
+++ /dev/null
@@ -1,6 +0,0 @@
-> module Test where
-> data Moo a b = Msimple | Mcompl (Moo b a)
-
-
-> idMoo :: Moo a -> Moo a
-> idMoo x = x
diff --git a/ghc/compiler/tests/stranal/moo.stderr b/ghc/compiler/tests/stranal/moo.stderr
deleted file mode 100644
index e69de29bb2d1..000000000000
diff --git a/ghc/compiler/tests/stranal/sim.lhs b/ghc/compiler/tests/stranal/sim.lhs
deleted file mode 100644
index 6c52104a9b4f..000000000000
--- a/ghc/compiler/tests/stranal/sim.lhs
+++ /dev/null
@@ -1,103 +0,0 @@
-> module Test where
-> data Boolean = FF | TT
-> data Pair a b = MkPair a b
-> data LList alpha = Nill | Conss alpha (LList alpha) 
-> data Nat = Zero | Succ Nat
-> data Tree x = Leaf x | Node (Tree x) (Tree x) 
-> data A a = MkA a (A a) 
->{-
-> id :: a -> a
-> id x = x      
->
-> idb :: Boolean -> Boolean
-> idb b = b
->
-> swap :: Pair a b -> Pair b a
-> swap t = case t of 
->            MkPair x y -> MkPair y x
->
-> bang :: A (A a) -> Boolean
-> bang x = case x of
->            MkA y ys -> TT
->
-> neg :: Boolean -> Boolean
-> neg b = case b of 
->          FF -> TT 
->          TT -> FF 
->
-> null :: LList x -> Boolean
-> null l = case l of 
->            Nill -> TT
->            _ -> FF
->
-> loop :: Boolean -> a
-> loop b = loop b
->-}
-> idl ::  LList a -> LList a
-> idl xs  = case xs of
->            Conss y ys -> Conss y (idl ys)
->            _ -> Nill 
->{-
-> idn :: Nat -> Nat
-> idn n = case n of
->           Zero -> Zero 
->           Succ m -> Succ (idn m)
->
-> add :: Nat -> Nat -> Nat
-> add a b = case a of 
->             Zero -> b
->             Succ c -> Succ (add c b) 
->
-> length :: LList a -> Nat
-> length xs = case xs of 
->               Nill -> Zero
->               Conss y ys  -> Succ(length ys) 
->
-> before :: LList Nat -> LList Nat
-> before xs = case xs of
->               Nill -> Nill
->               Conss y ys -> case y of 
->                              Zero -> Nill
->                              Succ n -> Conss y (before ys)     
->
-> reverse :: LList a -> LList a
-> reverse rs = case rs of
->                Nill -> Nill
->                Conss y ys -> append (reverse ys) (Conss y Nill) 
->
-> f :: Nat -> Nat
-> f n = case n of
->         Zero -> Zero
->         Succ m -> Succ (g m)
->
-> g :: Nat -> Nat
-> g n = case n of
->        Zero -> Zero
->        Succ m -> Succ (f m)
->
-> append :: LList a -> LList a -> LList a
-> append  xs ys  = case xs of
->                   Nill -> ys 
->                   Conss z zs  -> Conss z (append zs ys) 
->
-> flatten :: Tree alpha -> LList alpha
-> flatten t = case t of
->               Leaf x   -> Conss x Nill 
->               Node l r -> append (flatten l) (flatten r)
->
-> sum :: Tree Nat -> Nat
-> sum t = case t of
->           Leaf t   -> t
->           Node l r -> add (sum l) (sum r) 
->
-> suml :: LList Nat -> Nat
-> suml Nill = Zero
-> suml (Conss n ns) = add n (suml ns)
->
-> map :: (a -> b) -> LList a -> LList b
-> map f xs = case xs of
->              Nill -> Nill
->              Conss y ys -> Conss (f y) (map f ys)
->-}
-
-
diff --git a/ghc/compiler/tests/stranal/sim.stderr b/ghc/compiler/tests/stranal/sim.stderr
deleted file mode 100644
index cd436017ebe5..000000000000
--- a/ghc/compiler/tests/stranal/sim.stderr
+++ /dev/null
@@ -1,132 +0,0 @@
-
-
---================================================================================
-Simplified:
-`$d5'  :: 
-    `{PrelBase.Eval (Pair a{-r3R-} b{-r3S-})}'
-`$d5' =
-    _/\_ `a{-s1g3-}' `b{-s1g4-}' ->
-	`PrelBase.void'
-`$d4'  :: 
-    `{PrelBase.Eval (LList alpha{-r3P-})}'
-`$d4' =
-    _/\_ `alpha{-s1g5-}' ->
-	`PrelBase.void'
-`$d2'  :: 
-    `{PrelBase.Eval (Tree x{-r3M-})}'
-`$d2' =
-    _/\_ `x{-s1g6-}' ->
-	`PrelBase.void'
-`$d1'  :: 
-    `{PrelBase.Eval (A a{-r3K-})}'
-`$d1' =
-    _/\_ `a{-s1g7-}' ->
-	`PrelBase.void'
-`MkPair'  :: 
-    `a{-r3R-} -> b{-r3S-} -> Pair a{-r3R-} b{-r3S-}'
-`MkPair' =
-    _/\_ `a{-s1fQ-}' `b{-s1fR-}' -> \ `tpl'  :: 
-					  `a{-s1fQ-}'
-				      `tpl' `tpl'  :: 
-						`b{-s1fR-}'
-					    `tpl' ->
-	`MkPair'
-	    {_@_ `a{-s1fQ-}' _@_ `b{-s1fR-}' `tpl' `tpl'}
-`MkA'  :: 
-    `a{-r3K-} -> A a{-r3K-} -> A a{-r3K-}'
-`MkA' =
-    _/\_ `a{-s1fS-}' -> \ `tpl'  :: 
-			      `a{-s1fS-}'
-			  `tpl' `tpl'  :: 
-				    `A a{-s1fS-}'
-				`tpl' ->
-	`MkA'
-	    {_@_ `a{-s1fS-}' `tpl' `tpl'}
-`FF'  :: 
-    `Boolean'
-`FF' =
-    `FF'
-	{}
-`TT'  :: 
-    `Boolean'
-`TT' =
-    `TT'
-	{}
-`Nill'  :: 
-    `LList alpha{-r3P-}'
-`Nill' =
-    _/\_ `alpha{-s1fT-}' ->
-	`Nill'
-	    {_@_ `alpha{-s1fT-}'}
-`Conss'  :: 
-    `alpha{-r3P-} -> LList alpha{-r3P-} -> LList alpha{-r3P-}'
-`Conss' =
-    _/\_ `alpha{-s1fU-}' -> \ `tpl'  :: 
-				  `alpha{-s1fU-}'
-			      `tpl' `tpl'  :: 
-					`LList alpha{-s1fU-}'
-				    `tpl' ->
-	`Conss'
-	    {_@_ `alpha{-s1fU-}' `tpl' `tpl'}
-Rec {
-`idl'  :: 
-    `LList a{-aH5-} -> LList a{-aH5-}'
-`idl' =
-    _/\_ `a{-s1fV-}' -> \ `xs'  :: 
-			      `LList a{-s1fV-}'
-			  `xs' ->
-	case `xs' of {
-	  `Nill' ->
-	      `Nill'
-		  {_@_ `a{-s1fV-}'};
-	  `Conss' `y' `ys' ->
-	      let {
-		`ds'  :: 
-		    `LList a{-s1fV-}'
-		`ds' =
-		    `idl'
-			_@_ `a{-s1fV-}' `ys'
-	      } in 
-		`Conss'
-		    {_@_ `a{-s1fV-}' `y' `ds'};
-	}
-end Rec }
-`Zero'  :: 
-    `Nat'
-`Zero' =
-    `Zero'
-	{}
-`Succ'  :: 
-    `Nat -> Nat'
-`Succ' =
-    \ `tpl'  :: 
-	  `Nat'
-      `tpl' ->
-	`Succ'
-	    {`tpl'}
-`Leaf'  :: 
-    `x{-r3M-} -> Tree x{-r3M-}'
-`Leaf' =
-    _/\_ `x{-s1fZ-}' -> \ `tpl'  :: 
-			      `x{-s1fZ-}'
-			  `tpl' ->
-	`Leaf'
-	    {_@_ `x{-s1fZ-}' `tpl'}
-`Node'  :: 
-    `Tree x{-r3M-} -> Tree x{-r3M-} -> Tree x{-r3M-}'
-`Node' =
-    _/\_ `x{-s1g2-}' -> \ `tpl'  :: 
-			      `Tree x{-s1g2-}'
-			  `tpl' `tpl'  :: 
-				    `Tree x{-s1g2-}'
-				`tpl' ->
-	`Node'
-	    {_@_ `x{-s1g2-}' `tpl' `tpl'}
-`$d6'  :: 
-    `{PrelBase.Eval Boolean}'
-`$d6' =
-    `PrelBase.void'
-`$d3'  :: 
-    `{PrelBase.Eval Nat}'
-`$d3' =
-    `PrelBase.void'
diff --git a/ghc/compiler/tests/stranal/syn.lhs b/ghc/compiler/tests/stranal/syn.lhs
deleted file mode 100644
index 59d6bacf8f1d..000000000000
--- a/ghc/compiler/tests/stranal/syn.lhs
+++ /dev/null
@@ -1,15 +0,0 @@
-THIS TEST IS FOR TYPE SYNONIMS AND FACTORISATION IN THEIR PRESENCE.
-
-> module Test where
-> data M a = A | B a (M a)
-> data L a = N | C a (Syn a)
-> type Syn b = L b
->
-> idL :: L (Syn c) -> L (Syn c)
-> idL N       = N
-> idL (C x l) = C x (idL l) 
->
-> idM:: M (L (Syn x)) -> M (L (Syn x))
-> idM A       = A
-> idM (B x l) = B (idL x) (idM l) 
-
diff --git a/ghc/compiler/tests/stranal/syn.stderr b/ghc/compiler/tests/stranal/syn.stderr
deleted file mode 100644
index 6300c53be5de..000000000000
--- a/ghc/compiler/tests/stranal/syn.stderr
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
---================================================================================
-Simplified:
-`$d2'  :: 
-    `{PrelBase.Eval (M a{-r3H-})}'
-`$d2' =
-    _/\_ `a{-s191-}' ->
-	`PrelBase.void'
-`$d1'  :: 
-    `{PrelBase.Eval (L a{-r3F-})}'
-`$d1' =
-    _/\_ `a{-s192-}' ->
-	`PrelBase.void'
-`A'  :: 
-    `M a{-r3H-}'
-`A' =
-    _/\_ `a{-s18T-}' ->
-	`A' {_@_ `a{-s18T-}'}
-`B'  :: 
-    `a{-r3H-} -> M a{-r3H-} -> M a{-r3H-}'
-`B' =
-    _/\_ `a{-s18U-}' -> \ `tpl'  :: 
-			      `a{-s18U-}'
-			  `tpl' `tpl'  :: 
-				    `M a{-s18U-}'
-				`tpl' ->
-	`B' {_@_ `a{-s18U-}' `tpl' `tpl'}
-`N'  :: 
-    `L a{-r3F-}'
-`N' =
-    _/\_ `a{-s18V-}' ->
-	`N' {_@_ `a{-s18V-}'}
-`C'  :: 
-    `a{-r3F-} -> Syn a{-r3F-} -> L a{-r3F-}'
-`C' =
-    _/\_ `a{-s18W-}' -> \ `tpl'  :: 
-			      `a{-s18W-}'
-			  `tpl' `tpl'  :: 
-				    `Syn a{-s18W-}'
-				`tpl' ->
-	`C' {_@_ `a{-s18W-}' `tpl' `tpl'}
-Rec {
-`idL'  :: 
-    `L (Syn c{-aGI-}) -> L (Syn c{-aGI-})'
-`idL' =
-    _/\_ `c{-s18X-}' -> \ `ds'  :: 
-			      `L (Syn c{-s18X-})'
-			  `ds' ->
-	case `ds' of {
-	  `N' ->
-	      `N' {_@_ (`Syn' `c{-s18X-}')};
-	  `C' `x' `l' ->
-	      let {
-		`ds'  :: 
-		    `L (Syn c{-s18X-})'
-		`ds' =
-		    `idL'
-			_@_ `c{-s18X-}' `l'
-	      } in 
-		`C' {_@_ (`Syn' `c{-s18X-}') `x' `ds'};
-	}
-end Rec }
-Rec {
-`idM'  :: 
-    `M (L (Syn x{-aH8-})) -> M (L (Syn x{-aH8-}))'
-`idM' =
-    _/\_ `x{-s18Z-}' -> \ `ds'  :: 
-			      `M (L (Syn x{-s18Z-}))'
-			  `ds' ->
-	case `ds' of {
-	  `A' ->
-	      `A' {_@_ (`L' (`Syn' `x{-s18Z-}'))};
-	  `B' `x' `l' ->
-	      let {
-		`ds'  :: 
-		    `L (Syn x{-s18Z-})'
-		`ds' =
-		    `idL'
-			_@_ `x{-s18Z-}' `x' } in
-	      let {
-		`ds'  :: 
-		    `M (L (Syn x{-s18Z-}))'
-		`ds' =
-		    `idM'
-			_@_ `x{-s18Z-}' `l'
-	      } in 
-		`B' {_@_ (`L' (`Syn' `x{-s18Z-}')) `ds' `ds'};
-	}
-end Rec }
diff --git a/ghc/compiler/tests/stranal/test.lhs b/ghc/compiler/tests/stranal/test.lhs
deleted file mode 100644
index f89509ab5ed7..000000000000
--- a/ghc/compiler/tests/stranal/test.lhs
+++ /dev/null
@@ -1,6 +0,0 @@
-> module Test where
-> data LList t = Nill | Conss t (LList t)
-> data BBool = TTrue | FFalse
-
-> f Nill = TTrue
-> f (Conss a as) = FFalse
diff --git a/ghc/compiler/tests/stranal/test.stderr b/ghc/compiler/tests/stranal/test.stderr
deleted file mode 100644
index 6140fc17f684..000000000000
--- a/ghc/compiler/tests/stranal/test.stderr
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
---================================================================================
-Simplified:
-`$d2'  :: 
-    `{PrelBase.Eval (LList t{-r3s-})}'
-`$d2' =
-    _/\_ `t{-sUf-}' ->
-	`PrelBase.void'
-`Nill'  :: 
-    `LList t{-r3s-}'
-`Nill' =
-    _/\_ `t{-sUc-}' ->
-	`Nill'
-	    {_@_ `t{-sUc-}'}
-`Conss'  :: 
-    `t{-r3s-} -> LList t{-r3s-} -> LList t{-r3s-}'
-`Conss' =
-    _/\_ `t{-sUd-}' -> \ `tpl'  :: 
-			     `t{-sUd-}'
-			 `tpl' `tpl'  :: 
-				   `LList t{-sUd-}'
-			       `tpl' ->
-	`Conss'
-	    {_@_ `t{-sUd-}' `tpl' `tpl'}
-`TTrue'  :: 
-    `BBool'
-`TTrue' =
-    `TTrue'
-	{}
-`FFalse'  :: 
-    `BBool'
-`FFalse' =
-    `FFalse'
-	{}
-`f'  :: 
-    `LList t{-aGi-} -> BBool'
-`f' =
-    _/\_ `t{-sUe-}' -> \ `ds'  :: 
-			     `LList t{-sUe-}'
-			 `ds' ->
-	case `ds' of {
-	  `Nill' ->
-	      `TTrue'
-		  {};
-	  `Conss' `a' `as' ->
-	      `FFalse'
-		  {};
-	}
-`$d1'  :: 
-    `{PrelBase.Eval BBool}'
-`$d1' =
-    `PrelBase.void'
diff --git a/ghc/compiler/tests/stranal/tst.lhs b/ghc/compiler/tests/stranal/tst.lhs
deleted file mode 100644
index edaf20dfc128..000000000000
--- a/ghc/compiler/tests/stranal/tst.lhs
+++ /dev/null
@@ -1,3 +0,0 @@
-> module Test where
-> a :: [a] -> [[a]]
-> a x = [x]
diff --git a/ghc/compiler/tests/stranal/tst.stderr b/ghc/compiler/tests/stranal/tst.stderr
deleted file mode 100644
index 7461d704f433..000000000000
--- a/ghc/compiler/tests/stranal/tst.stderr
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
---================================================================================
-Simplified:
-`a'  :: 
-    `[a{-amL-}] -> [[a{-amL-}]]'
-`a' =
-    _/\_ `a{-srv-}' -> \ `s'  :: 
-			     `[a{-srv-}]'
-			 `s' ->
-	let {
-	  `ds'  :: 
-	      `[[a{-srv-}]]'
-	  `ds' =
-	      `PrelBase.[]'
-		  {_@_ [`a{-srv-}']}
-	} in 
-	  `PrelBase.:'
-	      {_@_ [`a{-srv-}'] `s' `ds'}
diff --git a/ghc/compiler/tests/stranal/unu.lhs b/ghc/compiler/tests/stranal/unu.lhs
deleted file mode 100644
index da6370cdc3f9..000000000000
--- a/ghc/compiler/tests/stranal/unu.lhs
+++ /dev/null
@@ -1,76 +0,0 @@
-> module Test where
-> data Boolean = FF | TT
-> data Pair a b = Mkpair a b
-> data LList alpha = Nill | Conss alpha (LList alpha) 
-> data Nat = Zero | Succ Nat
-> data Tree t = Leaf t | Node (Tree t) (Tree t) 
-> data A a = MkA a (A a) 
-> data Foo baz = MkFoo (Foo (Foo baz))
->{-
-> append1 :: LList a -> LList a -> LList a
-> append1 xs ys = append2 xs
->   where
->     append2 xs = case xs of
->                    Nill -> ys
->                    Conss x xs -> Conss x (append3 xs)
->     append3 xs = case xs of
->                    Nill -> ys
->                    Conss x xs -> Conss x (append2 xs)
->
-> loop :: a -> a
-> loop x =  loop x
->
-> hd :: LList b -> b
-> hd Nill         = loop
-> hd (Conss y ys) = y
->
-> hdb :: LList (LList b) -> LList b
-> hdb = hd
->
-> append :: [a] -> [a] -> [a]
-> append [] ys     = ys
-> append (x:xs) ys = x:(append xs ys)
-> 
-> f :: [a] -> [a]
-> f y = append x (f y)
->   where  x = append x (f y)
->-}
-> app :: LList a -> LList a -> LList a
-> app Nill Nill = Nill
-> app  xs ys  = case xs of
->                 Nill -> ys 
->                 Conss z zs  -> Conss z (app zs ys) 
->{-
-> app :: LList a -> LList a -> LList a
-> app  xs ys = case xs of
->               Nill -> case ys of
->                        Nill -> Nill
->                        Conss u us -> ap 
->               Conss a as -> ap 
->  where ap = case xs of
->              Nill -> ys 
->              Conss z zs  -> Conss z (app zs ys) 
->
-> app :: LList a -> LList a -> LList a
-> app  xs ys = case xs of
->               Nill -> case ys of
->                        Nill -> Nill
->                        Conss u us -> ap xs ys
->               Conss a as -> ap xs ys
->
-> ap xs ys = case xs of
->              Nill -> ys 
->              Conss z zs  -> Conss z (app zs ys) 
->
-> ap :: LList a -> LList a -> LList a
-> ap  xs ys  = case xs of
->                 Nill -> ys 
->                 Conss z zs  -> Conss z (ap zs ys) 
->
-> app :: LList a -> LList a -> LList a
-> app  xs ys = case xs of
->               Nill -> case ys of
->                        Nill -> Nill
->                        Conss u us -> ap xs ys
->               Conss a as -> ap xs ys
->-}
diff --git a/ghc/compiler/tests/stranal/unu.stderr b/ghc/compiler/tests/stranal/unu.stderr
deleted file mode 100644
index 6e8d06ff5ee6..000000000000
--- a/ghc/compiler/tests/stranal/unu.stderr
+++ /dev/null
@@ -1,153 +0,0 @@
-
-
---================================================================================
-Simplified:
-`$d6'  :: 
-    `{PrelBase.Eval (Pair a{-r3Z-} b{-r40-})}'
-`$d6' =
-    _/\_ `a{-s1oF-}' `b{-s1oG-}' ->
-	`PrelBase.void'
-`$d5'  :: 
-    `{PrelBase.Eval (LList alpha{-r3X-})}'
-`$d5' =
-    _/\_ `alpha{-s1oH-}' ->
-	`PrelBase.void'
-`$d3'  :: 
-    `{PrelBase.Eval (Tree t{-r3U-})}'
-`$d3' =
-    _/\_ `t{-s1oI-}' ->
-	`PrelBase.void'
-`$d2'  :: 
-    `{PrelBase.Eval (A a{-r3S-})}'
-`$d2' =
-    _/\_ `a{-s1oJ-}' ->
-	`PrelBase.void'
-`$d1'  :: 
-    `{PrelBase.Eval (Foo baz{-r3Q-})}'
-`$d1' =
-    _/\_ `baz{-s1oK-}' ->
-	`PrelBase.void'
-`Mkpair'  :: 
-    `a{-r3Z-} -> b{-r40-} -> Pair a{-r3Z-} b{-r40-}'
-`Mkpair' =
-    _/\_ `a{-s1op-}' `b{-s1oq-}' -> \ `tpl'  :: 
-					  `a{-s1op-}'
-				      `tpl' `tpl'  :: 
-						`b{-s1oq-}'
-					    `tpl' ->
-	`Mkpair'
-	    {_@_ `a{-s1op-}' _@_ `b{-s1oq-}' `tpl' `tpl'}
-`MkA'  :: 
-    `a{-r3S-} -> A a{-r3S-} -> A a{-r3S-}'
-`MkA' =
-    _/\_ `a{-s1or-}' -> \ `tpl'  :: 
-			      `a{-s1or-}'
-			  `tpl' `tpl'  :: 
-				    `A a{-s1or-}'
-				`tpl' ->
-	`MkA'
-	    {_@_ `a{-s1or-}' `tpl' `tpl'}
-`MkFoo'  :: 
-    `Foo (Foo baz{-r3Q-}) -> Foo baz{-r3Q-}'
-`MkFoo' =
-    _/\_ `baz{-s1os-}' -> \ `tpl'  :: 
-				`Foo (Foo baz{-s1os-})'
-			    `tpl' ->
-	`MkFoo'
-	    {_@_ `baz{-s1os-}' `tpl'}
-`FF'  :: 
-    `Boolean'
-`FF' =
-    `FF'
-	{}
-`TT'  :: 
-    `Boolean'
-`TT' =
-    `TT'
-	{}
-`Nill'  :: 
-    `LList alpha{-r3X-}'
-`Nill' =
-    _/\_ `alpha{-s1ot-}' ->
-	`Nill'
-	    {_@_ `alpha{-s1ot-}'}
-`Conss'  :: 
-    `alpha{-r3X-} -> LList alpha{-r3X-} -> LList alpha{-r3X-}'
-`Conss' =
-    _/\_ `alpha{-s1ou-}' -> \ `tpl'  :: 
-				  `alpha{-s1ou-}'
-			      `tpl' `tpl'  :: 
-					`LList alpha{-s1ou-}'
-				    `tpl' ->
-	`Conss'
-	    {_@_ `alpha{-s1ou-}' `tpl' `tpl'}
-Rec {
-`app'  :: 
-    `LList a{-aHn-} -> LList a{-aHn-} -> LList a{-aHn-}'
-`app' =
-    _/\_ `a{-s1ov-}' -> \ `ds'  :: 
-			      `LList a{-s1ov-}'
-			  `ds' `ds'  :: 
-				   `LList a{-s1ov-}'
-			       `ds' ->
-	case `ds' of {
-	  `Conss' `ds' `ds' ->
-	      let {
-		`ds'  :: 
-		    `LList a{-s1ov-}'
-		`ds' =
-		    `app'
-			_@_ `a{-s1ov-}' `ds' `ds'
-	      } in 
-		`Conss'
-		    {_@_ `a{-s1ov-}' `ds' `ds'};
-	  `Nill' ->
-	      case `ds' of {
-		`Conss' `ds' `ds' ->
-		    `Conss'
-			{_@_ `a{-s1ov-}' `ds' `ds'};
-		`Nill' ->
-		    `Nill'
-			{_@_ `a{-s1ov-}'};
-	      };
-	}
-end Rec }
-`Zero'  :: 
-    `Nat'
-`Zero' =
-    `Zero'
-	{}
-`Succ'  :: 
-    `Nat -> Nat'
-`Succ' =
-    \ `tpl'  :: 
-	  `Nat'
-      `tpl' ->
-	`Succ'
-	    {`tpl'}
-`Leaf'  :: 
-    `t{-r3U-} -> Tree t{-r3U-}'
-`Leaf' =
-    _/\_ `t{-s1oB-}' -> \ `tpl'  :: 
-			      `t{-s1oB-}'
-			  `tpl' ->
-	`Leaf'
-	    {_@_ `t{-s1oB-}' `tpl'}
-`Node'  :: 
-    `Tree t{-r3U-} -> Tree t{-r3U-} -> Tree t{-r3U-}'
-`Node' =
-    _/\_ `t{-s1oE-}' -> \ `tpl'  :: 
-			      `Tree t{-s1oE-}'
-			  `tpl' `tpl'  :: 
-				    `Tree t{-s1oE-}'
-				`tpl' ->
-	`Node'
-	    {_@_ `t{-s1oE-}' `tpl' `tpl'}
-`$d7'  :: 
-    `{PrelBase.Eval Boolean}'
-`$d7' =
-    `PrelBase.void'
-`$d4'  :: 
-    `{PrelBase.Eval Nat}'
-`$d4' =
-    `PrelBase.void'
-- 
GitLab