[m-rev.] for post-commit review: typecheck speedups

Julien Fischer juliensf at csse.unimelb.edu.au
Mon Sep 14 16:32:09 AEST 2009


On Mon, 14 Sep 2009, Zoltan Somogyi wrote:

> compiler/typecheck.m:
> compiler/typeclasses.m:
> 	Checkpoints during typechecking are needed only when debugging the
> 	typechecker; during all other compilations, they are of no use
> 	but do take up time. This diff compiles the checkpoints into the
> 	compiler only if --trace-flag type_checkpoint is specified
> 	when building the compiler.
>
> 	When typechecking unifications with integer, float and string
> 	constants, use a cut-down version of the usual typechecking algorithm
> 	that does not look for special cases (such as existentially typed
> 	or type-class-constrained arguments) that cannot occur for such
> 	cons_ids.
>
> 	Optimize away some redundant checks.
>
> 	These changes speed up the compiler by 1.5% when compiling
> 	training_cars_full.m, and it yields a speedup of 0.4% on
> 	tools/speedtest.
>
> compiler/options.m:
> doc/user_guide.texi:
> 	Comment out the documentation of --debug-types, since now it works
> 	only with --trace-flag type_checkpoint, and hence even more for
> 	developers only than before.
>
> compiler/prog_type_subst.m:
> 	Improve programming style without algorithmic changes.

That looks fine.

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