[m-rev.] for review: static terms in the MLDS backend

Peter Wang novalazy at gmail.com
Wed Sep 2 15:15:35 AEST 2009


2009/8/31 Zoltan Somogyi <zs at csse.unimelb.edu.au>:
> I apologize for the size of this diff, but I was working on it at home
> in a pipelined fashion, working on the next speedup while the previous
> one was being bootchecked. There was never any intermediate point
> where waiting for a review would have been convenient.
>
> I intend to commit this diff tomorrow morning (sep 1). Reviews are welcome
> both before and after then.

In case you weren't aware, float_field.m and static_no_tag.m are failing.
The problematic code is this:

    static /* final */ const MR_Box float_field__const_var_5[3] = {
      ((MR_Box) ((MR_Integer) 6)),
      ((MR_Box) (MR_box_float((MR_Float) 7.0000000000000000))),  /* here */
      ((MR_Box) ((MR_Integer) 8))
    };

Strangely, it does the right thing immediately before that:

    static /* final */ const MR_Float float_field__float_3 =
(MR_Float) 3.0000000000000000;

    static /* final */ const MR_Box float_field__const_var_4[3] = {
      ((MR_Box) ((MR_Integer) 2)),
      (MR_Box) &float_field__float_3,
      ((MR_Box) ((MR_Integer) 4))
    };

Peter
--------------------------------------------------------------------------
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