https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92791

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So:
struct S { S (void *a, bool b) : x (a), y (b) {} void *x; bool y; };
void bar (S);

void
foo (void *x)
{
  S sbuf_it (x, x == nullptr);
  bar (sbuf_it);
}
with -O2 -m32 -march=i686 -mtune=i586
gives the same insn, but is actually recognized.
>From what I can see, the problem is that this_fn_optabs points to something
that has been initialized in a function that has been optimized for size, but
this function is not.  So, the question is, is it invalid to use
optimize_function_for_size_p (cfun) in optab conditions?

Reply via email to