This is an old revision of the document!
ACT Runtime Configuration
The behavior of the core ACT library and the way an ACT file is interpreted is typically controlled by command-line options to specific tools. However, there are some common settings that can be selected using a local ACT configuration file and then passed to the ACT tool using the -cnf=file
standard ACT command-line option.
Warnings
The following warnings can be turned on/off using an ACT configuration setting. They can also be adjusted via the standard act command-line options. These are integer ACT configuration variables that should be set to either zero (turn off warning) or one (turn on warning).
act.warn.empty_select
: warn if all the guards in a selection statement in ACT (the core language, not the CHP/HSE sub-language) are false.act.warn.double_expand
: warn if an ACT tool attempts to expand an already expanded ACT object.act.warn.no_local_driver
: warn if a local variable doesn't have a driver if detected during some of the ACT analysis passes.act.warn.dup_pass
: warn if an ACT tool registers a duplicate pass.act.warn.lang_subst
: warn if an ACT tool uses a different language body within a process than the default choice.
Circuit construction complexity
begin act int max_recurse_depth 1000 int max_loop_iterations 1000 end
These two parameters control the expansion/elaboration phase of ACT. ACT language constructs include while loops, as well as recursive circuit constructions. To ensure that the ACT expansion phase will always terminate (albeit with an error), these two parameters control the maximum depth of recursive expansions as well as the maximum number of iterations of a while loop.
begin act int subconnection_limit 16384 end
This specifies a limit on array sizes that also have internal sub-connections (i.e. arrays that are not just simple memories, for example). The limit should be increased as needed, but can have a performance impact if you have a very large array with internal sub-connections.
Attributes
ACT supports attributes on both instances and production rules.
An ACT instance can be assigned an attribute in the following way:
bool v @ [attr=val];
Instance attributes
Production-rule attributes