\section[PrimOp]{Primitive operations (machine-level)}
\begin{code}
+{-# OPTIONS -w #-}
+-- 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
+-- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
+-- for details
+
module PrimOp (
PrimOp(..), allThePrimOps,
primOpType, primOpSig,
primOpTag, maxPrimOpTag, primOpOcc,
+ tagToEnumKey,
+
primOpOutOfLine, primOpNeedsWrapper,
primOpOkForSpeculation, primOpIsCheap, primOpIsDupable,
import Type ( Type, mkForAllTys, mkFunTy, mkFunTys, tyConAppTyCon,
typePrimRep )
import BasicTypes ( Arity, Boxity(..) )
+import Unique ( Unique, mkPrimOpIdUnique )
import Outputable
import FastTypes
\end{code}
#include "primop-list.hs-incl"
\end{code}
+\begin{code}
+tagToEnumKey :: Unique
+tagToEnumKey = mkPrimOpIdUnique (primOpTag TagToEnumOp)
+\end{code}
+
+
+
%************************************************************************
%* *
\subsection[PrimOp-info]{The essential info about each @PrimOp@}