Re: [PATCH] Fix PR24574

2016-07-13 Thread Martin Liška
On 07/13/2016 04:15 PM, Richard Biener wrote: > so not exactly a 50/50 prediction. It is predicted by early return > predictor it seems. If I make the predictor not apply we predict > it as 50/50 chance. Hmm. Honza? Yes, following test-case eliminates the early return predictor: int foo(int x

Re: [PATCH] Fix PR24574

2016-07-13 Thread Richard Biener
On Wed, 13 Jul 2016, Alexander Monakov wrote: > Hi, > > On Wed, 13 Jul 2016, Richard Biener wrote: > > The following adds the ability to transform > > > > if (x != 0) > >x = x / 10; > > > > to > > > > x = x / 10; > > > > as requested by PR. Plus it adds some more ops where such transfo

Re: [PATCH] Fix PR24574

2016-07-13 Thread Alexander Monakov
Hi, On Wed, 13 Jul 2016, Richard Biener wrote: > The following adds the ability to transform > > if (x != 0) >x = x / 10; > > to > > x = x / 10; > > as requested by PR. Plus it adds some more ops where such transform > is possible. In the bugzilla, you said, > Only for -Os, it's bette

[PATCH] Fix PR24574

2016-07-13 Thread Richard Biener
The following adds the ability to transform if (x != 0) x = x / 10; to x = x / 10; as requested by PR. Plus it adds some more ops where such transform is possible. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2016-07-13 Richard Biener PR