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

--- Comment #3 from Kael Franco <kaelfandrew at gmail dot com> ---
One real world case, which LLVM optimizes for x | CST when (x & CST) != 0.

In tree-ssa-propagate.cc:

```
static void
add_control_edge (edge e)
{
  basic_block bb = e->dest;
  if (bb == EXIT_BLOCK_PTR_FOR_FN (cfun))
    return;

  /* If the edge had already been executed, skip it.  */
  if (e->flags & EDGE_EXECUTABLE)
    return;

  e->flags |= EDGE_EXECUTABLE;
...
```

Reply via email to