[LLVMbugs] [Bug 1862] New: verify fails based on ordering even with -disable-opt

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Fri Dec 14 10:30:41 PST 2007


           Summary: verify fails based on ordering even with -disable-opt
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: Linker
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: alenhar2 at uiuc.edu
                CC: llvmbugs at cs.uiuc.edu

llvm-ld -disable-opt -r -o foo.o  a.bc b.bc c.bc d.bc e.bc
GEP is not of right type for indices!
        %tmp157 = getelementptr %struct.inode* %tmp27, i32 0, i32 23           
; <%struct.inode_operations**> [#uses=1]
 { i32 (%struct.inode*, %struct.dentry*, i32, %struct.nameidata*)*,
%struct.dentry* (%struct.inode*, %struct.dentry*, %struct.nameidata*)*, i32
(%struct.dentry*, %struct.inode*, %struct.dentry*)*, i32 (%struct.inode*,
%struct.dentry*)*, i32 (%struct.inode*, %struct.dentry*, i8*)*, i32
(%struct.inode*, %struct.dentry*, i32)*, i32 (%struct.inode*,
%struct.dentry*)*, i32 (%struct.inode*, %struct.dentry*, i32, i32)*, i32
(%struct.inode*, %struct.dentry*, %struct.inode*, %struct.dentry*)*, i32
(%struct.dentry*, i8*, i32)*, i8* (%struct.dentry*, %struct.nameidata*)*, void
(%struct.dentry*, %struct.nameidata*, i8*)*, void (%struct.inode*)*, i32
(%struct.inode*, i32, %struct.nameidata*)*, i32 (%struct.dentry*,
%struct.iattr*)*, i32 (%struct.vfsmount*, %struct.dentry*, %struct.kstat*)*,
i32 (%struct.dentry*, i8*, i8*, i32, i32)*, i32 (%struct.dentry*, i8*, i8*,
i32)*, i32 (%struct.dentry*, i8*, i32)*, i32 (%struct.dentry*, i8*)*, void
(%struct.inode*, i64, i64)*, i32 (%struct.inode*, i32, i64, i64)* }*Instruction
does not dominate all uses!
        %tmp157 = getelementptr %struct.inode* %tmp27, i32 0, i32 23           
; <%struct.inode_operations**> [#uses=1]
        store %struct.inode_operations* %tmp148, %struct.inode_operations**
%tmp157, align 4
Broken module found, compilation aborted!

however, opt -preverify -verify passes each individual module
llvm-ld -disable-opt -r -o bar.o  a.bc b.bc c.bc d.bc 
llvm-ld -disable-opt -r -o foo.o bar.o f.bc
works (and so does swaping a and f, I haven't tried other combinations).

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