[LLVMbugs] [Bug 1697] New: llc aborts with: Assertion `StackTop > 0 && " Stack cannot be empty!"'

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sun Sep 23 17:55:51 PDT 2007


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

           Summary: llc aborts with: Assertion `StackTop > 0 && "Stack
                    cannot be empty!"'
           Product: new-bugs
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Keywords: compile-fail
          Severity: normal
          Priority: P2
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: jlh at gmx.ch
                CC: llvmbugs at cs.uiuc.edu


Created an attachment (id=1137)
 --> (http://llvm.org/bugs/attachment.cgi?id=1137)
.bc file triggering the error

CPU: AMD Athlon Thoroughbred
Software: linux-2.6/gentoo, LLVM SVN-r42247

When running "llc file.bc" (file is attached), I get the following output:

llc: X86FloatingPoint.cpp:670:
void<unnamed>::FPS::handleOneArgFPRW(llvm::ilist_iterator<llvm::MachineInstr>&):
Assertion `StackTop > 0 && "Stack cannot be empty!"' failed.
llc((anonymous namespace)::PrintStackTrace()+0x19)[0x84ffbf9]
Aborted

Attached is a reduced test case, which originally was the linking step of
building POV-Ray 3.6.1 with LLVM (with link-time optimization enabled).  For
your convenience, here's the human readable form:

target datalayout =
"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-s0:0:64-f80:32:32"
target triple = "i686-pc-linux-gnu"

define void @myfunc1(double %double) {
        ret void
}

define void @myfunc2(double* %ptr1, float* %ptr2, float* %ptr3) {
        %double_1 = load double* %ptr1
        %float_2 = load float* %ptr2
        %float_3 = load float* %ptr3
        %cond = fcmp olt float %float_2, 0.0 
        %float_4 = select i1 %cond, float 0.0, float %float_2
        %double_5 = fpext float %float_4 to double
        %double = mul double %double_1, %double_5
        call void @myfunc1(double %double)
        ret void
}


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