FloorPlan:
PROC[top: IPTop.Ref, depth:
NAT ←
LAST[
NAT], firstCut:
IP.OrientationTypes ← hor];
--Only does floor planning using 'fake' components
--Stop at depth or leaf node whichever comes earlier
--At leaf node the `component' are still fake, so call AssignLot to instantiate to real ones.
AssignLot:
PROC[top: IPTop.Ref, reversible:
BOOL ←
FALSE];
-- Replace 'fake' components by real ones.
-- reversible = TRUE => able to undo the assignment step by step