[m-dev.] for review: fix intermodule optimization bugs
Warwick Harvey
wharvey at cs.monash.edu.au
Fri Nov 12 16:53:00 AEDT 1999
Fergus wrote:
> On 12-Nov-1999, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> >
> >
> > Estimated hours taken: 2
> >
> > Fix two bugs in intermodule optimization reported by Warwick Harvey.
> >
> > compiler/intermod.m:
> > Don't read `.opt' files for nested modules.
>
> Ouch.
Indeed! We HAL developers tend to rely heavily on the intermodule
optimisations (among others) that Mercury does to avoid what would otherwise
be significant interface overheads (we have a fairly standard catchcry here,
`..., but Mercury should optimise that away').
Our current two arithmetic solvers use nested submodules in their Mercury
interface, and performing intermodule optimisation on these modules provides
a substantial reduction in the overhead of that interface. Our current
work-around is to export a type concretely that should be abstract, just so
this intermodule optimisation works. We'd prefer it if you didn't just
switch it off. (If you like, I withdraw my bug report ;-).
Yes, we're working on an alternative interface to the solvers, which won't
use nested submodules (it has no need), but it's not finished yet, and we
don't know whether it will be better or worse (by speed or other criteria)
than the existing one.
> That is fine as a work-around for the coming release,
> but it would be nice if we could find a solution
> (rather than a work-around) for that problem.
We think so. :-)
Warwick
--------------------------------------------------------------------------
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