You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jan 25, 2022. It is now read-only.
Brian Demsky observed (in email) that our current memory model may allow values to be constructed out of thin air in the context of data races. Classical example where x and y are in shared memory:
r1=xr2=yif(r1)if(r2)y=1x=1
Need to investigate this. If found to be the case the straightforward fix is probably to outlaw it as a side condition, as C++ has done. This is not great but at the moment may be the best we can do.
The text was updated successfully, but these errors were encountered:
The forthcoming memory model rewrite attempts to outlaw this with a rule about certain value speculations, so I'll close this and we can reopen or create new bugs if the problem is believed to persist.
Brian Demsky observed (in email) that our current memory model may allow values to be constructed out of thin air in the context of data races. Classical example where x and y are in shared memory:
Need to investigate this. If found to be the case the straightforward fix is probably to outlaw it as a side condition, as C++ has done. This is not great but at the moment may be the best we can do.
The text was updated successfully, but these errors were encountered: