[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <31547.1432127917@warthog.procyon.org.uk>
Date: Wed, 20 May 2015 14:18:37 +0100
From: David Howells <dhowells@...hat.com>
To: paulmck@...ux.vnet.ibm.com
Cc: dhowells@...hat.com, Will Deacon <will.deacon@....com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
"c++std-parallel@...u.org" <c++std-parallel@...u.org>,
"linux-arch@...r.kernel.org" <linux-arch@...r.kernel.org>,
"gcc@....gnu.org" <gcc@....gnu.org>,
p796231 <Peter.Sewell@...cam.ac.uk>,
"mark.batty@...cam.ac.uk" <Mark.Batty@...cam.ac.uk>,
Peter Zijlstra <peterz@...radead.org>,
Ramana Radhakrishnan <Ramana.Radhakrishnan@....com>,
Andrew Morton <akpm@...ux-foundation.org>,
Ingo Molnar <mingo@...nel.org>,
"michaelw@...ibm.com" <michaelw@...ibm.com>
Subject: Re: Compilers and RCU readers: Once more unto the breach!
Paul E. McKenney <paulmck@...ux.vnet.ibm.com> wrote:
> > Additionally, what about the following code?
> >
> > char *x = y ? z : z;
> >
> > Does that extend a dependency chain from z to x? If so, I can imagine a
> > CPU breaking that in practice.
>
> I am not seeing this. I would expect the compiler to optimize to
> something like this:
>
> char *x = z;
Why? What if y has a potential side-effect (say it makes a function call)?
David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists