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

    <tr>
        <th>Summary</th>
        <td>
            Wrong code at -O1on x86_64-linux_gnu since Clang-13
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          shao-hua-li
      </td>
    </tr>
</table>

<pre>
    ```console
$ clang-tk -v
clang version 17.0.0 (https://github.com/llvm/llvm-project.git 4c2d29f2fc78782a469ccff625dd29d66d4d9f9b)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /zdata/shaoli/compilers/ccbuilder-compilers
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Candidate multilib: .;@m64
Selected multilib: .;@m64
$
$ clang-tk -O0 a.c && ./a.out
0
$ clang-tk -fsanitize=address,undefined a.c && ./a.out
0
$ clang-tk -O1 a.c && ./a.out
Floating point exception
$ clang-12 -O1 a.c && ./a.out
0
$
$ cat a.c
int printf(const char *, ...);
long a;
static int b, d, e;
char g, h;
int i(int j) {
  int c = 0;
 while (c < 4 && 5 << c < j)
    c++;
  return c;
}
int k(int j) {
  int f = 0;
  if (j < 0)
    f++;
  do {
    f++;
    j /= 10;
  } while (j);
  return f;
}
long(l)(long j) { return j == 0 ?0: a / j; }
void m(int j) {
  d = k(j - 54);
  h = l(d - 3);
}
int main() {
  int *n[] = {&b, &b};
  e = i(b - 40);
 m(-e);
  printf("%d\n", g);
}
$
```

Compiler explorer: https://godbolt.org/z/9ecEKnGbh

`opt-bisect-limit` suggests the issue is in `Loop Strength Reduction on loop`
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0Vl-P2zYM_zTMC2FDof_EfsjDXTIXwwYUWAfssZAl2VZOkQJLvt766QfZuSR3zToU6ADDf0jqxx8pijT3XvdWqS0Uj1DsV3wKgxu3fuAuGSaeGL1qnfx7CyVbLuGsd0YB2wN7AMpRGG77JDxh8rwIZwE-q9FrZ3G9SVnKEKgaQjh5yB6AGqCm12GY2lS4I1BjzPPrIzmN7qBESHsdMBckqe6oE5tqUxHPy1qIriupkJJqWZYyl3VXt0D14vtPPvYqQPaAL1X5ucyTyT5Z98UmRtvpJentdLYbRsUlHp1UJlqfnNcvi-pX6wM3Rsm9HqMKqPkqeeBATcyK0UCNcMeTNmr08V20kzZSjclVOgM1brISBbdSSx4UftjtUC_gPGhnz-CTH2Pouo1JEQKoOVO_UqZmzf4HzPXPxzxvwydllAhK_hR-uwuz42SCjquyB0whe4ScHcv8ncvvGQHl9wr3I0OeCgQqgUpMgRqeuikspuzeis5zq4P-qiDbcylH5T3QbrJSddoq-aNwH9ffWdEYx4O2PZ6ctgHVi1CnOZfvgNb0H0DsXhJ4iCsWQYQ_jdqGDqiKBz2gGPiIQA9AO0zTNB607HGxNs72yC-fPvCgBUaMNlrLeFMX9QzUR9lwkUVbDVTF5wGoRticNTjjCIRsj-xij18GbVTsJVGzw_w10CJ-RskiP1z6ASKiAHqM1wUFRxWm0aK4iGCzvzJ6-g6j7j0j1F3kc5j9sjd-u2_8SneLd88C8RDPR3SyvvUCm_01-MPtLlyi6b6NJu4QUGWiPVXzfr0G9boqEt_PMSFkDYuHhkcGeIDsES9Iz05LPP5LYuSclKc5DQkW-Vt6w6w1QJXEBLNb5Zu0H7m2QNWdpAM92GU8zVBRS-VcY_Nzs7_xpmaTWFQtJpizN1xiAIl6S-9S70AEVEgodnZ-3cVqvcP1enxeR-L5c2lW5xmA6uVk3KjmEfJu8jnZOhNSN_ZxtsSuqcQvv9kP7XCLBCVzp5C02isREqOPOkDJ0E99r3zwGAaF2vsp3lFbhJL97twJP4VR2T4M-IeSk4iNAp1F49wJSraS20zWWc1Xarsuq2zNiNb5atgWWVly2Ymy69S65jIrW5ZRVRalqquuppXeEqOMFSxjFWVZnpZVvslF2-Y1ywrRbiBn6si1SeMUj8GtZnbbkop1sTK8VcbPfxlEVn1ZqMdEF_vVuJ0nfzv1HnJmtA_-ihJ0MGr71xirVzipkIfY55zF25nxubcTem2Fwt3SDbPVNJrtj_10ADUzrzjXZ97_BAAA__9Fl5D7">