<<>> <> <> <> <> <<>> DIRECTORY C2CAddressing, C2CBasics, C2CDefs, Rope; C2CRunTime: CEDAR DEFINITIONS = BEGIN <<>> ROPE: TYPE = Rope.ROPE; Code: TYPE = C2CDefs.Code; AddressContainer: TYPE = C2CAddressing.AddressContainer; <<>> <> <> <> <<>> <> install: READONLY Rope.ROPE; <> IncludeInstallationSupport: PROC []; IncludeCedarExtra: PROC []; <<>> <> MoveWords: PROC [dst, src: Code, nWords: INT] RETURNS [Code]; <> <> <> <> <<>> MoveWordsDisjoint: PROC [dst, src: Code, nWords: INT] RETURNS [Code]; <> <> <> <> <<>> EqualWords: PROC [x, y: Code, nWords: INT] RETURNS [Code]; <> <> <> <> MoveBytesDisjoint: PROC [dst, src: Code, nBytes: INT] RETURNS [Code]; <> <> <> <> <<>> <<>> ExtractField: PROC [src: AddressContainer, bits: INT] RETURNS [Code]; <> <> <> <> <<>> DepositField: PROC [dst: AddressContainer, bits: INT, word: Code] RETURNS [Code]; <> <> <> <> <<>> MoveField: PROC [dst, src: AddressContainer, bits: INT] RETURNS [Code]; <> <> <> <> <<>> EqualFields: PROC [x, y: AddressContainer, bits: INT] RETURNS [Code]; <> <> <> <> <<>> FillFields: PROC [dst: AddressContainer, bits: INT, times: INT, value: Code] RETURNS [Code]; <> <> <> FillWords: PROC [dst: Code, times: INT, value: Code] RETURNS [Code]; <> <> <> <<>> FillLongFields: PROC [dst, src: AddressContainer, bits: INT, times: INT] RETURNS [Code]; <> <> <> FillLongWords: PROC [dst, src: Code, times: INT, nWords: NAT] RETURNS [Code]; <> <> <> <> RaiseBoundsFault: PROC [] RETURNS [Code]; <> RaiseAbstractionFault: PROC [] RETURNS [Code]; <> RaiseArithmeticFault: PROC [] RETURNS [Code]; <> <<>> RaiseUnnamedError: PROC [] RETURNS [Code]; <> <<>> <> <<>> nakedBoundsError: READONLY ROPE; <> <<>> <<>> <<32 bit precision Signed>> <> SignedPwr: PROC [base, exp: Code] RETURNS [Code]; <<>> <<32 bit precision Unsigned>> <> <<>> UnsignedPwr: PROC [base, exp: Code] RETURNS [Code]; <<>> <<32 bit precision Floating point>> <> <<>> FloatInt: PROC [Code] RETURNS [Code]; FloatCard: PROC [Code] RETURNS [Code]; RealNeg: PROC [Code] RETURNS [Code]; RealAdd: PROC [a, b: Code] RETURNS [Code]; RealSub: PROC [a, b: Code] RETURNS [Code]; RealMul: PROC [a, b: Code] RETURNS [Code]; RealDiv: PROC [a, b: Code] RETURNS [Code]; RealGt: PROC [a, b: Code] RETURNS [Code]; RealGe: PROC [a, b: Code] RETURNS [Code]; RealEq: PROC [a, b: Code] RETURNS [Code]; RealAbs: PROC [Code] RETURNS [Code]; <<--may re-evaluate argument>> RealMin: PROC [a, b: Code] RETURNS [Code]; <<--may re-evaluate arguments>> RealMax: PROC [a, b: Code] RETURNS [Code]; <<--may re-evaluate arguments>> RealPwr: PROC [base, exp: Code] RETURNS [Code]; <<64 bit precision Floating point>> <> <<>> <> nakedUnnamedError: READONLY ROPE; <> nakedUnwindError: READONLY ROPE; <> nakedAbortedError: READONLY ROPE; <> <<>> nakedUncaughtError: READONLY ROPE; <> <<>> nakedNarrowFault: READONLY ROPE; <> PushHandler: PROC [context: Code, handler: Code] RETURNS [Code]; <> PopHandler: PROC [] RETURNS [Code]; <> RaiseSignal: PROC [which, rtns, args: Code] RETURNS [Code]; <> <<>> RaiseError: PROC [which, args: Code] RETURNS [Code]; <> <<>> <<>> <> StartModule: PROC [retPtr, module, args: Code] RETURNS [Code]; <> <> <> ExtensionAlloc: PROC [sz: Code] RETURNS [Code]; <> <> ExtensionFree: PROC [ptr: Code] RETURNS [Code]; <> <> <<>> <> Fork: PROC [processPtr, proc: Code] RETURNS [Code]; <> Join: PROC [process: Code] RETURNS [Code]; <> Wait: PROC [cond, lock: Code] RETURNS [Code]; <> Notify: PROC [cond: Code] RETURNS [Code]; <> Broadcast: PROC [cond: Code] RETURNS [Code]; <> <<>> MonitorEntry: PROC [lock: Code] RETURNS [Code]; <> <<>> MonitorExit: PROC [lock: Code] RETURNS [Code]; <> <> AssignRef: PROC [dstPtr: Code, src: Code] RETURNS [Code]; <> <> AssignRefInit: PROC [dstPtr: Code, src: Code] RETURNS [Code]; <> <> << >> AssignRefComposite: PROC [dst: Code, src: Code, type: Code, words: INT] RETURNS [Code]; <> <> <<>> AssignRefCompositeInit: PROC [dst: Code, src: Code, type: Code, words: INT] RETURNS [Code]; <> <> NewObject: PROC [nWords: Code, type: Code] RETURNS [Code]; <> <> <<>> Narrow: PROC [ref: Code, type: Code] RETURNS [Code]; <> <> GetReferentType: PROC [ref: Code] RETURNS [Code]; <> <> CheckProc: PROC [proc: Code] RETURNS [Code]; <> <> <<>> END.