• Aucun résultat trouvé

1978 12:42 PM DIRECTORY CodeDefs: FROM "codedefs&#34

N/A
N/A
Protected

Academic year: 2022

Partager "1978 12:42 PM DIRECTORY CodeDefs: FROM "codedefs&#34"

Copied!
2
0
0

Texte intégral

(1)

Code.mesa 2-Sep-78 12:69:69 Page 1

-- file code.mesa

-- last mOdified by Sweet. May 10. 1978 12:42 PM DIRECTORY

CodeDefs: FROM "codedefs" USING [Address. Calls. CCIndex, Driver, DriverNotify. Expression. Final, Fl

··ow, FlowExpression. Jumps, LabelCCIndex. Lexeme. OutCode, PeepholeQ, PeepholeU. PeepholeZ. Stack, Sta

**tement, Store],

CompilerDefs: FROM "compilerdefs" USING [MakeSwappable].

OpTableDefs: FROM "optabledefs" USING [OpTable], P5ADefs: FROM "p5adefs" USING [Cmodule].

SymDefs: FROM "symdefs" USING [ByteIndex, ContextLevel. CTXIndex, ISEIndex, recordCSEIndex].

TableDefs: FROM "tabledefs" USING [AddNotify. DropNotify].

TreeDefs: FROM "treedefs";

DEFINITIONS FROM CodeDefs;

Code: PROGRAM

IMPORTS CodeDefs. CompilerDefs, OpTableDefs, P5ADefs, TableDefs EXPORTS CompilerDefs. P5ADefs •

PUBLIC BEGIN

-- the following variables are shared among the code generation modules curctxlvl: SymDefs.ContextLevel;

codeptr: CCIndex;

curbodyretlabel: LabelCCIndex;

mainBody: BOOLEAN;

ZEROlexeme: word literal Lexeme;

acstack: INTEGER;

stking: BOOLEAN;

firstcaseselread: BOOLEAN;

mwcaseseltlex: se Lexeme;

fileindex: SymDefs.ByteIndex;

catchcount: CARDINAL;

catchoutrecord: SymDefs.recordCSEIndex;

tempcontext: SymDefs.CTXIndex;

tempstart. framesz, cfs: CARDINAL;

actenable: LabelCCIndex;

xtracting: BOOLEAN;

xtractlex: Lexeme;

xtractsei: SymDefs.ISEIndex;

ACStackOverflow: SIGNAL· CODE;

ACStackUnderflow: SIGNAL· CODE;

StackNotEmptyAtStatement: SIGNAL· CODE;

CodeNotImplemented: SIGNAL· CODE;

DeletingUnreachableCode: SIGNAL· CODE:

CodePassInconsistancy: SIGNAL a CODE;

CodePassError: ERROR en: CARDINAL]-· CODE;

P5module: PROCEDURE·

BEGIN -- starts the code generation pass TableDefs.AddNotify[CodeDefs.DriverNotify]:

P5ADefs.Cmodule[];

TableDefs.DropNotify[CodeDefs.DriverNotify]: RETURN END:

P5Error: PROCEDURE en: CARDINAL] • BEGIN

ERROR CodePassError[n]

END;

BEGIN OPEN CompilerDefs;

MakeSwappable[OpTableDefs.OpTable. pass5];

MakeSwappable[Driver. pass5]:

MakeSwappable[Address, pass5];

MakeSwappable[Stack, passS]:

MakeSwappable[Flow, pass6];

MakeSwappable[Store, pass6]:

MakeSwappable[Expression, pass6];

MakeSwappable[FlowExpression, pass5];

MakeSwappable[Statement, pass5]:

MakeSwappable[Calls. pass6]:

(2)

Code.mesa 2-Sep-78 12:69:69

MakeSwappable[OutCode. pass6]i MakeSwappable[PeepholeQ. pass6]i MakeSwappable[PeepholeU. pass6]i MakeSwappable[PeepholeZ. pass6]i MakeSwappable[Jumps. pass5]i MakeSwappable[Final. pass5]i ENDi

END •••

Page 2

Références

Documents relatifs

Such a delegation is represented by a delegated block object, having the assigned IP network numbers as subordinates. Also, part of the block can be further delegated to

a) It allows an abstract interface for the Call Agent so that for example, the same incoming call-setup event can be used in the case of MF wink start and MF immediate

disassociation with the arpa domain and its understanding the domain would be used by the Internet Corporation for Assigned Names (ICANN) and Numbers and the Internet

This document more clearly distinguishes telephone numbers as identifiers of network termination points from dial strings and removes the latter from the purview of

Existing implementations of RFC 3261 that do not participate in the resource priority mechanism follow the normal rules of RFC 3261, Section 8.2.2: "If a UAS does

This document defines a new parameter "enumdi" for the "tel" Uniform Resource Identifier (URI) to support the handling of ENUM queries in Voice over

The date/time information is extracted from the header, shifted to the specified time zone, and the value of the given date-part is determined.. The test returns true if

However, if not enough duplicate ACKs arrive from the receiver, the fast retransmit algorithm is never triggered -- this situation occurs when the congestion window is