Include [SaffronBaseDecls]; SaffronPG: Module = Begin EmptyPFD: BaseFunction [] Returns [ParameterizedFieldDescriptor]; AddNestedCellToPFD: BaseFunction [ParameterizedFieldDescriptor.arg] Returns [ParameterizedFieldDescriptor.res] DamagedReps [ParameterizedFieldDescriptor.arg]; AddStaticLinkCellToPFD: BaseFunction [ParameterizedFieldDescriptor.arg] Returns [ParameterizedFieldDescriptor.res] DamagedReps [ParameterizedFieldDescriptor.arg]; AddVarsCellToPFD: BaseFunction [ParameterizedFieldDescriptor.arg, ROPE.fieldName] Returns [ParameterizedFieldDescriptor.res] DamagedReps [ParameterizedFieldDescriptor.arg]; AddFieldNameCellToPFD: BaseFunction [ParameterizedFieldDescriptor.arg, ROPE.fieldName] Returns [ParameterizedFieldDescriptor.res] DamagedReps [ParameterizedFieldDescriptor.arg]; PFDIsLocal: BaseFunction [ParameterizedFieldDescriptor] Returns [BOOLEAN]; CreateEmptyProgramGraph: BaseFunction [] Returns [ProgramGraph]; FakeDamageProgramGraph: BaseFunction [ProgramGraph.arg] Returns [ProgramGraph.res] DamagedReps [ProgramGraph.arg]; AddSubroutineProcedureGraphToProgramGraph: BaseFunction [ProcedureGraph.subroutine, ProgramGraph.arg] Returns [ProgramGraph.res] DamagedReps [ProgramGraph.arg]; AddMainProcedureGraphToProgramGraph: BaseFunction [ProcedureGraph.main, ProgramGraph.arg] Returns [ProgramGraph.res] DamagedReps [ProgramGraph.arg]; MakeProcedureGraph: BaseFunction [ProgramFragment] Returns [ProcedureGraph] DamagedReps [ProgramFragment]; ConcatProgramFragments: BaseFunction [ProgramFragment.first, ProgramFragment.second] Returns [ProgramFragment.res] DamagedReps [ProgramFragment.first, ProgramFragment.second]; MakePGPushConstant: BaseFunction [Value] Returns [ProgramFragment]; MakePGNoOp: BaseFunction [] Returns [ProgramFragment]; MakePGNegate: BaseFunction [] Returns [ProgramFragment]; MakePGNot: BaseFunction [] Returns [ProgramFragment]; MakePGAdd: BaseFunction [] Returns [ProgramFragment]; MakePGSubtract: BaseFunction [] Returns [ProgramFragment]; MakePGMultiply: BaseFunction [] Returns [ProgramFragment]; MakePGDivide: BaseFunction [] Returns [ProgramFragment]; MakePGMod: BaseFunction [] Returns [ProgramFragment]; MakePGAnd: BaseFunction [] Returns [ProgramFragment]; MakePGOr: BaseFunction [] Returns [ProgramFragment]; MakePGEqual: BaseFunction [] Returns [ProgramFragment]; MakePGNotEqual: BaseFunction [] Returns [ProgramFragment]; MakePGTest: BaseFunction [ProgramFragment.ifPart, ProgramFragment.thenPart, ProgramFragment.elsePart] Returns [ProgramFragment.res] DamagedReps [ProgramFragment.ifPart, ProgramFragment.thenPart, ProgramFragment.elsePart]; MakePGLoadLocal: BaseFunction [ParameterizedFieldDescriptor] Returns [ProgramFragment]; MakePGLoadIndirect: BaseFunction [ParameterizedFieldDescriptor] Returns [ProgramFragment]; MakePGStoreLocal: BaseFunction [ParameterizedFieldDescriptor] Returns [ProgramFragment]; MakePGStoreIndirect: BaseFunction [ParameterizedFieldDescriptor] Returns [ProgramFragment]; End. άSaffronProgramGraphDecls.ThreeC4 James Rauen, August 8, 1988 7:37:15 pm PDT Last edited by: James Rauen August 23, 1988 2:49:00 pm PDT Parameterized Field Descriptor Program Graph Procedure Graph Program Fragment Κ€˜™ J™*Icode™:J™—JšΠizœ˜J˜JšΟn œœ˜headšΟz™šžœ˜ Jš œ˜Jšœ ˜'J˜—šžœ˜Jš œ#˜/Jšœ#˜*Jš œ$˜/J˜—šžœ˜Jš œ#˜/Jšœ#˜*Jš œ$˜/J˜—šžœ˜Jš œ$Οkœ ˜?Jšœ#˜*Jš œ$˜/J˜—šžœ˜Jš œ$ œ ˜?Jšœ#˜*Jš œ$˜/J˜—šž œ˜ Jš œ˜+Jšœ ˜J˜——šŸ ™ šžœ˜Jš œ˜Jšœ˜J˜—šžœ˜Jš œ˜Jšœ˜Jš œ˜J˜—šž)œ˜*Jš œ.˜:Jšœ˜Jš œ˜J˜—šž#œ˜$Jš œ(˜4Jšœ˜Jš œ˜——šŸ™šžœ˜Jš œ˜Jšœ˜Jš œ˜——šŸ™šžœ˜Jš œ0˜