-- AMModelLocation.Mesa
-- last modified on October 26, 1982 12:01 pm by Paul Rovner

DIRECTORY
AMModel USING[Section],
PrincOps USING[FrameCodeBase, BytePC],
WorldVM USING[World];

AMModelLocation: DEFINITIONS
= BEGIN OPEN AMModel, PrincOps, WorldVM;


CodeLocation: TYPE = RECORD[codeBase: FrameCodeBase, pc: BytePC];

-- The following procedures are provided as a higher level of interface than the fine grain table operations in AMModelPrivate, yet they are not as high as the AMModel operations. They return NIL if the specified section is not loaded.

EntryLocations: PROC[section: Section] RETURNS[world: World, list: LIST OF CodeLocation];
--for statement start or procedure entry

ExitLocations: PROC[procedure: Section] RETURNS[world: World, list: LIST OF CodeLocation];
--for procedure exit

END.