[MLton-devel] eliminating HandlerPush/Pop

Suresh Jagannathan suresh@cs.purdue.edu
Fri, 10 Jan 2003 10:24:38 -0500

On Friday 10 January 2003 09:40 am, Stephen Weeks wrote:
> After encountering yet more annoyances with HandlerPush/Pop while
> working on profiling, I decided to go ahead and put in a couple of
> simple strategies for implementing handlers that do not require
> HandlerPush/Pop.  I added a new flag, -handlers, and ran the
> benchmarks in three ways.
> MLton0 -- mlton -handlers pushpop
>   the old way, using HandlerPush/Pop
> MLton1 -- mlton -handlers simple
>   insert appropriate statements before each call, raise, and return
> MLton2 -- mlton -handlers flow
>   like -handlers simple, but with some simple forward dataflow
>   analysis to eliminate redundant assignments

Can you explain what "simple" does, i.e., what statements are
inserted before call, raise, and return?  By "redundant assignments"
do you mean multiple handlerpush (handlerpop) operations for a given
handler without intervening handlerpushes (handlerpop) for other handlers?

This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld http://www.vasoftware.com
MLton-devel mailing list