[LLVMbugs] [Bug 8622] New: Assertion `currentLoop->isLCSSAForm(*DT)' failed.

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Nov 15 19:53:15 PST 2010


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

           Summary: Assertion `currentLoop->isLCSSAForm(*DT)' failed.
           Product: new-bugs
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: regehr at cs.utah.edu
                CC: llvmbugs at cs.uiuc.edu, chenyang at cs.utah.edu


regehr at home:~/volatile/bugs/tmp341$ clang -v

clang version 2.9 (trunk 119317)
Target: i386-pc-linux-gnu
Thread model: posix

regehr at home:~/volatile/bugs/tmp341$ clang -O3 -c -w small.c

clang: LoopUnswitch.cpp:215: virtual
bool<unnamed>::LoopUnswitch::runOnLoop(llvm::Loop*, llvm::LPPassManager&):
Assertion `currentLoop->isLCSSAForm(*DT)' failed.
0  clang 0x093d9048
Stack dump:
0.    Program arguments:
/mnt/z/z/compiler-install/llvm-gcc-r119317-install/bin/clang -cc1 -triple
i386-pc-linux-gnu -emit-obj -disable-free -main-file-name small.c
-mrelocation-model static -mdisable-fp-elim -masm-verbose -mconstructor-aliases
-target-cpu pentium4 -target-linker-version 2.20.51 -resource-dir
/mnt/z/z/compiler-install/llvm-gcc-r119317-install/bin/../lib/clang/2.9 -O3 -w
-ferror-limit 19 -fmessage-length 94 -fgnu-runtime -fdiagnostics-show-option
-fcolor-diagnostics -o small.o -x c small.c 
1.    <eof> parser at end of file
2.    Per-module optimization passes
3.    Running pass 'CallGraph Pass Manager' on module 'small.c'.
4.    Running pass 'Loop Pass Manager' on function '@func_67'
5.    Running pass 'Unswitch loops' on basic block '%for.body'
clang: error: unable to execute command: Aborted
clang: error: clang frontend command failed due to signal 1 (use -v to see
invocation)

regehr at home:~/volatile/bugs/tmp341$ cat small.c

static int
safe_sub_func_int_s_s (int si1, int si2)
{
  return si1 ^ si2 & -si2 ^ si2 < 0 ? : si1 - si2;
}

struct S0
{
  const unsigned f0;
};
int g_38;
struct S0
func_67 (struct S0 p_68, unsigned p_69)
{
  for (0; g_38; g_38 = safe_sub_func_int_s_s (g_38, 1))
    {
      int *l_72 = &g_38;
      *l_72 = p_68.f0;
      for (0; p_69; p_69 += 1)
    {
    }
    }
}

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list