| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
GHC.StgToJS.Regs
Synopsis
- newtype StgReg = StgReg Int
- data Special
- sp :: JStgExpr
- stack :: JStgExpr
- r1 :: JStgExpr
- r2 :: JStgExpr
- r3 :: JStgExpr
- r4 :: JStgExpr
- pattern R1 :: StgReg
- pattern R2 :: StgReg
- pattern R3 :: StgReg
- pattern R4 :: StgReg
- regsFromR1 :: [StgReg]
- regsFromR2 :: [StgReg]
- regsFromTo :: StgReg -> StgReg -> [StgReg]
- jsRegsFrom :: StgReg -> [JStgExpr]
- jsRegsFromR1 :: [JStgExpr]
- jsRegsFromR2 :: [JStgExpr]
- data StgRet
- regNumber :: StgReg -> Int
- jsReg :: Int -> JStgExpr
- highReg :: Int -> JStgExpr
- highReg_expr :: JStgExpr -> JStgExpr
- maxReg :: StgReg
- maxLowReg :: StgReg
- minReg :: StgReg
- minHighReg :: StgReg
- lowRegs :: [StgReg]
- lowRegsCount :: Int
- lowRegsIdents :: [Ident]
- retRegs :: [Ident]
- register :: StgReg -> JStgExpr
- foreignRegister :: StgRet -> JStgExpr
Documentation
General purpose "registers"
Instances
| ToJExpr StgReg Source # | |
| Eq StgReg Source # | |
| Ord StgReg Source # | |
| Ix StgReg Source # | |
regsFromR1 :: [StgReg] Source #
List of registers, starting from R1
regsFromR2 :: [StgReg] Source #
List of registers, starting from R2
jsRegsFrom :: StgReg -> [JStgExpr] Source #
List of registers, starting from given reg as JExpr
jsRegsFromR1 :: [JStgExpr] Source #
List of registers, starting from R1 as JStgExpr
jsRegsFromR2 :: [JStgExpr] Source #
List of registers, starting from R2 as JExpr
Return registers
Extra results from foreign calls can be stored here (while first result is directly returned)
Instances
| ToJExpr StgRet Source # | |
| Eq StgRet Source # | |
| Ord StgRet Source # | |
| Bounded StgRet Source # | |
| Enum StgRet Source # | |
Defined in GHC.StgToJS.Regs Methods succ :: StgRet -> StgRet Source # pred :: StgRet -> StgRet Source # toEnum :: Int -> StgRet Source # fromEnum :: StgRet -> Int Source # enumFrom :: StgRet -> [StgRet] Source # enumFromThen :: StgRet -> StgRet -> [StgRet] Source # enumFromTo :: StgRet -> StgRet -> [StgRet] Source # enumFromThenTo :: StgRet -> StgRet -> StgRet -> [StgRet] Source # | |
| Ix StgRet Source # | |
| Show StgRet Source # | |
highReg_expr :: JStgExpr -> JStgExpr Source #
High register indexing with a JS expression
minHighReg :: StgReg Source #
First register stored in h$regs array instead of having its own top-level variable
lowRegsCount :: Int Source #
lowRegsIdents :: [Ident] Source #
register :: StgReg -> JStgExpr Source #
Given a register, return the JS syntax object representing that register
foreignRegister :: StgRet -> JStgExpr Source #
Given a register, return the JS syntax object representing that register