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

--- Comment #12 from Drea Pinski <pinskia at gcc dot gnu.org> ---
So after hacking up the mask issue (by changing the source to do
`-a/-b/-c/-d`), we still have one more jump threading issue.


```
  <bb 3> [local count: 955630224]:
...
  if (_44 > _48)
    goto <bb 5>; [41.00%]
  else
    goto <bb 4>; [59.00%]

  <bb 4> [local count: 563821836]:

  <bb 5> [local count: 955630224]:
  # iftmp.12_40 = PHI <_63(3), _79(4)>
  if (_45 > _49)
    goto <bb 7>; [41.00%]
  else
    goto <bb 6>; [59.00%]

  <bb 6> [local count: 563821836]:

  <bb 7> [local count: 955630224]:
  # iftmp.13_41 = PHI <_67(5), _83(6)>
  if (_46 > _50)
    goto <bb 9>; [41.00%]
  else
    goto <bb 8>; [59.00%]

  <bb 8> [local count: 563821836]:

  <bb 9> [local count: 955630224]:
  # iftmp.14_42 = PHI <_71(7), _87(8)>
  if (_47 > _51)
    goto <bb 11>; [41.00%]
  else
    goto <bb 10>; [59.00%]

  <bb 10> [local count: 563821836]:

  <bb 11> [local count: 955630224]:
  # iftmp.15_43 = PHI <_75(9), _91(10)>
  if (_44 > _48)
    goto <bb 13>; [41.00%]
  else
    goto <bb 12>; [59.00%]

  <bb 12> [local count: 563821836]:

  <bb 13> [local count: 955630224]:
  # iftmp.16_36 = PHI <_52(11), _56(12)>
```

Really the PHI in bb 13 should be moved to bb 5. and bb11/12/13 all merged
together.

Reply via email to