lustre-v6

The Lustre V6 Verimag compiler
IN THIS PACKAGE

Libraries

This package provides the following libraries (via dune):

lustre-v6

Documentation:

  • Action Time-stamp: <modified the 10/07/2017 (at 15:57) by Erwan Jahier>
  • ActionsDeps Time-stamp: <modified the 11/07/2017 (at 14:37) by Erwan Jahier>
  • Ast2lic Translate Ast to lic.
  • AstCore (Raw) Abstract syntax tree of source Lustre Core programs.
  • AstInstanciateModel Create packages from Model instances.
  • AstPredef Predefined operators Type definition
  • AstRecognizePredef Replaces idref that corresponds to predefined items with the AstCore.Predef constructor
  • AstTab Tabulated version of the parse tree.
  • AstTabSymbol Maps ident to entities (const, type et oper) in some particular contexts.
  • AstV6 (Raw) Abstract syntax tree of source Lustre V6 programs.
  • AstV6Dump Pretty-printing the Syntax Tree
  • Dbg
  • EvalClock Static evaluation of clocks.
  • EvalConst Static evaluation of constants.
  • EvalType Static evaluation of types.
  • FilenameExtras Define a function missing in the Filename ocaml stdlib
  • FreshName All new identifier names ougth to be created via this module.
  • IdSolver Utilities for managing node environements (items tables)
  • L2lCheckCKeyWord Check that the input program ident does not use C keywords
  • L2lCheckKcgKeyWord Check that the input program does not use KCG keywords an ident
  • L2lCheckLoops Check that there is no dependancy loop between equations.
  • L2lCheckMemSafe Time-stamp: <modified the 21/01/2015 (at 15:43) by Erwan Jahier>
  • L2lCheckOutputs Check that each output and each local variable is defined at most and at least once. Also check that one does not try to define an input.
  • L2lExpandArrays Expand structures and arrays. Necessary to generate ec code.
  • L2lExpandEnum
  • L2lExpandMetaOp Expand Meta operators (red, map, etc.)
  • L2lExpandNodes Expand user nodes
  • L2lNoWhenNot Time-stamp: <modified the 26/08/2016 (at 10:49) by Erwan Jahier>
  • L2lOptimIte Transforms expressions of the form
  • L2lRemoveAlias Remove useless aliases created by various l2l passes of the compiler
  • L2lRmPoly Remove overloading of nodes used with iterators.
  • L2lSplit Split the equations of a node into several ones, in such a way that there is only one operator per equation.
  • L2lWhenOnId Time-stamp: <modified the 31/05/2016 (at 16:58) by Erwan Jahier>
  • Lic Define the Data Structure representing Compiled programs. By compiled we mean that constant are propagated, packages are instanciated, recursive node are inlined, etc.
  • Lic2soc Time-stamp: <modified the 09/09/2015 (at 11:23) by Erwan Jahier>
  • LicDump
  • LicEvalClock Performs static evaluations of predefined operators in clocks expressions
  • LicEvalConst Performs static evaluations of predefined operators in constant expressions
  • LicEvalType Performs static evaluations of predefined operators in type expressions
  • LicMetaOp Produces lic for predefined Meta operators
  • LicPrg The data structure resulting from the compilation process
  • LicTab
  • Lv6Compile Main bis
  • Lv6Id
  • Lv6MainArgs
  • Lv6Misc left_eff is a kind of list, but which is in the « reverse » order for easy checking; filtered_left contains just the same information, but the list is made explicit and the information (struct or array accesses) is ordered in the « good » way.
  • Lv6Run
  • Lv6Verbose
  • Lv6errors
  • Lv6lexer
  • Lv6parser
  • Lv6parserUtils
  • Lv6util
  • Lv6version
  • Lxm Lexemes
  • Soc Synchronous Object Component
  • Soc2c
  • Soc2cDep Choose between the various C code generators (heap-based, Stack based, etc).
  • Soc2cExtern
  • Soc2cGenAssign
  • Soc2cHeap Gathers all entities (functions, types) that implement the heap-based C generator.
  • Soc2cIdent
  • Soc2cInstances Each soc has a list of soc instances, made of an (unique) ident and a Soc.key.
  • Soc2cPredef
  • Soc2cStack Gathers all entities (functions, types) that implement the heap-based C generator.
  • Soc2cUtil
  • SocExec
  • SocExecDbg
  • SocExecEvalPredef
  • SocExecValue Manipulating data in the Soc interpreter
  • SocPredef Synchronous Object Code for Predefined operators.
  • SocPredef2cHeap
  • SocPredef2cStack
  • SocUtils Time-stamp: <modified the 27/09/2017 (at 09:54) by Erwan Jahier>
  • SocVar Expand struct and arrays when communicating with the outside world
  • SortActions Time-stamp: <modified the 15/01/2015 (at 10:47) by Erwan Jahier>
  • SortActionsExpe Time-stamp: <modified the 21/11/2016 (at 17:07) by Erwan Jahier>
  • TopoSort Time-stamp: <modified the 03/02/2016 (at 10:04) by Erwan Jahier>
  • UnifyClock Sub module of EvalClock that defines clock-checking utilities.
  • UnifyType Define type-checking utilities

Dependencies: extlib, num, rdbg