definition module Snug.Compile.ABI from StdBool import not, && from StdClass import class Ord(<=) from StdInt import instance < Int from StdMisc import abort from StdOverloaded import class <(<) from MIPS.MIPS32 import :: Label, :: Register(GP,S,T) from Snug.Compile import :: Namespace from Snug.Syntax import :: ConstructorIdent, :: SymbolIdent :: EntryPoint = NodeEntry BackPrintPtr :== S 0 FrontPrintPtr :== S 1 BackEvalPtr :== S 2 FrontEvalPtr :== S 3 TextEndDataStart :== S 7 HeapPtr :== GP TempImm i :== if (0 <= i && i <= 1) (T i) (abort "TempImm out of range\n") constructorLabel :: !Namespace !ConstructorIdent -> Label functionLabel :: !Namespace !EntryPoint !SymbolIdent -> Label closureLabel :: !Namespace !SymbolIdent !Int -> Label