>From: "Bresticker, Shalom" <shalom.bresticker@intel.com> >> Is it really true that "functions are not supposed to interact >> with the scheduler"? I don't believe that there is anything in the LRM that says this. Dave Rich was stating his interpretation, which is stronger than what the LRM actually says. >> This implies that the scheduler may suspend function execution >> in the middle. If this is not so, it needs to be explicitly >> stated. Based on the LRM, there is nothing preventing the scheduler from suspending function execution in the middle. There are situations where an implementation might want to do this. If the implementation wants to inline a continuous assignment from a variable to a net any place the variable is written, and the variable is written in a function, then the continuous assignment would be inlined there. This is equivalent to doing the assignment to the variable, suspending the function in favor of the continuous assignment, and then resuming the function afterwards. An implementation could get itself into trouble if it went too far in suspending function execution. If a continuous assignment called a function, the function suspended, other processes updated inputs of the continuous assignment that it had already read, and then the function resumed, the continuous assignment might not work properly. It evaluated with the old values, and might not re-evaluate for the changes since it was suspended when they were happening. Steven Sharp sharp@cadence.comReceived on Tue Mar 21 17:45:27 2006
This archive was generated by hypermail 2.1.8 : Tue Mar 21 2006 - 17:45:31 PST