\begin{code}
{-# OPTIONS_GHC -funbox-strict-fields #-}
-{-# 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 ByteCodeInstr (
BCInstr(..), ProtoBCO(..), bciStackUse, BreakInfo (..)
) where
import PrimOp
import SMRep
-import GHC.Ptr
-
import Module (Module)
import GHC.Exts
| ALLOC_AP !Int -- make an AP with this many payload words
| ALLOC_AP_NOUPD !Int -- make an AP_NOUPD with this many payload words
| ALLOC_PAP !Int !Int -- make a PAP with this arity / payload words
- | MKAP !Int{-ptr to AP is this far down stack-} !Int{-# words-}
- | MKPAP !Int{-ptr to PAP is this far down stack-} !Int{-# words-}
+ | MKAP !Int{-ptr to AP is this far down stack-} !Int{-number of words-}
+ | MKPAP !Int{-ptr to PAP is this far down stack-} !Int{-number of words-}
| UNPACK !Int -- unpack N words from t.o.s Constr
| PACK DataCon !Int
-- after assembly, the DataCon is an index into the
ppr ENTER = text "ENTER"
ppr RETURN = text "RETURN"
ppr (RETURN_UBX pk) = text "RETURN_UBX " <+> ppr pk
- ppr (BRK_FUN breakArray index info) = text "BRK_FUN" <+> text "<array>" <+> int index <+> ppr info
+ ppr (BRK_FUN _breakArray index info) = text "BRK_FUN" <+> text "<array>" <+> int index <+> ppr info
-- -----------------------------------------------------------------------------
-- The stack use, in words, of each bytecode insn. These _must_ be