This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Tree SRA and atomicity/volatility
On Jan 26, 2007, at 5:19 AM, Richard Kenner wrote:
I think the point here is that writing it down at the level you
suggested
You read way to much into it, if you look again, I didn't state that
we should overspecify it, I said that we had the freedom to talk
about chipset, if we waned to. A language standard cannot. A
compiler implementation can, if it _wants_ to, if it _needs_ to.
Again, let me repeat, I'm not arguing that it needs to.
Let me give you an example, let's say that we have two volatile
objects and an operation to perform on them. Let's say the machine
we're generating code for doesn't have that operation, but that it
can be decomposed into smaller operations. We are free to document
the backend must not decompose the operation and leave the volatile
objects as operands. Or, we are free to leave it unspecified. Ada
might even have a mandate here. C might as well. I don't think I've
seen it argued here if decomposition is allowed or not. Now, this
might be so trivial to those in the know that can't believe anyone
would get something so basic wrong, and yet, I can see an expander
for an operation split things up, fail to check for volatile. The
documentation would be so that people that might not know the answer
to read it once, and then have a firm, specific grasp on the subject
matter so that to them it is then perfectly clear decomposition is
wrong, obvious if you will.