[m-dev.] for review: clipping instmap deltas to the plain nonlocals

Zoltan Somogyi zs at cs.mu.OZ.AU
Wed Sep 6 12:13:51 AEDT 2000


On 25-Aug-2000, Zoltan Somogyi <zs at cs.mu.OZ.AU> wrote:
> For review by Fergus, since he suggested the approach.
> 
> The motivation for this diff was to allow me to locate the bug responsible
> for Tom's bug report about the compiler abort when compiling his XML parser,
> which looked to be caused by my changes to instmap deltas. However, that bug
> is still there after I undid those changes. It consists of deforestation
> replacing an assignment to a variable with "true" with the goal_info of the
> "true" saying it binds the variable bound by the assignment, later optimizing
> away this "true" with another "true" with an empty instmap delta, and then
> finding that the arm of the if-then-else in which this happens does not define
> that variable even though the other arm does. This happens in a procedure body
> altered several times by deforestation, so my guess is that deforestation
> generates HLDS that is good enough for the code generator, but some of whose
> goal_infos have subtle bugs that mislead further invocations of deforestation
> itself, perhaps because recursive invocations of deforestation look at the
> goal_infos before the rest of the compiler does, and maybe before they have
> been set properly. In any case, it looks like that is a bug for Simon.

I will commit this late today or tomorrow unless I hear any complaints.

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