https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86461
Martin Sebor <msebor at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |ASSIGNED Last reconfirmed| |2018-07-10 Component|middle-end |testsuite Assignee|unassigned at gcc dot gnu.org |msebor at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> --- r262522 tightens up the test to verify that all calls to strlen() are eliminated. This is also what happens at all optimization levels for the x86_64-linux target but not for powerpc64 where at -Og the optimized dump shows: <bb 8> [local count: 214748365]: _10 = _3 + 1; x = _10; x.9_11 = (unsigned int) _3; _20 = x.9_11 & 7; _12 = (sizetype) _20; _13 = &larger + _12; _14 = strlen (_13); if (_14 != 5) goto <bb 9>; [0.00%] else goto <bb 10>; [99.96%] <bb 9> [count: 0]: abort (); Besides fixing the test (the runtime test harness ignored dg-options in these tests) I need to figure out what prevents the folding at -Og.