[m-rev.] for review: IL back-end: use value types for environments

Fergus Henderson fjh at cs.mu.OZ.AU
Mon Jul 23 00:25:50 AEST 2001


On 17-Jul-2001, Tyson Dowd <trd at cs.mu.OZ.AU> wrote:
> On 17-Jul-2001, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> > 
> > Yes, it improves efficiency.
> 
> Have you measured it?

Not yet.  Mainly because it isn't switchable yet ;-)

> > > If you are going to say efficiency, I'm going to say there are *lots* of
> > > other things we could work on that are fully verifiable that could give
> > > us better efficiency.
> > 
> > Such as?
> > The only ones that I know of are fixing `--high-level-data' (not sure
> > exactly what is required there) and eliminating temporary variables.
> 
> Err... called my bluff eh....
> - Implementing arrays of unboxed types (int[])

I'm not sure what you're referring to there, since such arrays are
implemented and work fine -- they are used e.g. in the code that
we generate for string switches.

If you're talking about implementing the Mercury type `array(int)'
as the IL type `int []', then I don't think it is a good idea,
because it would require implicit O(N) conversions.

> - Lazy setup of RTTI / 'high-level' RTTI

That's an optimization for short-running programs,
but a pessimization for long-running programs.
Optimizing short-running programs is important,
but optimizing long-running programs is generally more important.
So I'm not convinced that it's a good idea.

If we do do it, it should be switchable.

> - eliminate forwading calls for interfacing with .NET
> - eliminate unnecessary castclass and isinst instructions

These are both good points.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
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