[m-rev.] for review: trace goals for erlang
Peter Ross
pro at missioncriticalit.com
Thu Jun 14 11:49:32 AEST 2007
On Tue, Jun 12, 2007 at 05:55:40PM +1000, Peter Wang wrote:
> Estimated hours taken: 6
> Branches: main
>
> Support trace goals and trace runtime conditions in Erlang backend.
>
> compiler/elds.m:
> Extend the ELDS to record the environment variables referenced by
> each procedure.
>
> Extend the ELDS for Erlang send (!) and `receive' statements.
>
> Add elds_call_self which generates a call to the Erlang builtin
> function `self'.
>
> compiler/elds_to_erlang.m:
> Output `ENVVAR' mkinit_erl directives for all environment variables
> referenced in the module.
>
> At program startup, call the init_env_vars() function generated by
> mkinit_erl.
>
> compiler/erl_call_gen.m:
> Generate code for the special foreign_procs which are inserted for
> trace goals with runtime conditions.
>
> compiler/erl_code_gen.m:
> Generate code for trace goals.
>
> Conform to ELDS changes.
>
> compiler/erl_code_util.m:
> Extend erl_gen_info to keep track of the environment variables
> referenced by the procedure being generated.
>
> Conform to ELDS changes.
>
> library/erlang_builtin.m:
> Make the Erlang global server handle messages used by init_env_vars()
> and to evaluate trace runtime conditions.
>
> compiler/simplify.m:
> Don't abort at trace conditions for Erlang target since they are
> supported now.
>
> util/mkinit_erl.c:
> Generate an init_env_vars() function in an _init.erl file. When called
> at startup, this will cause the Erlang global server to record whether
> each environment variable is set or not.
>
> Remove the code to check that the environment variable name in an
> ENVVAR directive is suitable for C. It didn't take into account that
> in Erlang files the ENVVAR directive has a "% " prefix, and also we
> generate the directive so that funny characters will be suitably
> escaped for an Erlang string so the restriction isn't necessary.
>
Looks fine.
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to: mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions: mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the reviews
mailing list