On Wed, 22 Apr 2015, Jan Hubicka wrote:

> > > @@ -42,6 +42,6 @@ bool f(I a, I b, I c, I d) {
> > >  // This works only if everything is inlined into 'f'.
> > >
> > >  // { dg-final { scan-tree-dump-times ";; Function" 1 "fre2" } }
> > > -// { dg-final { scan-tree-dump-times "free" 19 "fre2" } }
> > > +// { dg-final { scan-tree-dump-times "free" 18 "fre2" } }
> > >  // { dg-final { scan-tree-dump-times "unreachable" 11 "fre2" } }
> > >  // { dg-final { cleanup-tree-dump "fre2" } }
> > 
> > I got
> > 
> > FAIL: g++.dg/tree-ssa/pr61034.C  -std=gnu++11  scan-tree-dump-times
> > fre2 "free" 18
> > FAIL: g++.dg/tree-ssa/pr61034.C  -std=gnu++14  scan-tree-dump-times
> > fre2 "free" 18
> > FAIL: g++.dg/tree-ssa/pr61034.C  -std=gnu++98  scan-tree-dump-times
> > fre2 "free" 18
> > 
> > on Linux/x86.
> 
> Hmm, I tested on pcc64, but now I see the same failure on x86-64.
> Perhaps this testcase became target sensitive?
> Richard, does the count really matter?

Well, it verifies that (part) of the desired optimization happens.
I can't see what should be target dependent here though.

Richard.

Reply via email to