apple-0.3.0.0: Apple array language compiler
Safe HaskellSafe-Inferred
LanguageHaskell2010

IR

Documentation

data Exp Source #

Instances

Instances details
Num Exp Source # 
Instance details

Defined in IR

Methods

(+) :: Exp -> Exp -> Exp #

(-) :: Exp -> Exp -> Exp #

(*) :: Exp -> Exp -> Exp #

negate :: Exp -> Exp #

abs :: Exp -> Exp #

signum :: Exp -> Exp #

fromInteger :: Integer -> Exp #

Show Exp Source # 
Instance details

Defined in IR

Methods

showsPrec :: Int -> Exp -> ShowS #

show :: Exp -> String #

showList :: [Exp] -> ShowS #

Pretty Exp Source # 
Instance details

Defined in IR

Methods

pretty :: Exp -> Doc ann #

prettyList :: [Exp] -> Doc ann #

data FExp Source #

Instances

Instances details
Num FExp Source # 
Instance details

Defined in IR

Methods

(+) :: FExp -> FExp -> FExp #

(-) :: FExp -> FExp -> FExp #

(*) :: FExp -> FExp -> FExp #

negate :: FExp -> FExp #

abs :: FExp -> FExp #

signum :: FExp -> FExp #

fromInteger :: Integer -> FExp #

Fractional FExp Source # 
Instance details

Defined in IR

Methods

(/) :: FExp -> FExp -> FExp #

recip :: FExp -> FExp #

fromRational :: Rational -> FExp #

Show FExp Source # 
Instance details

Defined in IR

Methods

showsPrec :: Int -> FExp -> ShowS #

show :: FExp -> String #

showList :: [FExp] -> ShowS #

Pretty FExp Source # 
Instance details

Defined in IR

Methods

pretty :: FExp -> Doc ann #

prettyList :: [FExp] -> Doc ann #

data Stmt Source #

Instances

Instances details
Show Stmt Source # 
Instance details

Defined in IR

Methods

showsPrec :: Int -> Stmt -> ShowS #

show :: Stmt -> String #

showList :: [Stmt] -> ShowS #

Pretty Stmt Source # 
Instance details

Defined in IR

Methods

pretty :: Stmt -> Doc ann #

prettyList :: [Stmt] -> Doc ann #

data Temp Source #

Constructors

ITemp !Int 
ATemp !Int 
C0 
C1 
C2 
C3 
C4 
C5 
CRet 

Instances

Instances details
Show Temp Source # 
Instance details

Defined in IR

Methods

showsPrec :: Int -> Temp -> ShowS #

show :: Temp -> String #

showList :: [Temp] -> ShowS #

Eq Temp Source # 
Instance details

Defined in IR

Methods

(==) :: Temp -> Temp -> Bool #

(/=) :: Temp -> Temp -> Bool #

Pretty Temp Source # 
Instance details

Defined in IR

Methods

pretty :: Temp -> Doc ann #

prettyList :: [Temp] -> Doc ann #

data FTemp Source #

Constructors

FTemp !Int 
F0 
F1 
F2 
F3 
F4 
F5 
FRet 
FRet1 

Instances

Instances details
Eq FTemp Source # 
Instance details

Defined in IR

Methods

(==) :: FTemp -> FTemp -> Bool #

(/=) :: FTemp -> FTemp -> Bool #

Ord FTemp Source # 
Instance details

Defined in IR

Methods

compare :: FTemp -> FTemp -> Ordering #

(<) :: FTemp -> FTemp -> Bool #

(<=) :: FTemp -> FTemp -> Bool #

(>) :: FTemp -> FTemp -> Bool #

(>=) :: FTemp -> FTemp -> Bool #

max :: FTemp -> FTemp -> FTemp #

min :: FTemp -> FTemp -> FTemp #

Pretty FTemp Source # 
Instance details

Defined in IR

Methods

pretty :: FTemp -> Doc ann #

prettyList :: [FTemp] -> Doc ann #

data AE Source #

Constructors

AP Temp (Maybe Exp) (Maybe AL) 

Instances

Instances details
Pretty AE Source # 
Instance details

Defined in IR

Methods

pretty :: AE -> Doc ann #

prettyList :: [AE] -> Doc ann #

data WSt Source #

Constructors

WSt 

Fields

prettyIR :: (AsmData, [Stmt]) -> Doc ann Source #