Next: 10. Further information
Up: Dataflow analysis with MURZ:
Previous: 8.3 Compiling
In utils.ml, some useful data types are implemented. They are
- VarSet: set of variables;
- const: set of constant integers;
- constdom: lattice of constant integers;
- ExpressionSet: set of expressions;
- CommandSet: set of commands (as labels).
Some useful functions are also available:
- make_var_set: turns a list of variables into a set;
- variabili (variables): create a list of all the variables
that appear in an expression;
- calcola_tutte_le_variabili
(compute all the variables): computes a list of all the variables
of the program;
- print_vars: prints a list of variables;
- f_equal: compares to functions pointwise, using a list of points;
- sem_*_*op: semantics of the operators of concrete syntax;
- eval_expr: evaluates an expression in the lattice of constants;
- crea_expression_set: turns a list of expressions into a set;
- calcola_tutte_le_espressioni:
(compute all the expressions): computes a set of all the variables
of the program;
- sub_expressions: computes a list of all the
subexpressions of an expression;
- non_const_sub_expressions:
computes a list of all the non-constant
subexpressions of an expression;
- non_trivial_sub_expressions:
computes a list of all the non-trivial
subexpressions of an expression;
- tutti_i_nodi (all the nodes): computes a set with all
the nodes of the program.
Next: 10. Further information
Up: Dataflow analysis with MURZ:
Previous: 8.3 Compiling
Diego
2000-05-16