
www.Usenet.com
| <-- __Chronological__ --> | <-- __Thread__ --> |
On Wed, 03 Dec 2003 17:57:12 +0100, Terje Mathisen wrote:
> In your particular example, (d) must be independent of the outcome of
> the if block, which means that a decent compiler would probably hoist it
> up above instead, right?
(Does gcc hoist independent instructions above conditionals, for example?)
I would expect that a high proportion of (d) blocks *would* be dependent
on the branch, where the whole thing is the moral equivalent of:
d(a ? b : c)
Using different notation, that's not an uncommon structure. Of course,
that sort of thing is a perfect example of a situation where conditional
moves or predication are efficacious.
> What I'm saying is that as long as (d) depend upon (b) and/or (c),
> there's no way it _can_ be stitched back together, at least not until it
> is clear that no aliasing occured.
--
Andrew
| <-- __Chronological__ --> | <-- __Thread__ --> |