[m-rev.] for review: fix equivalence type performance problems
Simon Taylor
stayl at cs.mu.OZ.AU
Thu Dec 18 09:46:56 AEDT 2003
On 18-Dec-2003, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> On 17-Dec-2003, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> > On 12-Dec-2003, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> > > On 12-Dec-2003, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> > > > compiler/mercury_compile.m:
> > > > Re-enable equiv_type_hlds.m.
> > > >
> > > > tests/hard_coded/Mmakefile:
> > > > Re-enable testing of equiv_type_hlds.m.
> > >
> > > I would like to see some performance figures for how much
> > > it costs to run this extra pass before we re-enable it.
> >
> > With the extra change below, the equiv_type_hlds pass adds about
> > 5% to compile time, much of that in equiv_type.replace_in_type.
>
> The extra changes below are fine.
>
> I'd still rather avoid the extra 5% if we can...
> for the --high-level-data grades we can't, but is this pass
> really needed for the hlc and LLDS grades?
I'd say yes, because otherwise `:- pragma foreign_proc' and
`:- pragma export' will behave differently in different grades;
the foreign types of the arguments will be different.
> In fact, it's not just avoiding the extra compilation time;
> enabling this pass also weakens our separate compilation guarantees.
> For --high-level-data grades, that's undesirable but unavoidable.
> For --no-high-level-data grades, I'd like to avoid it if we can.
I don't think it's avoidable.
Simon.
--------------------------------------------------------------------------
mercury-reviews mailing list
post: mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the reviews
mailing list