[LLVMbugs] [Bug 19595] New: clang hangs on valid code at -O1 and above on x86_64-linux-gnu (affecting all clang versions)

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Apr 28 17:13:59 PDT 2014


http://llvm.org/bugs/show_bug.cgi?id=19595

            Bug ID: 19595
           Summary: clang hangs on valid code at -O1 and above on
                    x86_64-linux-gnu (affecting all clang versions)
           Product: clang
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: -New Bugs
          Assignee: unassignedclangbugs at nondot.org
          Reporter: su at cs.ucdavis.edu
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

The following testcase causes the current clang trunk (as well as all earlier
versions from 2.9) to hang when compiling at -O1 and above in both 32-bit and
64-bit modes on x86_64-linux-gnu.

$ clang-trunk -v
clang version 3.5.0 (trunk 207415)
Target: x86_64-unknown-linux-gnu
Thread model: posix
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.8.1
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.4.6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.4.7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.7.3
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8.1
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Selected multilib: .;@m64
$ 
$ clang-trunk -O0 -c small.c
$ 
$ timeout -s 9 60 clang-trunk -O1 -c small.c
Killed
$ 
$ time gcc-trunk -O1 -c small.c
0.01user 0.00system 0:00.16elapsed 11%CPU (0avgtext+0avgdata 43360maxresident)k
0inputs+16outputs (0major+4851minor)pagefaults 0swaps
$ 
$ time gcc-trunk -O3 -c small.c
0.01user 0.01system 0:00.12elapsed 18%CPU (0avgtext+0avgdata 46272maxresident)k
0inputs+16outputs (0major+5046minor)pagefaults 0swaps
$ 


----------------------------


int a, b;

int
fn1 (int p)
{
  return p;
}

void
fn2 ()
{
  for (;;)
    ;
}

int
fn3 (short p)
{
  fn2 ();
  for (; b;)
    ;
lbl:
  if (p)
    return 0;
  fn1 (p && a);
  if (p)
    for (;;)
      ;
  goto lbl;
}

-- 
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/20140429/a0319bde/attachment.html>


More information about the llvm-bugs mailing list