[m-rev.] for review: dependent AND parallelism via inline C code
Zoltan Somogyi
zs at csse.unimelb.edu.au
Mon Nov 3 15:31:25 AEDT 2008
On 29-Oct-2008, Peter Wang <novalazy at gmail.com> wrote:
> > + % XXX The implementation actually allows a future to be signalled
> > + % more than once, provided the signals specify the same value.
> > %
>
> Replace the XXX and the sentence before it with something like:
>
> A future may be signalled more than once if it is passed to a procedure
> multiple times, but then it must be signalled with the same value.
Under what circumstances can it be passed to a procedure multiple times?
Superhomogeneous form requires the arguments of a call to be *distinct*
variables. Some optimizations such as excess assignment elimination may
replace distinct input arguments with multiple copies of the same variable,
but as far as I know this shouldn't happen for output arguments.
> > new_future(Future::uo),
> > [will_not_call_mercury, promise_pure, thread_safe, will_not_modify_trail],
>
> To prevent intermodule inlining `may_not_duplicate' should be added.
> Similarly for the following.
I have done that, but what would be the problem with intermodule inlining?
I have followd your other suggestions.
Zoltan.
--------------------------------------------------------------------------
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