[m-dev.] for review: structure reuse non-locals computation

Fergus Henderson fjh at cs.mu.OZ.AU
Sat Feb 19 22:39:53 AEDT 2000


On 07-Feb-2000, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> 
> compiler/quantification.m:
> 	Add an alternative method of computing the non-locals for 
> 	goals which do structure reuse, This is done to avoid unnecessary
> 	field extractions and variable saves for arguments of reused terms.
> 	The code-gen non-locals are the same as the ordinary non-locals
> 	except that arguments of a reconstruction which are taken
> 	from the reused cell are not included in the non-locals set.
> 	Mode analysis still uses the full non-locals set.
> 
> 	Add a field to type quant_info to record which set
> 	of non-locals is being computed. Use record syntax
> 	for the access predicates.
> 
> compiler/hlds_goal.m:
> 	Add access predicates to extract and update the code_gen_nonlocals
> 	in a goal_info. When structure reuse is not performed, the nonlocals
> 	and the code-gen nonlocals will always be the same.
> 	
> 	Use record syntax for hlds_goal_info access predicates.
> 
> compiler/goal_util.m:
> 	Add a predicate `goal_contains_reconstruction', which
> 	succeeds if the goal does any structure reuse.
> 	This will always fail on the main branch.
> 
> 	Add missing disjuncts for par_conj goals in `goal_calls' and
> 	`goal_calls_pred_id'.
> 
> compiler/liveness.m:
> compiler/live_vars.m:
> compiler/ml_code_gen.m:
> compiler/par_conj_gen.m:
> 	Use the code_gen_nonlocals rather than the ordinary nonlocals.
> 
> configure.in:
> 	Add a test for record syntax.

For a log message that long, it is probably a good idea to have
a short summary at the top.  The first paragraph of the log message
for quantification.m would probably make a good candidate, but
the way you've structure it, it looks like that paragraph only
describe sthe changes to that file, not the whole of the change.

(I think this point is moot, since the change has already been
committed, and cvs doesn't provide any simple way of editing the
change logs for changes which have already been committed.
But nevertheless, I thought this point worth mentioning for
future reference...)

Apart from that, this change looks fine.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list