helma-0.8.4.14: HELMA - Haskellish Esoteric Limited Minimal Automaton
Safe HaskellNone
LanguageHaskell2010

HelVM.HelMA.Automaton.Combiner.CPU

Synopsis

Documentation

runCFI :: (ALU m ll element, Show element) => CFInstruction -> CentralProcessingStep ll m #

branchInstruction :: (ALU m ll element, Show element) => BranchTest -> BranchOperand -> CentralProcessingStep ll m #

branchSwappedInstruction :: (ALU m ll element, Show element) => BranchTest -> CentralProcessingStep ll m #

branchTopInstruction :: (ALU m ll element, Show element) => BranchTest -> CentralProcessingStep ll m #

branch :: ALU m ll element => BranchTest -> element -> m InstructionCounter -> CentralProcessingStep ll m #

labeledTopInstruction :: (ALU m ll element, Show element) => LabelOperation -> CentralProcessingStep ll m #

newCM :: InstructionList -> ControlMemory #

ControlMemory methods

cpmPop1 :: ALU m ll element => CentralProcessingMemory ll -> m (element, CentralProcessingMemory ll) #

cpmPop2 :: ALU m ll element => CentralProcessingMemory ll -> m (element, element, CentralProcessingMemory ll) #

type DynamicLabel l = (Integral l, Show l) #

Types

data CentralProcessingMemory ll #

Constructors

CPM 

Fields

Instances

Instances details
Show ll => Show (CentralProcessingMemory ll) # 
Instance details

Defined in HelVM.HelMA.Automaton.Combiner.CPU

newtype InstructionStack #

Constructors

IS [InstructionAddress] 

Instances

Instances details
Show InstructionStack # 
Instance details

Defined in HelVM.HelMA.Automaton.Combiner.CPU