[LLVMbugs] [Bug 14197] New: Pass 'Loop Vectorization' stuck in an infinite loop ?

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sat Oct 27 10:43:14 PDT 2012


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

             Bug #: 14197
           Summary: Pass 'Loop Vectorization' stuck in an infinite loop ?
           Product: new-bugs
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: antoine.balestrat at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


Hello !
LLVM/Clang 3.2 as of 166877 looks to be stuck in an endless loop while
compiling the following testcase with -mllvm -vectorize at -O1 and above.

$ cat src.c
int i;

void f(void)
{
    unsigned j, a;

    for(; i; i++)
    {
        for(; j; j++)
        {
            int foo = 0;
            --i && (a = 0), j = 0;
        }

        if(!a)
            i = 0 & (a = 0);
    }
}

$ ulimit -t 60

$ clong -O1 -mllvm -vectorize src.c
0  clang           0x0000000001a8b7bf
1  clang           0x0000000001a8bca3
2  libpthread.so.0 0x00007fc93c3ea970
3  clang           0x000000000121252a
4  clang           0x000000000120b0d4
5  clang           0x000000000189e3e9
llvm::LPPassManager::runOnFunction(llvm::Function&) + 825
6  clang           0x00000000019f0a0b
llvm::FPPassManager::runOnFunction(llvm::Function&) + 443
7  clang           0x000000000181f425
8  clang           0x00000000019f0ee3
llvm::MPPassManager::runOnModule(llvm::Module&) + 419
9  clang           0x00000000019f1468 llvm::PassManagerImpl::run(llvm::Module&)
+ 408
10 clang           0x00000000019f15ca llvm::PassManager::run(llvm::Module&) +
10
11 clang           0x000000000079f0c0
clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::CodeGenOptions
const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::Module*,
clang::BackendAction, llvm::raw_ostream*) + 5776
12 clang           0x000000000079cbca
13 clang           0x00000000008cf0f4 clang::ParseAST(clang::Sema&, bool, bool)
+ 532
14 clang           0x000000000079bc12 clang::CodeGenAction::ExecuteAction() +
178
15 clang           0x000000000063ec95 clang::FrontendAction::Execute() + 101
16 clang           0x000000000061e2dd
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 973
17 clang           0x00000000006067f8
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 3768
18 clang           0x00000000005faedf cc1_main(char const**, char const**, char
const*, void*) + 767
19 clang           0x0000000000602a06 main + 3574
20 libc.so.6       0x00007fc93b643695 __libc_start_main + 245
21 clang           0x00000000005faafd
Stack dump:
0.    Program arguments: /home/merkil/git/clang/build/Release+Asserts/bin/clang
-cc1 -triple x86_64-unknown-linux-gnu -emit-obj -disable-free -main-file-name
src.c -mrelocation-model static -fmath-errno -masm-verbose
-mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64
-target-linker-version 2.22.90.20120727 -momit-leaf-frame-pointer -resource-dir
/home/merkil/git/clang/build/Release+Asserts/bin/../lib/clang/3.2
-fmodule-cache-path /var/tmp/clang-module-cache -internal-isystem
/usr/local/include -internal-isystem
/home/merkil/git/clang/build/Release+Asserts/bin/../lib/clang/3.2/include
-internal-externc-isystem /include -internal-externc-isystem /usr/include -O1
-fdebug-compilation-dir /home/merkil -ferror-limit 19 -fmessage-length 0
-mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -mllvm -vectorize
-o /tmp/src-ZQx7JA.o -x c src.c 
1.    <eof> parser at end of file
2.    Per-module optimization passes
3.    Running pass 'CallGraph Pass Manager' on module 'src.c'.
4.    Running pass 'Loop Pass Manager' on function '@f'
5.    Running pass 'Loop Vectorization' on basic block '%for.body3'
clang: error: unable to execute command: CPU time limit exceeded

-- 
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