[project @ 2001-08-22 12:24:41 by simonmar]
[ghc-hetmet.git] / ghc / tests / programs / jeff-bug / ROB_insert.hs
diff --git a/ghc/tests/programs/jeff-bug/ROB_insert.hs b/ghc/tests/programs/jeff-bug/ROB_insert.hs
deleted file mode 100644 (file)
index d443fd4..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-module ROB_insert(insert)  where
-
-import Hawk
-import Trans
-import LazyST
-
-import qualified RF 
-import qualified AQ as Q
-import qualified RAT
-import AQ(AQ)
-import RAT(RAT)
-import RF(RF) 
-import Utils
-
-
-import DLX
-
-
-{-
-insert :: (Register r,Word w) => 
-     RAT st r Int -> AQ st (VTrans r w) -> 
-     RF st r w -> [Trans StandardOp r w] -> ST st [VTrans r w] 
--}
-insert rat q regfile instrs 
-  = mapM setAndSubst instrs
-   where 
-   setAndSubst t  =
-       do { (reg,alias) <- bind q t
-          ; src <- mapM (RAT.replace rat) $ getSrc t
-          ; let info = map convert $ getInfo t
-          ; let op = getOp t
-          ; RAT.write rat reg alias
-          ; dest <- mapM (RAT.replace rat) $ getDst t
-          ; new <- regRead q regfile $ Trans dest op src info
-          ; Q.enQueue q new
-          ; return $ new
-          }
-   bind q trans = Q.assignAddr q (head . getDstRegs $ trans)
-
-{-
-regRead :: (Register r,Word w) => AQ s (VTrans r w) -> RF s r w -> 
-                         VTrans r w -> ST s (VTrans r w)
--}
-regRead q file t  
-  = do { cells <- mapM subst (getSrcRegs t)
-       ; return $ fillInSrcCells t cells
-       }
-   where 
-   subst (Virtual n x) 
-     = do { v <- liftST $ Q.getQVal q n
-          ; t <- liftEx v
-          ; [Reg _ val] <- return $ getDst t
-          ; return $ Reg (Virtual n x) val
-          }
-       `handle` (Reg (Virtual n x) NotKnown)
-   subst (Real r) 
-     = do { val <- RF.read file r
-          ; return $ Reg (Real r) (Val val)
-          }
-