| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
JVM.Data.Convert.Instruction
Description
Converts abstract instructions into raw instructions This includes resolving labels into offsets TODO: this is very inefficient, requiring three passes over the instructions
Documentation
type CodeConverterEff (r :: [Effect]) = ((ConstantPool :: (Type -> Type) -> Type -> Type) :> r, State ConvertState :> r, Error CodeConverterError :> r) Source #
fullyRunCodeConverter :: forall (r' :: [Effect]) a. ConvertEff r' => Eff (State ConvertState ': r') a -> Eff r' a Source #
convertInstructions :: forall (r :: [Effect]). CodeConverterEff r => [Instruction] -> Eff r [Instruction] Source #
fullyResolveAbs :: forall (r :: [Effect]). CodeConverterEff r => Label -> Eff r Word16 Source #