X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fprelude%2FPrimOp.lhs;h=61ccc8dd4adfd339e423cb188daa82e3ed0a39e8;hb=6c095bfa3c8c81b52ad92853acd326453d320d7b;hp=a98e3a05f7e7c32096cdc61de73cde48c85ce86e;hpb=02de8fdc3a3dc68071777366ca978e2d0db752e8;p=ghc-hetmet.git diff --git a/compiler/prelude/PrimOp.lhs b/compiler/prelude/PrimOp.lhs index a98e3a0..61ccc8d 100644 --- a/compiler/prelude/PrimOp.lhs +++ b/compiler/prelude/PrimOp.lhs @@ -4,7 +4,7 @@ \section[PrimOp]{Primitive operations (machine-level)} \begin{code} -{-# OPTIONS -w #-} +{-# OPTIONS -fno-warn-unused-binds #-} -- The above warning supression flag is a temporary kludge. -- While working on this module you are encouraged to remove it and fix -- any warnings in the module. See @@ -39,6 +39,7 @@ import BasicTypes ( Arity, Boxity(..) ) import Unique ( Unique, mkPrimOpIdUnique ) import Outputable import FastTypes +import FastString \end{code} %************************************************************************ @@ -130,9 +131,12 @@ data PrimOpInfo [Type] Type +mkDyadic, mkMonadic, mkCompare :: FastString -> Type -> PrimOpInfo mkDyadic str ty = Dyadic (mkVarOccFS str) ty mkMonadic str ty = Monadic (mkVarOccFS str) ty mkCompare str ty = Compare (mkVarOccFS str) ty + +mkGenPrimOp :: FastString -> [TyVar] -> [Type] -> Type -> PrimOpInfo mkGenPrimOp str tvs tys ty = GenPrimOp (mkVarOccFS str) tvs tys ty \end{code} @@ -282,12 +286,6 @@ These primops are pretty wierd. The constraints aren't currently checked by the front end, but the code generator will fall over if they aren't satisfied. -\begin{code} -#ifdef DEBUG -primOpInfo op = pprPanic "primOpInfo:" (ppr op) -#endif -\end{code} - %************************************************************************ %* * \subsubsection[PrimOp-ool]{Which PrimOps are out-of-line} @@ -464,6 +462,7 @@ commutableOp :: PrimOp -> Bool Utils: \begin{code} +dyadic_fun_ty, monadic_fun_ty, compare_fun_ty :: Type -> Type dyadic_fun_ty ty = mkFunTys [ty, ty] ty monadic_fun_ty ty = mkFunTy ty ty compare_fun_ty ty = mkFunTys [ty, ty] boolTy