\begin{code} interface CgLoop1 where import PreludeStdIO ( Maybe ) import CgBindery ( CgBindings(..), CgIdInfo(..), VolatileLoc, StableLoc, nukeVolatileBinds, maybeAStkLoc, maybeBStkLoc ) import CgUsages ( getSpBRelOffset ) import AbsCSyn ( RegRelative ) import CgMonad ( FCode(..) ) import ClosureInfo ( LambdaFormInfo ) import HeapOffs ( VirtualSpAOffset(..), VirtualSpBOffset(..) ) import Id ( IdEnv(..), Id(..) ) type CgBindings = IdEnv CgIdInfo data CgIdInfo = MkCgIdInfo Id -- Id that this is the info for VolatileLoc StableLoc LambdaFormInfo data VolatileLoc data StableLoc data LambdaFormInfo nukeVolatileBinds :: CgBindings -> CgBindings maybeAStkLoc :: StableLoc -> Maybe VirtualSpAOffset maybeBStkLoc :: StableLoc -> Maybe VirtualSpBOffset getSpBRelOffset :: VirtualSpBOffset -> FCode RegRelative \end{code}