Issue 58140
Summary Wrong code at -Os on x86_64-linux_gnu
Labels new issue
Assignees
Reporter shao-hua-li
    ```console
% clang-tk -v
clang version 16.0.0 (https://github.com/llvm/llvm-project.git 0c1a3da8ea1f0e024ebfd85c7532926f26c6bde5)
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/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 -w -O0 a.c && ./a.out
1
% clang-tk -w -Os a.c && ./a.out
0
%
% cat a.c
oid printf();
short a = -1, d;
int b[1];
char *c;
int e, f;
void g(int * p, int *k) {
  char h;
  d = a;
  a = 0;
  for (; a > -1; a = d) {
    char i;
    char *j[3];
    e = 0;
    for (; e < 3; e++)
      j[e] = &i;
    *k = j[0] != (c = &h);
  }
}
int main() {
  g(&f, b);
  printf("%d\n", b[0]);
}
```
Compiler explorer: https://godbolt.org/z/TfWevh66r
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to