[mercury-users] Field assignment optimisation
Michael Day
mikeday at yeslogic.com
Mon May 9 16:20:38 AEST 2005
Hi,
Judging by simple timing tests, Mercury does not seem to collapse multiple
field assignments into a single assignment, leading to the creation of
many unneeded temporary structures.
For example, the following expression:
X = ((X0 ^ field1 := F1) ^ field2 := F2) ^ field3 := F3
seems to be doing this:
X1 = X0 ^ field1 := F1,
X2 = X1 ^ field2 := F2,
X = X2 ^ field3 := F3,
when it could just do this:
X = x(... X0 ^ field1, X0 ^ field2, X0 ^ field3, ...)
and avoid many unnecessary allocations and copies.
Is there any way to convince the compiler to optimise multiple field
assignments in this way?
Cheers,
Michael
--
YesLogic Prince prints XML!
http://yeslogic.com
--------------------------------------------------------------------------
mercury-users mailing list
post: mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-users-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the users
mailing list