aboutsummaryrefslogtreecommitdiff
path: root/backend/CC/Backend/Dumb.hs
blob: 3210dab59247d92f52410c825d23182f967214b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
module CC.Backend.Dumb(builtins) where

import qualified Data.Map.Strict as Map

import CC.AST.Typed
import CC.Context


builtins :: Builtins
builtins = Builtins . Map.fromList $
    [ ("print", TFun TInt (TTup []))
    , ("fst", TFun (TTup [TyVar 1, TyVar 2]) (TyVar 1))
    , ("snd", TFun (TTup [TyVar 1, TyVar 2]) (TyVar 2))
    , ("_add", TFun TInt (TFun TInt TInt))
    , ("_sub", TFun TInt (TFun TInt TInt))
    , ("_mul", TFun TInt (TFun TInt TInt)) ]