<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--Rendered using the Haskell Html Library v0.2--> <HTML ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE >Cmm</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ><SCRIPT TYPE="text/javascript" >window.onload = function () {setSynopsis("mini_Cmm.html")};</SCRIPT ></HEAD ><BODY ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="topbar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title" >ghc-6.12.3: The GHC API</TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A ></TD ><TD CLASS="topbut" ><A HREF="doc-index.html" >Index</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="modulebar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><FONT SIZE="6" >Cmm</FONT ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Synopsis</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >newtype</SPAN > <A HREF="#t%3AGenCmm" >GenCmm</A > d h g = <A HREF="#v%3ACmm" >Cmm</A > [<A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ACmm" >Cmm</A > = <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > <A HREF="Cmm.html#t%3ACmmInfo" >CmmInfo</A > (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ARawCmm" >RawCmm</A > = <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > [<A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A >] (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGenCmmTop" >GenCmmTop</A > d h g </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACmmProc" >CmmProc</A > h <A HREF="CLabel.html#t%3ACLabel" >CLabel</A > <A HREF="Cmm.html#t%3ACmmFormals" >CmmFormals</A > g</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmData" >CmmData</A > <A HREF="Cmm.html#t%3ASection" >Section</A > [d]</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ACmmTop" >CmmTop</A > = <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > <A HREF="Cmm.html#t%3ACmmInfo" >CmmInfo</A > (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ARawCmmTop" >RawCmmTop</A > = <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > [<A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A >] (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >newtype</SPAN > <A HREF="#t%3AListGraph" >ListGraph</A > i = <A HREF="#v%3AListGraph" >ListGraph</A > [<A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AcmmMapGraph" >cmmMapGraph</A > :: (g -> g') -> <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g -> <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g'</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AcmmTopMapGraph" >cmmTopMapGraph</A > :: (g -> g') -> <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g -> <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g'</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AcmmMapGraphM" >cmmMapGraphM</A > :: <A HREF="../base-4.2.0.2/Control-Monad.html#t%3AMonad" >Monad</A > m => (<A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> g -> m g') -> <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g -> m (<A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g')</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AcmmTopMapGraphM" >cmmTopMapGraphM</A > :: <A HREF="../base-4.2.0.2/Control-Monad.html#t%3AMonad" >Monad</A > m => (<A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> g -> m g') -> <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g -> m (<A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g')</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmInfo" >CmmInfo</A > = <A HREF="#v%3ACmmInfo" >CmmInfo</A > (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A >) (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="Cmm.html#t%3AUpdateFrame" >UpdateFrame</A >) <A HREF="Cmm.html#t%3ACmmInfoTable" >CmmInfoTable</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AUpdateFrame" >UpdateFrame</A > = <A HREF="#v%3AUpdateFrame" >UpdateFrame</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > [<A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmInfoTable" >CmmInfoTable</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACmmInfoTable" >CmmInfoTable</A > <A HREF="Cmm.html#t%3AHasStaticClosure" >HasStaticClosure</A > <A HREF="Cmm.html#t%3AProfilingInfo" >ProfilingInfo</A > <A HREF="Cmm.html#t%3AClosureTypeTag" >ClosureTypeTag</A > <A HREF="Cmm.html#t%3AClosureTypeInfo" >ClosureTypeInfo</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmNonInfoTable" >CmmNonInfoTable</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AHasStaticClosure" >HasStaticClosure</A > = <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AClosureTypeInfo" >ClosureTypeInfo</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AConstrInfo" >ConstrInfo</A > ClosureLayout ConstrTag <A HREF="Cmm.html#t%3AConstrDescription" >ConstrDescription</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFunInfo" >FunInfo</A > ClosureLayout <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A > FunArity <A HREF="ClosureInfo.html#t%3AArgDescr" >ArgDescr</A > SlowEntry</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AThunkInfo" >ThunkInfo</A > ClosureLayout <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AThunkSelectorInfo" >ThunkSelectorInfo</A > SelectorOffset <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AContInfo" >ContInfo</A > [<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="CmmExpr.html#t%3ALocalReg" >LocalReg</A >] <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AConstrDescription" >ConstrDescription</A > = <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AProfilingInfo" >ProfilingInfo</A > = <A HREF="#v%3AProfilingInfo" >ProfilingInfo</A > <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A > <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AClosureTypeTag" >ClosureTypeTag</A > = <A HREF="SMRep.html#t%3AStgHalfWord" >StgHalfWord</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGenBasicBlock" >GenBasicBlock</A > i = <A HREF="#v%3ABasicBlock" >BasicBlock</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A > [i]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ACmmBasicBlock" >CmmBasicBlock</A > = <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AblockId" >blockId</A > :: <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i -> <A HREF="BlockId.html#t%3ABlockId" >BlockId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AblockStmts" >blockStmts</A > :: <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i -> [i]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmapBlockStmts" >mapBlockStmts</A > :: (i -> i') -> <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i -> <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i'</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmReturnInfo" >CmmReturnInfo</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACmmMayReturn" >CmmMayReturn</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmNeverReturns" >CmmNeverReturns</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmStmt" >CmmStmt</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACmmNop" >CmmNop</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmComment" >CmmComment</A > <A HREF="FastString.html#t%3AFastString" >FastString</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmAssign" >CmmAssign</A > <A HREF="CmmExpr.html#t%3ACmmReg" >CmmReg</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmStore" >CmmStore</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmCall" >CmmCall</A > <A HREF="Cmm.html#t%3ACmmCallTarget" >CmmCallTarget</A > <A HREF="Cmm.html#t%3AHintedCmmFormals" >HintedCmmFormals</A > <A HREF="Cmm.html#t%3AHintedCmmActuals" >HintedCmmActuals</A > <A HREF="Cmm.html#t%3ACmmSafety" >CmmSafety</A > <A HREF="Cmm.html#t%3ACmmReturnInfo" >CmmReturnInfo</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmBranch" >CmmBranch</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmCondBranch" >CmmCondBranch</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmSwitch" >CmmSwitch</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > [<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A >]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmJump" >CmmJump</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="Cmm.html#t%3AHintedCmmActuals" >HintedCmmActuals</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmReturn" >CmmReturn</A > <A HREF="Cmm.html#t%3AHintedCmmActuals" >HintedCmmActuals</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ACmmActual" >CmmActual</A > = <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ACmmActuals" >CmmActuals</A > = [<A HREF="Cmm.html#t%3ACmmActual" >CmmActual</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ACmmFormal" >CmmFormal</A > = <A HREF="CmmExpr.html#t%3ALocalReg" >LocalReg</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ACmmFormals" >CmmFormals</A > = [<A HREF="Cmm.html#t%3ACmmFormal" >CmmFormal</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AHintedCmmFormal" >HintedCmmFormal</A > = <A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > <A HREF="Cmm.html#t%3ACmmFormal" >CmmFormal</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AHintedCmmFormals" >HintedCmmFormals</A > = [<A HREF="Cmm.html#t%3AHintedCmmFormal" >HintedCmmFormal</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AHintedCmmActual" >HintedCmmActual</A > = <A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > <A HREF="Cmm.html#t%3ACmmActual" >CmmActual</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AHintedCmmActuals" >HintedCmmActuals</A > = [<A HREF="Cmm.html#t%3AHintedCmmActual" >HintedCmmActual</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmSafety" >CmmSafety</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACmmUnsafe" >CmmUnsafe</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmSafe" >CmmSafe</A > <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmCallTarget" >CmmCallTarget</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACmmCallee" >CmmCallee</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="ForeignCall.html#t%3ACCallConv" >CCallConv</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmPrim" >CmmPrim</A > <A HREF="Cmm.html#t%3ACallishMachOp" >CallishMachOp</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACallishMachOp" >CallishMachOp</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AMO_F64_Pwr" >MO_F64_Pwr</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Sin" >MO_F64_Sin</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Cos" >MO_F64_Cos</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Tan" >MO_F64_Tan</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Sinh" >MO_F64_Sinh</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Cosh" >MO_F64_Cosh</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Tanh" >MO_F64_Tanh</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Asin" >MO_F64_Asin</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Acos" >MO_F64_Acos</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Atan" >MO_F64_Atan</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Log" >MO_F64_Log</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Exp" >MO_F64_Exp</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F64_Sqrt" >MO_F64_Sqrt</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Pwr" >MO_F32_Pwr</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Sin" >MO_F32_Sin</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Cos" >MO_F32_Cos</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Tan" >MO_F32_Tan</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Sinh" >MO_F32_Sinh</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Cosh" >MO_F32_Cosh</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Tanh" >MO_F32_Tanh</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Asin" >MO_F32_Asin</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Acos" >MO_F32_Acos</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Atan" >MO_F32_Atan</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Log" >MO_F32_Log</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Exp" >MO_F32_Exp</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_F32_Sqrt" >MO_F32_Sqrt</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMO_WriteBarrier" >MO_WriteBarrier</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprCallishMachOp" >pprCallishMachOp</A > :: <A HREF="Cmm.html#t%3ACallishMachOp" >CallishMachOp</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AForeignHint" >ForeignHint</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ANoHint" >NoHint</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AAddrHint" >AddrHint</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASignedHint" >SignedHint</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmHinted" >CmmHinted</A > a = <A HREF="#v%3ACmmHinted" >CmmHinted</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3AhintlessCmm" >hintlessCmm</A > :: a</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AcmmHint" >cmmHint</A > :: <A HREF="Cmm.html#t%3AForeignHint" >ForeignHint</A ></TD ></TR ></TABLE >}</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ACmmStatic" >CmmStatic</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACmmStaticLit" >CmmStaticLit</A > <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmUninitialised" >CmmUninitialised</A > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmAlign" >CmmAlign</A > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmDataLabel" >CmmDataLabel</A > <A HREF="CLabel.html#t%3ACLabel" >CLabel</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACmmString" >CmmString</A > [<A HREF="../base-4.2.0.2/Data-Word.html#t%3AWord8" >Word8</A >]</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ASection" >Section</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AText" >Text</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AData" >Data</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AReadOnlyData" >ReadOnlyData</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARelocatableReadOnlyData" >RelocatableReadOnlyData</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUninitialisedData" >UninitialisedData</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AReadOnlyData16" >ReadOnlyData16</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AOtherSection" >OtherSection</A > <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" >module <A HREF="CmmExpr.html" >CmmExpr</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Documentation</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >newtype</SPAN > <A NAME="t:GenCmm" ><A NAME="t%3AGenCmm" ></A ></A ><B >GenCmm</B > d h g </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:Cmm" ><A NAME="v%3ACmm" ></A ></A ><B >Cmm</B > [<A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:GenCmm')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:GenCmm" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" >(<A HREF="Outputable.html#t%3AOutputable" >Outputable</A > d, <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > info, <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > g) => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d info g)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:Cmm" ><A NAME="t%3ACmm" ></A ></A ><B >Cmm</B > = <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > <A HREF="Cmm.html#t%3ACmmInfo" >CmmInfo</A > (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="doc" >Cmm with the info table as a data type </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:RawCmm" ><A NAME="t%3ARawCmm" ></A ></A ><B >RawCmm</B > = <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > [<A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A >] (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="doc" >Cmm with the info tables converted to a list of <TT ><A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A ></TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:GenCmmTop" ><A NAME="t%3AGenCmmTop" ></A ></A ><B >GenCmmTop</B > d h g </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A top-level chunk, abstracted over the type of the contents of the basic blocks (Cmm or instructions are the likely instantiations). </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmProc" ><A NAME="v%3ACmmProc" ></A ></A ><B >CmmProc</B > h <A HREF="CLabel.html#t%3ACLabel" >CLabel</A > <A HREF="Cmm.html#t%3ACmmFormals" >CmmFormals</A > g</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmData" ><A NAME="v%3ACmmData" ></A ></A ><B >CmmData</B > <A HREF="Cmm.html#t%3ASection" >Section</A > [d]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:GenCmmTop')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:GenCmmTop" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" >(<A HREF="Outputable.html#t%3AOutputable" >Outputable</A > d, <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > info, <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > i) => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d info i)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:CmmTop" ><A NAME="t%3ACmmTop" ></A ></A ><B >CmmTop</B > = <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > <A HREF="Cmm.html#t%3ACmmInfo" >CmmInfo</A > (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:RawCmmTop" ><A NAME="t%3ARawCmmTop" ></A ></A ><B >RawCmmTop</B > = <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A > [<A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A >] (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A >)</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >newtype</SPAN > <A NAME="t:ListGraph" ><A NAME="t%3AListGraph" ></A ></A ><B >ListGraph</B > i </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A control-flow graph represented as a list of extended basic blocks. </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:ListGraph" ><A NAME="v%3AListGraph" ></A ></A ><B >ListGraph</B > [<A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i]</TD ><TD CLASS="rdoc" >Code, may be empty. The first block is the entry point. The order is otherwise initially unimportant, but at some point the code gen will fix the order. </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ListGraph')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ListGraph" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > instr => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="Cmm.html#t%3AListGraph" >ListGraph</A > instr)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:cmmMapGraph" ><A NAME="v%3AcmmMapGraph" ></A ></A ><B >cmmMapGraph</B > :: (g -> g') -> <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g -> <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g'</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:cmmTopMapGraph" ><A NAME="v%3AcmmTopMapGraph" ></A ></A ><B >cmmTopMapGraph</B > :: (g -> g') -> <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g -> <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g'</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:cmmMapGraphM" ><A NAME="v%3AcmmMapGraphM" ></A ></A ><B >cmmMapGraphM</B > :: <A HREF="../base-4.2.0.2/Control-Monad.html#t%3AMonad" >Monad</A > m => (<A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> g -> m g') -> <A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g -> m (<A HREF="Cmm.html#t%3AGenCmm" >GenCmm</A > d h g')</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:cmmTopMapGraphM" ><A NAME="v%3AcmmTopMapGraphM" ></A ></A ><B >cmmTopMapGraphM</B > :: <A HREF="../base-4.2.0.2/Control-Monad.html#t%3AMonad" >Monad</A > m => (<A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> g -> m g') -> <A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g -> m (<A HREF="Cmm.html#t%3AGenCmmTop" >GenCmmTop</A > d h g')</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmInfo" ><A NAME="t%3ACmmInfo" ></A ></A ><B >CmmInfo</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmInfo" ><A NAME="v%3ACmmInfo" ></A ></A ><B >CmmInfo</B > (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A >) (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="Cmm.html#t%3AUpdateFrame" >UpdateFrame</A >) <A HREF="Cmm.html#t%3ACmmInfoTable" >CmmInfoTable</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CmmInfo')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CmmInfo" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Cmm.html#t%3ACmmInfo" >CmmInfo</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:UpdateFrame" ><A NAME="t%3AUpdateFrame" ></A ></A ><B >UpdateFrame</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A frame that is to be pushed before entry to the function. Used to handle update frames. </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:UpdateFrame" ><A NAME="v%3AUpdateFrame" ></A ></A ><B >UpdateFrame</B > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > [<A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A >]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmInfoTable" ><A NAME="t%3ACmmInfoTable" ></A ></A ><B >CmmInfoTable</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmInfoTable" ><A NAME="v%3ACmmInfoTable" ></A ></A ><B >CmmInfoTable</B > <A HREF="Cmm.html#t%3AHasStaticClosure" >HasStaticClosure</A > <A HREF="Cmm.html#t%3AProfilingInfo" >ProfilingInfo</A > <A HREF="Cmm.html#t%3AClosureTypeTag" >ClosureTypeTag</A > <A HREF="Cmm.html#t%3AClosureTypeInfo" >ClosureTypeInfo</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmNonInfoTable" ><A NAME="v%3ACmmNonInfoTable" ></A ></A ><B >CmmNonInfoTable</B ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:HasStaticClosure" ><A NAME="t%3AHasStaticClosure" ></A ></A ><B >HasStaticClosure</B > = <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:ClosureTypeInfo" ><A NAME="t%3AClosureTypeInfo" ></A ></A ><B >ClosureTypeInfo</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:ConstrInfo" ><A NAME="v%3AConstrInfo" ></A ></A ><B >ConstrInfo</B > ClosureLayout ConstrTag <A HREF="Cmm.html#t%3AConstrDescription" >ConstrDescription</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FunInfo" ><A NAME="v%3AFunInfo" ></A ></A ><B >FunInfo</B > ClosureLayout <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A > FunArity <A HREF="ClosureInfo.html#t%3AArgDescr" >ArgDescr</A > SlowEntry</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ThunkInfo" ><A NAME="v%3AThunkInfo" ></A ></A ><B >ThunkInfo</B > ClosureLayout <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ThunkSelectorInfo" ><A NAME="v%3AThunkSelectorInfo" ></A ></A ><B >ThunkSelectorInfo</B > SelectorOffset <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ContInfo" ><A NAME="v%3AContInfo" ></A ></A ><B >ContInfo</B > [<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="CmmExpr.html#t%3ALocalReg" >LocalReg</A >] <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:ConstrDescription" ><A NAME="t%3AConstrDescription" ></A ></A ><B >ConstrDescription</B > = <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:ProfilingInfo" ><A NAME="t%3AProfilingInfo" ></A ></A ><B >ProfilingInfo</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:ProfilingInfo" ><A NAME="v%3AProfilingInfo" ></A ></A ><B >ProfilingInfo</B > <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A > <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:ClosureTypeTag" ><A NAME="t%3AClosureTypeTag" ></A ></A ><B >ClosureTypeTag</B > = <A HREF="SMRep.html#t%3AStgHalfWord" >StgHalfWord</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:GenBasicBlock" ><A NAME="t%3AGenBasicBlock" ></A ></A ><B >GenBasicBlock</B > i </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:BasicBlock" ><A NAME="v%3ABasicBlock" ></A ></A ><B >BasicBlock</B > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A > [i]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:GenBasicBlock')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:GenBasicBlock" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > instr => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > instr)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="CmmExpr.html#t%3AUserOfLocalRegs" >UserOfLocalRegs</A > i => <A HREF="CmmExpr.html#t%3AUserOfLocalRegs" >UserOfLocalRegs</A > (<A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:CmmBasicBlock" ><A NAME="t%3ACmmBasicBlock" ></A ></A ><B >CmmBasicBlock</B > = <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:blockId" ><A NAME="v%3AblockId" ></A ></A ><B >blockId</B > :: <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i -> <A HREF="BlockId.html#t%3ABlockId" >BlockId</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:blockStmts" ><A NAME="v%3AblockStmts" ></A ></A ><B >blockStmts</B > :: <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i -> [i]</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:mapBlockStmts" ><A NAME="v%3AmapBlockStmts" ></A ></A ><B >mapBlockStmts</B > :: (i -> i') -> <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i -> <A HREF="Cmm.html#t%3AGenBasicBlock" >GenBasicBlock</A > i'</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmReturnInfo" ><A NAME="t%3ACmmReturnInfo" ></A ></A ><B >CmmReturnInfo</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmMayReturn" ><A NAME="v%3ACmmMayReturn" ></A ></A ><B >CmmMayReturn</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmNeverReturns" ><A NAME="v%3ACmmNeverReturns" ></A ></A ><B >CmmNeverReturns</B ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmStmt" ><A NAME="t%3ACmmStmt" ></A ></A ><B >CmmStmt</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmNop" ><A NAME="v%3ACmmNop" ></A ></A ><B >CmmNop</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmComment" ><A NAME="v%3ACmmComment" ></A ></A ><B >CmmComment</B > <A HREF="FastString.html#t%3AFastString" >FastString</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmAssign" ><A NAME="v%3ACmmAssign" ></A ></A ><B >CmmAssign</B > <A HREF="CmmExpr.html#t%3ACmmReg" >CmmReg</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmStore" ><A NAME="v%3ACmmStore" ></A ></A ><B >CmmStore</B > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmCall" ><A NAME="v%3ACmmCall" ></A ></A ><B >CmmCall</B > <A HREF="Cmm.html#t%3ACmmCallTarget" >CmmCallTarget</A > <A HREF="Cmm.html#t%3AHintedCmmFormals" >HintedCmmFormals</A > <A HREF="Cmm.html#t%3AHintedCmmActuals" >HintedCmmActuals</A > <A HREF="Cmm.html#t%3ACmmSafety" >CmmSafety</A > <A HREF="Cmm.html#t%3ACmmReturnInfo" >CmmReturnInfo</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmBranch" ><A NAME="v%3ACmmBranch" ></A ></A ><B >CmmBranch</B > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmCondBranch" ><A NAME="v%3ACmmCondBranch" ></A ></A ><B >CmmCondBranch</B > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmSwitch" ><A NAME="v%3ACmmSwitch" ></A ></A ><B >CmmSwitch</B > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > [<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="BlockId.html#t%3ABlockId" >BlockId</A >]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmJump" ><A NAME="v%3ACmmJump" ></A ></A ><B >CmmJump</B > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="Cmm.html#t%3AHintedCmmActuals" >HintedCmmActuals</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmReturn" ><A NAME="v%3ACmmReturn" ></A ></A ><B >CmmReturn</B > <A HREF="Cmm.html#t%3AHintedCmmActuals" >HintedCmmActuals</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CmmStmt')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CmmStmt" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="CmmExpr.html#t%3AUserOfLocalRegs" >UserOfLocalRegs</A > <A HREF="Cmm.html#t%3ACmmStmt" >CmmStmt</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:CmmActual" ><A NAME="t%3ACmmActual" ></A ></A ><B >CmmActual</B > = <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:CmmActuals" ><A NAME="t%3ACmmActuals" ></A ></A ><B >CmmActuals</B > = [<A HREF="Cmm.html#t%3ACmmActual" >CmmActual</A >]</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:CmmFormal" ><A NAME="t%3ACmmFormal" ></A ></A ><B >CmmFormal</B > = <A HREF="CmmExpr.html#t%3ALocalReg" >LocalReg</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:CmmFormals" ><A NAME="t%3ACmmFormals" ></A ></A ><B >CmmFormals</B > = [<A HREF="Cmm.html#t%3ACmmFormal" >CmmFormal</A >]</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:HintedCmmFormal" ><A NAME="t%3AHintedCmmFormal" ></A ></A ><B >HintedCmmFormal</B > = <A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > <A HREF="Cmm.html#t%3ACmmFormal" >CmmFormal</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:HintedCmmFormals" ><A NAME="t%3AHintedCmmFormals" ></A ></A ><B >HintedCmmFormals</B > = [<A HREF="Cmm.html#t%3AHintedCmmFormal" >HintedCmmFormal</A >]</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:HintedCmmActual" ><A NAME="t%3AHintedCmmActual" ></A ></A ><B >HintedCmmActual</B > = <A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > <A HREF="Cmm.html#t%3ACmmActual" >CmmActual</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:HintedCmmActuals" ><A NAME="t%3AHintedCmmActuals" ></A ></A ><B >HintedCmmActuals</B > = [<A HREF="Cmm.html#t%3AHintedCmmActual" >HintedCmmActual</A >]</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmSafety" ><A NAME="t%3ACmmSafety" ></A ></A ><B >CmmSafety</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmUnsafe" ><A NAME="v%3ACmmUnsafe" ></A ></A ><B >CmmUnsafe</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmSafe" ><A NAME="v%3ACmmSafe" ></A ></A ><B >CmmSafe</B > <A HREF="ClosureInfo.html#t%3AC_SRT" >C_SRT</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CmmSafety')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CmmSafety" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Cmm.html#t%3ACmmSafety" >CmmSafety</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmCallTarget" ><A NAME="t%3ACmmCallTarget" ></A ></A ><B >CmmCallTarget</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmCallee" ><A NAME="v%3ACmmCallee" ></A ></A ><B >CmmCallee</B > <A HREF="CmmExpr.html#t%3ACmmExpr" >CmmExpr</A > <A HREF="ForeignCall.html#t%3ACCallConv" >CCallConv</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmPrim" ><A NAME="v%3ACmmPrim" ></A ></A ><B >CmmPrim</B > <A HREF="Cmm.html#t%3ACallishMachOp" >CallishMachOp</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CmmCallTarget')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CmmCallTarget" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Cmm.html#t%3ACmmCallTarget" >CmmCallTarget</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="CmmExpr.html#t%3AUserOfSlots" >UserOfSlots</A > <A HREF="Cmm.html#t%3ACmmCallTarget" >CmmCallTarget</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="CmmExpr.html#t%3AUserOfLocalRegs" >UserOfLocalRegs</A > <A HREF="Cmm.html#t%3ACmmCallTarget" >CmmCallTarget</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CallishMachOp" ><A NAME="t%3ACallishMachOp" ></A ></A ><B >CallishMachOp</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Pwr" ><A NAME="v%3AMO_F64_Pwr" ></A ></A ><B >MO_F64_Pwr</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Sin" ><A NAME="v%3AMO_F64_Sin" ></A ></A ><B >MO_F64_Sin</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Cos" ><A NAME="v%3AMO_F64_Cos" ></A ></A ><B >MO_F64_Cos</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Tan" ><A NAME="v%3AMO_F64_Tan" ></A ></A ><B >MO_F64_Tan</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Sinh" ><A NAME="v%3AMO_F64_Sinh" ></A ></A ><B >MO_F64_Sinh</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Cosh" ><A NAME="v%3AMO_F64_Cosh" ></A ></A ><B >MO_F64_Cosh</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Tanh" ><A NAME="v%3AMO_F64_Tanh" ></A ></A ><B >MO_F64_Tanh</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Asin" ><A NAME="v%3AMO_F64_Asin" ></A ></A ><B >MO_F64_Asin</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Acos" ><A NAME="v%3AMO_F64_Acos" ></A ></A ><B >MO_F64_Acos</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Atan" ><A NAME="v%3AMO_F64_Atan" ></A ></A ><B >MO_F64_Atan</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Log" ><A NAME="v%3AMO_F64_Log" ></A ></A ><B >MO_F64_Log</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Exp" ><A NAME="v%3AMO_F64_Exp" ></A ></A ><B >MO_F64_Exp</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F64_Sqrt" ><A NAME="v%3AMO_F64_Sqrt" ></A ></A ><B >MO_F64_Sqrt</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Pwr" ><A NAME="v%3AMO_F32_Pwr" ></A ></A ><B >MO_F32_Pwr</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Sin" ><A NAME="v%3AMO_F32_Sin" ></A ></A ><B >MO_F32_Sin</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Cos" ><A NAME="v%3AMO_F32_Cos" ></A ></A ><B >MO_F32_Cos</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Tan" ><A NAME="v%3AMO_F32_Tan" ></A ></A ><B >MO_F32_Tan</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Sinh" ><A NAME="v%3AMO_F32_Sinh" ></A ></A ><B >MO_F32_Sinh</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Cosh" ><A NAME="v%3AMO_F32_Cosh" ></A ></A ><B >MO_F32_Cosh</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Tanh" ><A NAME="v%3AMO_F32_Tanh" ></A ></A ><B >MO_F32_Tanh</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Asin" ><A NAME="v%3AMO_F32_Asin" ></A ></A ><B >MO_F32_Asin</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Acos" ><A NAME="v%3AMO_F32_Acos" ></A ></A ><B >MO_F32_Acos</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Atan" ><A NAME="v%3AMO_F32_Atan" ></A ></A ><B >MO_F32_Atan</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Log" ><A NAME="v%3AMO_F32_Log" ></A ></A ><B >MO_F32_Log</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Exp" ><A NAME="v%3AMO_F32_Exp" ></A ></A ><B >MO_F32_Exp</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_F32_Sqrt" ><A NAME="v%3AMO_F32_Sqrt" ></A ></A ><B >MO_F32_Sqrt</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MO_WriteBarrier" ><A NAME="v%3AMO_WriteBarrier" ></A ></A ><B >MO_WriteBarrier</B ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CallishMachOp')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CallishMachOp" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Cmm.html#t%3ACallishMachOp" >CallishMachOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > <A HREF="Cmm.html#t%3ACallishMachOp" >CallishMachOp</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:pprCallishMachOp" ><A NAME="v%3ApprCallishMachOp" ></A ></A ><B >pprCallishMachOp</B > :: <A HREF="Cmm.html#t%3ACallishMachOp" >CallishMachOp</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:ForeignHint" ><A NAME="t%3AForeignHint" ></A ></A ><B >ForeignHint</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:NoHint" ><A NAME="v%3ANoHint" ></A ></A ><B >NoHint</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:AddrHint" ><A NAME="v%3AAddrHint" ></A ></A ><B >AddrHint</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SignedHint" ><A NAME="v%3ASignedHint" ></A ></A ><B >SignedHint</B ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ForeignHint')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ForeignHint" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Cmm.html#t%3AForeignHint" >ForeignHint</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Cmm.html#t%3AForeignHint" >ForeignHint</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmHinted" ><A NAME="t%3ACmmHinted" ></A ></A ><B >CmmHinted</B > a </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmHinted" ><A NAME="v%3ACmmHinted" ></A ></A ><B >CmmHinted</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="body" COLSPAN="2" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:hintlessCmm" ><A NAME="v%3AhintlessCmm" ></A ></A ><B >hintlessCmm</B > :: a</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:cmmHint" ><A NAME="v%3AcmmHint" ></A ></A ><B >cmmHint</B > :: <A HREF="Cmm.html#t%3AForeignHint" >ForeignHint</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CmmHinted')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CmmHinted" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > a => <A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > a)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > a => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > a)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="CmmExpr.html#t%3AUserOfSlots" >UserOfSlots</A > a => <A HREF="CmmExpr.html#t%3AUserOfSlots" >UserOfSlots</A > (<A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > a)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="CmmExpr.html#t%3ADefinerOfLocalRegs" >DefinerOfLocalRegs</A > a => <A HREF="CmmExpr.html#t%3ADefinerOfLocalRegs" >DefinerOfLocalRegs</A > (<A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > a)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="CmmExpr.html#t%3AUserOfLocalRegs" >UserOfLocalRegs</A > a => <A HREF="CmmExpr.html#t%3AUserOfLocalRegs" >UserOfLocalRegs</A > (<A HREF="Cmm.html#t%3ACmmHinted" >CmmHinted</A > a)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:CmmStatic" ><A NAME="t%3ACmmStatic" ></A ></A ><B >CmmStatic</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:CmmStaticLit" ><A NAME="v%3ACmmStaticLit" ></A ></A ><B >CmmStaticLit</B > <A HREF="CmmExpr.html#t%3ACmmLit" >CmmLit</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmUninitialised" ><A NAME="v%3ACmmUninitialised" ></A ></A ><B >CmmUninitialised</B > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmAlign" ><A NAME="v%3ACmmAlign" ></A ></A ><B >CmmAlign</B > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmDataLabel" ><A NAME="v%3ACmmDataLabel" ></A ></A ><B >CmmDataLabel</B > <A HREF="CLabel.html#t%3ACLabel" >CLabel</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CmmString" ><A NAME="v%3ACmmString" ></A ></A ><B >CmmString</B > [<A HREF="../base-4.2.0.2/Data-Word.html#t%3AWord8" >Word8</A >]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CmmStatic')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CmmStatic" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Cmm.html#t%3ACmmStatic" >CmmStatic</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:Section" ><A NAME="t%3ASection" ></A ></A ><B >Section</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:Text" ><A NAME="v%3AText" ></A ></A ><B >Text</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Data" ><A NAME="v%3AData" ></A ></A ><B >Data</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ReadOnlyData" ><A NAME="v%3AReadOnlyData" ></A ></A ><B >ReadOnlyData</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RelocatableReadOnlyData" ><A NAME="v%3ARelocatableReadOnlyData" ></A ></A ><B >RelocatableReadOnlyData</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:UninitialisedData" ><A NAME="v%3AUninitialisedData" ></A ></A ><B >UninitialisedData</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ReadOnlyData16" ><A NAME="v%3AReadOnlyData16" ></A ></A ><B >ReadOnlyData16</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:OtherSection" ><A NAME="v%3AOtherSection" ></A ></A ><B >OtherSection</B > <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" >module <A HREF="CmmExpr.html" >CmmExpr</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="botbar" >Produced by <A HREF="http://www.haskell.org/haddock/" >Haddock</A > version 2.6.1</TD ></TR ></TABLE ></BODY ></HTML >