Paul E. McKenney <paul...@linux.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

Reply via email to