<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/62601>62601</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Timeout when turning on optimization options on clang15 and clang17
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          starbugs-qurong
      </td>
    </tr>
</table>

<pre>
    Consider the following example:

~~~c
#include <stdio.h>
long eB77V718 = 1667739;
short TAGaBiK = 822;
int GYm9015 = 6275;
void g65wq4D()
{
     int B3903G66count = 0;
    do
    {
 B3903G66count = B3903G66count + 1;
      if (B3903G66count > 2)
 {
        break;
      }
    } while (1);
    int T18dUW7Dcount = 0;
    do
    {
      T18dUW7Dcount = T18dUW7Dcount + 1;
      if (T18dUW7Dcount > 2)
      {
        break;
      }
      TAGaBiK >>= 33; /*if RHS >= 32 it's a infinite loop in clang-15 -O1 -O2 -O3*/
 } while ((TAGaBiK) >= (TAGaBiK++));
  return;
 }
long JU5IfLU = 2163839;
int main()
{
  g65wq4D();
  printf("%d\n", eB77V718);
  printf("%d\n", TAGaBiK);
  printf("%d\n", GYm9015);
  printf("%d\n", JU5IfLU);
  return 0;
}
~~~

This will run successful on clang15 without optimization, clang17 without optimization, clang-14, gcc-9, gcc-11:

But run timeout on clang15 and clang17  in -O1, -O2, -O3

We found an infinite loop in its assembly code under optimization options

~~~assembly
.LBB1_1:                                # =>This Inner Loop Header: Depth=1
        incl    %eax
        jmp     .LBB1_1
~~~

The related files can be found in https://github.com/starbugs-qurong/c-compiler-test/tree/main/clang/program907/cprogram907.c
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUVVtv2zYU_jX0y4EMiQwl60EPURS33QIE2JIVexoo6dhiR5EuSdXtHvzbB8o32Um6TDAs6ly-c-HHQ-GcXGvEgvCS8GomBt8ZWzgvbD2sXfR1sEavZ7VpfxR3RjvZogXfIayMUmYr9Rrwu-g3Cgm7JXFF4sP_brdrDt-USd2ooUUg7M75Vpp5R9j9XqtMgCiz7I8sWQBhFSRpmmUsJ6zcW7jOWA9Ptx9EKX8dLRaUnrRSe_jwZ5_HCR91Kc34SfnNyBbWKd9-vakIXRCaH1LKDgYQngBRsjxmH9K0MYP2I1B8Qgk2rTmvz94vva4ktITkAgdAroDQxbXnPdBTdnCZHgDUFsXfVzgkq6YpVbDtpMKAnQSkqXEo8ClZtM-fs-r_FTg-L12vJG9Wee15USW8EuodpcKECvfjrwLGCCuB0CWht3IFv338HY4aCtITmjkQIPVKaukRlDEbkBoaJfQ6SjhEjwlEjxSiR0bobcA5bsSkraGefWRC8yP-VFiOv_yy-xb9YPVZcKplJP4vz_zT6uF5bCpNUraY8D7sWi-kfoO4l7Q-B9xYqf1qFFNCeUv4nR6Xd6dj9m6Hc73vsz8cxHfbH8p_rWMTep5attvtpiPmqZMOtlIpsIMGNzQNOrcaFJjD1iYcttJ3ZvBgNl728h_hpdEh8l6f_VwfJTdhvW6aKD8ukuRq0JWDH-N72eOIdA4udHsKFPgWPSYBJnqk-xeb4nwOM3XQLQj9kqnSOxDOYV-rH9CYFmHQYRJP0x4_jHZXU_jothfMH8oy-SvUAP_xEMoCLQm7H_v8SWu08BDy-YiiRRsgKtz4jrAqOcbMw6QncU4oR_H9JP3Sb0icH2O_vpcIFpXw2MJKKnTQCA31sSdSQ-f9xoXeh1O-XEvfDfW8MT2hy6vbitBlEzWm30iFNvLoPKFLbxEJXe4P1HLcFUKXG2vWVvR5nAXh-WvezNqCtTnLxQyLJF0wznJOs1lXUIFIKRVNe5PzFcvqFuuML5omaxPaNPVMFjSmLObxIs45jbN5nuc1z3maxnyRxCskNzH2Qqq5Ut_6ubHrmXRuwCKlaZzMlKhRufE-plTjFkZlODC8mtki-EShWHITK-m8O6N46RUWTwcebjvUEE5SuKMP7LimyhtknQ1WFT_pd4h4eEUba75gEzo85ukIXY51_BsAAP__9sFSvw">