[m-rev.] diff: avoid extra traversal in deep_profiling.m

Julien Fischer juliensf at csse.unimelb.edu.au
Tue Dec 25 00:12:59 AEDT 2007


On Mon, 24 Dec 2007, Paul Bone wrote:

>
> On 24/12/2007, at 11:00 AM, Zoltan Somogyi wrote:
>

...

>> @@ -984,18 +982,28 @@
>>              "deep_prof_transform_goal: shorthand should have gone by now")
>>      ).
>> 
>> -:- pred deep_prof_transform_conj(int::in, goal_path::in,
>> +:- pred deep_prof_transform_conj(int::in,
>> +    conj_type::in, goal_path::in,
>>      list(hlds_goal)::in, list(hlds_goal)::out, bool::out,
>>      deep_info::in, deep_info::out) is det.
>> 
>> -deep_prof_transform_conj(_, _, [], [], no, !DeepInfo).
>> -deep_prof_transform_conj(N, Path, [Goal0 | Goals0], [Goal | Goals],
>> +deep_prof_transform_conj(_, _, _, [], [], no, !DeepInfo).
>> +deep_prof_transform_conj(N, ConjType, Path, [Goal0 | Goals0], Goals,
>>          AddedImpurity, !DeepInfo) :-
>>      N1 = N + 1,
>>      deep_prof_transform_goal(cord.snoc(Path, step_conj(N1)), Goal0, Goal,
>>          AddedImpurityFirst, !DeepInfo),
>> -    deep_prof_transform_conj(N1, Path, Goals0, Goals, AddedImpurityLater,
>> -        !DeepInfo),
>> +    deep_prof_transform_conj(N1, ConjType, Path, Goals0,
>> +        TailGoals, AddedImpurityLater, !DeepInfo),
>> +    Goal = hlds_goal(GoalExpr, _),
>> +    (
>> +        GoalExpr = conj(plain_conj, Conjunct),
>
> s/Conjunct/Conjuncts
>
> I missed this when I reviewed it earlier.
>

I've committed a fix for this.

Julien.
--------------------------------------------------------------------------
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