[m-dev.] for review: MLDS tag switches

Peter Ross peter.ross at miscrit.be
Wed Nov 15 03:44:51 AEDT 2000


On Wed, Nov 15, 2000 at 02:51:21AM +1100, Fergus Henderson wrote:
> 
> Estimated hours taken: 8
> 
> This is the first of three changes that I have planned which all
> relate to MLDS switch handling.  This one following implements tag
> switches for the MLDS->C back-end.  It compiles tag switches into MLDS
> switches (if the target supports them -- note that the IL back-end
> doesn't).
> 
> The second part will fix some code duplication between the MLDS and
> LLDS back-ends that I've introduced in this change and in some of my
> earlier MLDS switch handling changes.
> 
> The third part will be an MLDS to MLDS transformation pass that
> converts MLDS switches into computed gotos (eventually it should
> also handle binary searches too).  This pass will allow tag switches
> to work for the IL back-end.  This pass will also replace dense_switch.m.
> 
> compiler/ml_tag_switch.m:
> 	New file.  Handles switches on tags for the MLDS back-end.
> 
> compiler/ml_code_util.m:
> 	Split the code for generating secondary tags out into a new
> 	function ml_gen_secondary_tag_rval and export that, for use
> 	by ml_tag_switch.m.
> 
> compiler/ml_switch_gen.m:
> 	Uncomment the code for calling ml_tag_switch.m.
> 	Export ml_switch_generate_default, for use by ml_tag_switch.m.
> 

This diff looks fine.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list