RE: [sv-bc] Re: Self-assignment of slice of unpacked array

From: Steven Sharp <sharp@cadence.com>
Date: Tue Nov 09 2004 - 12:10:30 PST

>The ref ports don't change the fact that 'Y = X;' is a blocking
>assignment. The RHS is evaluated first, followed by an optional blocking
>delay, and then the assignment is made to the LHS.

I was going to say something similar. The RHS has to be fully evaluated
before the assignment starts. If an implementation wants to try to
optimize by writing to part of the LHS before it has read all of the RHS,
then it needs to make sure that the LHS and RHS are not references to the
same storage. Otherwise the optimization is not legal, and it will have
to evaluate the RHS into temporary storage before starting the assignment.

Steven Sharp
sharp@cadence.com
Received on Tue Nov 9 12:10:38 2004

This archive was generated by hypermail 2.1.8 : Tue Nov 09 2004 - 12:10:42 PST