{+doc 5.1} procedure SetRepresentationFor(TheType: TypEntry); extern; procedure AdjustRepresentationFor(TheType: TypEntry); extern; {+doc 5.2.1} procedure OpenStackFrame; extern; procedure CloseStackFrame; extern; procedure SaveStackFrame; extern; procedure ReclaimStackFrame; extern; procedure SetAddressFor(VarId: IdEntry); extern; {+doc 5.2.2} procedure SetBoundPairBlockFor(LowBound, HighBound: IdEntry); extern; {+doc 5.2.3.1} procedure InitializeVariables; extern; procedure FinalizeVariables; extern; {+doc 5.2.3.2} procedure OpenPresetSpace(Representation: TypeRepresentation); extern; procedure InxPreset(PackedArray: Boolean; LowIndex, HighIndex, LowBound: ObjectValue; Representation: TypeRepresentation); extern; procedure FieldPreset(Field: FieldOffset); extern; procedure PresetSelector(VarPartRep, VariantRep: TypeRepresentation); extern; procedure AssignPreset; extern; procedure CopyPreset; extern; procedure StackPreset; extern; procedure ClsPresetSpace; extern; {+doc 5.3.1} procedure Evaluate(var SourceValue: ValueDetails); extern; procedure MakeValue(Magnitude: integer; var Velue: ObjectValue); extern; {+doc 5.2.2} procedure NegateValue(var Velue: ObjectValue); extern; function SameValue(Value1, Value2: ObjectValue): Boolean; extern; function OrderedValues(Value1, Value2: ObjectValue): Boolean; extern; function Disjoint(Value1, Value2, Value3, Value4: ObjectValue): Boolean; extern; function InRange(Value1, Value, Value2: ObjectValue): Boolean; extern; procedure CheckValue(Min, Max, Value: ObjectValue; Code: Scalar); extern; {+doc 5.3.3} function Range(Min, Max: ObjectValue): integer; extern; {+doc 5.3.4} procedure AddWords(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure SubWords(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure AddValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure SubValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure NotValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure OrValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure AndValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure ModValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure DivValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure MultiplyValues(LVal, RVal: ObjectValue; var Result: ObjectValue); extern; procedure CompareValues(var LVal: ObjectValue; RVal: ObjectValue; RelOp: OpType); extern; procedure ConstIntFn(Which: StdProcFuncs; ArgValue: ObjectValue; var Result: ObjectValue); extern; procedure ConstRealFn(Which: StdProcFuncs; ArgValue: ObjectValue; var Result: ObjectValue); extern; procedure ConstWrdFn(Which: StdProcFuncs; Arg1, Arg2: ObjectValue; var Result: ObjectValue); extern; {+doc 5.3.5} procedure InitCodeGeneration; extern; procedure EndCodeGeneration; extern; {+doc 5.4} procedure FutureBlockLabel(var l: BlockLabel); extern; procedure ExternalBlockLabel(var l: BlockLabel); extern; procedure OpenCodeSpace(var l: BlockLabel); extern; procedure CloseCodeSpace; extern; {+doc 5.5} procedure StackReference(Indirect: Boolean; Location: RunTimeAddress); extern; procedure InxReference(PackedArray: Boolean; LowBound, HighBound: ObjectValue; Element: TypeRepresentation); extern; procedure InxCAPReference(PackedSchema: Boolean; LowBound, HighBound: CAPBound; BoundPairRepresentation, Component: TypeRepresentation); extern; procedure DoVariantChecks(VarPart: TypEntry; FieldId: IdEntry); extern; procedure FieldReference(Field: FieldOffset; TagField: Boolean); extern; procedure PnterReference; extern; procedure BufferReference(PackedFile, TextFile: Boolean; Element: TypeRepresentation); extern; {+doc 5.6.1} procedure DeReference(Representation: TypeRepresentation); extern; procedure CAPDeReference(PackedSchema: Boolean; LowBound, HighBound: CAPBound; BoundPairRepresentation, ComponentRepresentation: TypeRepresentation); extern; {+doc 5.6.2} procedure TailoredFactorCheck(Representation: TypeRepresentation); extern; procedure UndefinedVariableCheck; extern; {+doc 5.6.3} procedure StackConstant(ConstValue: ObjectValue); extern; {+doc 5.6.4} procedure IntFunction(WhichFunc: StdProcFuncs); extern; procedure WordFunction(WhichFunc: StdProcFuncs); extern; procedure MaxMinFunction(WhichFunc: StdProcFuncs; Min, Max: ObjectValue); extern; procedure NegInteger; extern; procedure BinaryIntegerOperation(Operator: OpType); extern; procedure OrdinelComparison(Operator: OpType); extern; procedure RangeCheck(Min, Max: ObjectValue); extern; {+doc 5.6.5} procedure FloatInteger(StackPosition: StackTop); extern; procedure RealFunction(WhichFunc: StdProcFuncs); extern; procedure NegReal; extern; procedure BinaryRealOperation(RealOperator: OpType); extern; procedure RealComparison(Operator: OpType); extern; {+doc 5.6.6} procedure NegateBoolean; extern; procedure BinaryBooleanOperation(Operator: OpType; FirstOperation: Boolean); extern; procedure EliminateConditions; extern; {+doc 5.6.7} procedure SingletonSet(SetRepresentation: TypeRepresentation); extern; procedure RangeSet(SetRepresentation: TypeRepresentation); extern; procedure BinarySetOperation(SetOperator: OpType); extern; procedure SetComparison(SetOperator: OpType); extern; procedure SetCheck(Min, Max: ObjectValue); extern; {+doc 5.6.8} procedure PnterComparison(Operator: OpType); extern; procedure PnterFunction(Which: StdProcFuncs); extern; procedure StringComparison(Operator: OpType; Length: ObjectValue); extern; {+doc 5.7} procedure Assign(VarRep: TypeRepresentation); extern; procedure AssignTag(SelectorRep: TypeRepresentation); extern; {+doc 5.8} procedure OpenWith(WithBase: DispRange); extern; procedure WithReference(WithBase: DispRange); extern; procedure CloseWith; extern; {+doc 5.9.1.1} procedure SelectFile(FType: TypEntry); extern; procedure DiscardFile; extern; {+doc 5.9.1.2} procedure FileOperation(Which: StdProcFuncs; Form: IOFormat); extern; procedure FileFunction(WhichFunc: StdProcFuncs); extern; {+doc 5.9.1.3} procedure ReadBuffer; extern; procedure ReadNumeric(ReadMode: InputKind); extern; procedure ReadLayout; extern; {+doc 5.9.1.4} procedure WriteBuffer; extern; procedure WriteScalars(WriteMode: OutputKind; Format: FormatKind); extern; procedure WriteString(ActualLength: ObjectValue; Format: FormatKind); extern; procedure WriteCAPString(HighBound: CAPBound; Format: FormatKind); extern; procedure WriteLayout(Format: IOFormat); extern; {+doc 5.9.2} procedure ArrayArrayOp(Which: StdProcFuncs; UPLowBound, UPHighBound: ObjectValue; UnpackedRep, PackedRep: TypeRepresentation; PKLowBound, PKHighBound: ObjectValue); extern; procedure ArrayCAPOp(Which: StdProcFuncs; UPLowBound, UPHighBound: ObjectValue; UnpackedRep, PackedRep: TypeRepresentation; PKLowBound, PKHighBound: CAPBound); extern; procedure CAPArrayOp(Which: StdProcFuncs; UPLowBound, UPHighBound: CAPBound; BpRep, UnpackedRep, PackedRep: TypeRepresentation; PKLowBound, PKHighBound: ObjectValue); extern; procedure CAPCAPOp(Which: StdProcFuncs; UPLowBound, UPHighBound: CAPBound; BpRep, UnpackedRep, PackedRep: TypeRepresentation; PKLowBound, PKHighBound: CAPBound); extern; {+doc 5.9.3} procedure SizeRequest(Requested: TypeRepresentation); extern; procedure HeapRequest(Requested: TypeRepresentation); extern; procedure TailorRequest(SelectorRep, SelectedRep: TypeRepresentation); extern; procedure HeapOperation(WhichPf: StdProcFuncs); extern; {+doc 5.9.4} procedure StampProcedure(WhichPf: StdProcFuncs); extern; {+doc 5.10.1} procedure NewCodeLabel(var l: CodeLabel); extern; procedure FutureCodeLabel(var l: CodeLabel); extern; procedure NxIsCodeLabel(var l: CodeLabel); extern; {+doc 5.10.2} procedure JumpOnFalse(var Destination: CodeLabel); extern; procedure Jump(var Destination: CodeLabel); extern; {+doc 5.10.3} procedure FutureStatementLabel(var l: StatementLabel); extern; procedure NextIsStatementLabel(var l: StatementLabel); extern; procedure LabelJump(var Destination: StatementLabel; LabelLevel: DispRange); extern; {+doc 5.10.4} procedure OpenCase; extern; procedure NxIsCase(CaseConst: ObjectValue); extern; procedure NextIsRange(Const1, Const2: ObjectValue); extern; procedure OtherCases; extern; procedure CloseCase; extern; {+doc 5.10.5} procedure OpenFor(Increasing: Boolean; ControlMin, ControlMax: ObjectValue); extern; procedure CloseFor; extern; {+doc 5.11.1} procedure StackActualBlock(var Body: BlockLabel); extern; procedure StackFormalBlock(FAddress: RunTimeAddress); extern; procedure CallBlock; extern; procedure TakeResult(Representation: TypeRepresentation); extern; {+doc 5.11.2} procedure OpenParameterList(ClassOfCall: IdClass); extern; procedure PassBlock; extern; procedure PassReference(RefStatus: RefSecurity); extern; procedure PassValue(RepRequired: TypeRepresentation); extern; procedure CloseParameterList; extern; {+doc 5.11.3} procedure StartBoundPairs; extern; procedure PassArrayBounds(ActualLowBound, ActualHighBound: ObjectValue; SchemaLowBound, SchemaHighBound: CAPBound; IndexLow, IndexHigh: ObjectValue; ArrayRep: TypeRepresentation; ArrayPacked: Boolean); extern; procedure PassCAPBounds(LowBound, HighBound, SchemaLowBound, SchemaHighBound: CAPBound; IndexLow, IndexHigh: ObjectValue; BoundPairRep: TypeRepresentation); extern; {+doc 5.11.4} procedure MakeAuxiliary(RepRequired: TypeRepresentation); extern; {+doc 5.11.5} procedure EnterProgram(ProgId: IdEntry; SourceLine: Scalar); extern; procedure EnterPfBody(PfId: IdEntry; SourceLine: Scalar); extern; procedure LeaveProcedure; extern; procedure LeaveFunction(Result: RunTimeAddress; Representation: TypeRepresentation); extern; procedure ExitProgram; extern; {+doc 5.12.1} procedure OpenProgParameterList; extern; procedure AcceptProgParameter(ParamId: IdEntry); extern; procedure ReturnProgParameter(ParamId: IdEntry); extern; procedure ClsProgParameterList; extern;