[m-rev.] for review: Avoid duplicate labels in target code generated for tag switches.

Julien Fischer jfischer at opturion.com
Thu Feb 14 15:33:18 AEDT 2013


On Tue, Feb 12, 2013 at 5:35 PM, Peter Wang <novalazy at gmail.com> wrote:

> Branches: main, release
> ---
> commit f81fa62c71b0afa1402591c383757643dc5a0725
> Author: Peter Wang <novalazy at gmail.com>
> Date:   Tue Feb 12 17:33:46 2013 +1100
>
>     Avoid duplicate labels in target code generated for tag switches.
>
>     In a MLDS tag switch, the code of each case was generated once then duplicated
>     for multiple primary tags.  This produces invalid target code if the duplicated
>     code contains a label, e.g. to break of out of binary search loop.
>
>     The solution in this patch is to not duplicate the code if it contains a label,
>     but to regenerate it everywhere it occurs to ensure new labels.
>
>     compiler/ml_tag_switch.m
>             As above.
>
>     tests/hard_coded/Mmakefile:
>     tests/hard_coded/tag_switch_dup_label.exp:
>     tests/hard_coded/tag_switch_dup_label.m:
>             Add test case.

That's fine.

Cheers,
Julien.



More information about the reviews mailing list