[m-rev.] for review: enumeration argument packing

Julien Fischer juliensf at csse.unimelb.edu.au
Fri Jul 1 16:03:51 AEST 2011

Hi Peter,

On Mon, 27 Jun 2011, Peter Wang wrote:

> Branches: main
> Pack consecutive enumeration arguments in discriminated union types into a
> single word to reduce cell sizes.  Argument packing is only enabled on C
> back-ends, and reordering arguments to improve opportunities for packing is
> not yet attempted.  The RTTI implementations for other back-ends will need to
> be updated, but that is best left until after any argument reordering change.
> Modules which import abstract enumeration types are notified so by writing
> declarations of the form:
> 	:- type foo where type_is_abstract_enum(NumBits).
> into the interface file for the module which defines the type.

I have a couple of questions regarding this:

* Is this option safe in the presence (possibly, by disabling it) of

* Do the C grades in which the optimization is supported include grades
   in which --highlevel-data is enabled?  e.g. the hl.gc grade.

Otherwise, I've had a look through this change and it seems okay.  I
don't have time available to do a full review at the moment, but feel
free to go ahead and commit.

I will probably merge this on the 11.07 branch after it's been tested
for a bit.

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