[llvm-bugs] [Bug 50952] New: wrong code at -Os and above on x86_64-linux-gnu (produced code hangs)

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Jul 1 00:04:44 PDT 2021


https://bugs.llvm.org/show_bug.cgi?id=50952

            Bug ID: 50952
           Summary: wrong code at -Os and above on x86_64-linux-gnu
                    (produced code hangs)
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Scalar Optimizations
          Assignee: unassignedbugs at nondot.org
          Reporter: zhendong.su at inf.ethz.ch
                CC: llvm-bugs at lists.llvm.org

Possibly duplicate of or related to:
- https://bugs.llvm.org/show_bug.cgi?id=50944
- https://bugs.llvm.org/show_bug.cgi?id=50947

[531] % clangtk -v
clang version 13.0.0 (https://github.com/llvm/llvm-project.git
b9c24257c7b4da398798934ffefdd30015152180)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/suz-local/opfuzz/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@mx32
Selected multilib: .;@m64
[532] % 
[532] % clangtk -O1 small.c; ./a.out
small.c:7:11: warning: shift count >= width of type [-Wshift-count-overflow]
    a = 0 >> 32;
          ^  ~~
1 warning generated.
[533] % 
[533] % clangtk -Os small.c
small.c:7:11: warning: shift count >= width of type [-Wshift-count-overflow]
    a = 0 >> 32;
          ^  ~~
1 warning generated.
[534] % 
[534] % timeout -s 9 5 ./a.out
Killed
[535] % 
[535] % cat small.c
static int a, *b = &a;
int c;
int main() {
  while (a)
    ;
  while (c) {
    a = 0 >> 32;
  }
  b = 0;
  return 0;
}

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210701/2d44108d/attachment.html>


More information about the llvm-bugs mailing list