Safe Haskell | None |
---|---|
Language | GHC2021 |
Bytecode assembler types
Synopsis
- data CompiledByteCode = CompiledByteCode {}
- seqCompiledByteCode :: CompiledByteCode -> ()
- newtype FFIInfo = FFIInfo (RemotePtr C_ffi_cif)
- newtype RegBitmap = RegBitmap {}
- data NativeCallType
- data NativeCallInfo = NativeCallInfo {}
- voidTupleReturnInfo :: NativeCallInfo
- voidPrimCallInfo :: NativeCallInfo
- newtype ByteOff = ByteOff Int
- newtype WordOff = WordOff Int
- newtype HalfWord = HalfWord Word
- data UnlinkedBCO = UnlinkedBCO {
- unlinkedBCOName :: !Name
- unlinkedBCOArity :: !Int
- unlinkedBCOInstrs :: !(UArray Int Word16)
- unlinkedBCOBitmap :: !(UArray Int Word64)
- unlinkedBCOLits :: !(SizedSeq BCONPtr)
- unlinkedBCOPtrs :: !(SizedSeq BCOPtr)
- data BCOPtr
- data BCONPtr
- type ItblEnv = NameEnv (Name, ItblPtr)
- newtype ItblPtr = ItblPtr (RemotePtr StgInfoTable)
- type AddrEnv = NameEnv (Name, AddrPtr)
- newtype AddrPtr = AddrPtr (RemotePtr ())
- data CgBreakInfo = CgBreakInfo {
- cgb_tyvars :: ![IfaceTvBndr]
- cgb_vars :: ![Maybe (IfaceIdBndr, Word)]
- cgb_resty :: !IfaceType
- data ModBreaks = ModBreaks {
- modBreaks_flags :: ForeignRef BreakArray
- modBreaks_locs :: !(Array BreakIndex SrcSpan)
- modBreaks_vars :: !(Array BreakIndex [OccName])
- modBreaks_decls :: !(Array BreakIndex [String])
- modBreaks_ccs :: !(Array BreakIndex (RemotePtr CostCentre))
- modBreaks_breakInfo :: IntMap CgBreakInfo
- modBreaks_module :: RemotePtr ModuleName
- type BreakIndex = Int
- emptyModBreaks :: ModBreaks
- data CCostCentre
Documentation
data CompiledByteCode Source #
Instances
Outputable CompiledByteCode Source # | |
Defined in GHC.ByteCode.Types ppr :: CompiledByteCode -> SDoc Source # |
seqCompiledByteCode :: CompiledByteCode -> () Source #
Instances
data NativeCallType Source #
Instances
Eq NativeCallType Source # | |
Defined in GHC.ByteCode.Types (==) :: NativeCallType -> NativeCallType -> Bool # (/=) :: NativeCallType -> NativeCallType -> Bool # |
data NativeCallInfo Source #
Instances
Outputable NativeCallInfo Source # | |
Defined in GHC.ByteCode.Types ppr :: NativeCallInfo -> SDoc Source # |
Instances
Outputable ByteOff Source # | |
Enum ByteOff Source # | |
Num ByteOff Source # | |
Integral ByteOff Source # | |
Defined in GHC.ByteCode.Types | |
Real ByteOff Source # | |
Defined in GHC.ByteCode.Types toRational :: ByteOff -> Rational # | |
Show ByteOff Source # | |
Eq ByteOff Source # | |
Ord ByteOff Source # | |
Instances
Outputable WordOff Source # | |
Enum WordOff Source # | |
Num WordOff Source # | |
Integral WordOff Source # | |
Defined in GHC.ByteCode.Types | |
Real WordOff Source # | |
Defined in GHC.ByteCode.Types toRational :: WordOff -> Rational # | |
Show WordOff Source # | |
Eq WordOff Source # | |
Ord WordOff Source # | |
Instances
Outputable HalfWord Source # | |
Enum HalfWord Source # | |
Num HalfWord Source # | |
Integral HalfWord Source # | |
Defined in GHC.ByteCode.Types | |
Real HalfWord Source # | |
Defined in GHC.ByteCode.Types toRational :: HalfWord -> Rational # | |
Show HalfWord Source # | |
Eq HalfWord Source # | |
Ord HalfWord Source # | |
Defined in GHC.ByteCode.Types |
data UnlinkedBCO Source #
UnlinkedBCO | |
|
Instances
NFData UnlinkedBCO Source # | |
Defined in GHC.ByteCode.Types rnf :: UnlinkedBCO -> () Source # | |
Outputable UnlinkedBCO Source # | |
Defined in GHC.ByteCode.Types ppr :: UnlinkedBCO -> SDoc Source # |
BCOPtrName !Name | |
BCOPtrPrimOp !PrimOp | |
BCOPtrBCO !UnlinkedBCO | |
BCOPtrBreakArray (ForeignRef BreakArray) | a pointer to a breakpoint's module's BreakArray in GHCi's memory |
BCONPtrWord !Word | |
BCONPtrLbl !FastString | |
BCONPtrItbl !Name | |
BCONPtrAddr !Name | A reference to a top-level string literal; see Note [Generating code for top-level string literal bindings] in GHC.StgToByteCode. |
BCONPtrStr !ByteString | Only used internally in the assembler in an intermediate representation; should never appear in a fully-assembled UnlinkedBCO. Also see Note [Allocating string literals] in GHC.ByteCode.Asm. |
data CgBreakInfo Source #
Information about a breakpoint that we know at code-generation time
In order to be used, this needs to be hydrated relative to the current HscEnv by
hydrateCgBreakInfo
. Everything here can be fully forced and that's critical for
preventing space leaks (see #22530)
CgBreakInfo | |
|
Instances
Outputable CgBreakInfo Source # | |
Defined in GHC.ByteCode.Types ppr :: CgBreakInfo -> SDoc Source # |
All the information about the breakpoints for a module
ModBreaks | |
|
type BreakIndex = Int Source #
Breakpoint index
emptyModBreaks :: ModBreaks Source #
Construct an empty ModBreaks
data CCostCentre Source #
C CostCentre type