[LLVMbugs] [Bug 3015] New: Failure with ModulePass -> FunctionPass -> AliasAnalysis pass chain

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Wed Nov 5 15:40:02 PST 2008


           Summary: Failure with ModulePass -> FunctionPass -> AliasAnalysis
                    pass chain
           Product: libraries
           Version: 2.4
          Platform: Macintosh
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Core LLVM classes
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: Nathan.Keynes at sun.com
                CC: llvmbugs at cs.uiuc.edu

Created an attachment (id=2181)
 --> (http://llvm.org/bugs/attachment.cgi?id=2181)
Test case using MemoryDependenceAnalysis

Crashes when adding the ModulePass to the PassManager with the following:

Assertion failed: (0 && "ERROR: Bad TargetData ctor used.  " "Tool did not
specify a TargetData to use?"), function TargetData, file
/Users/nkeynes/src/llvm-2.3/include/llvm/Target/TargetData.h, line 114.

A valid TargetData is in the PassManager, but for some reason this is not being
picked up and it attempts to create a new TargetData (which unsurprisingly
fails). The simplest way to reproduce is to require MemoryDependenceAnalysis
from a ModulePass (see attached test case)

I'm not certain if this is a bug per se or an unsupported configuration, but I
can't find anything in the pass documentation to suggest that this is not
supposed to work.

#0  0x90940b9e in __kill ()
#1  0x90940b91 in kill$UNIX2003 ()
#2  0x909b7ec2 in raise ()
#3  0x909c747f in abort ()
#4  0x909b9063 in __assert_rtn ()
#5  0x00014354 in llvm::TargetData::TargetData (this=0x400a30) at
#6  0x00014365 in llvm::TargetData::TargetData (this=0x400a30) at
#7  0x00014385 in llvm::callDefaultCtor<llvm::TargetData> () at
#8  0x000a5551 in llvm::PassInfo::createPass (this=0x123a20) at
#9  0x000a270b in llvm::PMTopLevelManager::schedulePass (this=0x40098c,
P=0x400a00) at PassManager.cpp:444
#10 0x000a274f in llvm::PMTopLevelManager::schedulePass (this=0x40098c,
P=0x409630) at PassManager.cpp:449
#11 0x000aa751 in llvm::FunctionPassManagerImpl::add (this=0x400920,
P=0x409630) at PassManager.cpp:134
#12 0x000a5175 in llvm::MPPassManager::addLowerLevelRequiredPass
(this=0x400880, P=0x4097e0, RequiredPass=0x409630) at PassManager.cpp:1283
#13 0x000a47ba in llvm::PMDataManager::add (this=0x400898, P=0x4097e0,
ProcessAnalysis=true) at PassManager.cpp:742
#14 0x000a48b4 in llvm::ModulePass::assignPassManager (this=0x4097e0,
PMS=@0x4013a0, PreferredType=llvm::PMT_Unknown) at PassManager.cpp:1453
#15 0x000b06a7 in llvm::PassManagerImpl::addTopLevelPass (this=0x401330,
P=0x4097e0) at PassManager.cpp:298
#16 0x000a27a7 in llvm::PMTopLevelManager::schedulePass (this=0x40139c,
P=0x4097e0) at PassManager.cpp:456
#17 0x000aa733 in llvm::PassManagerImpl::add (this=0x401330, P=0x4097e0) at
#18 0x000a27d3 in llvm::PassManager::add (this=0xbfffebfc, P=0x4097e0) at
#19 0x00002462 in main (argc=2, argv=0xbfffec38) at TestPass.cpp:41

Reproducible with 2.3 and 2.4, on Solaris and OS X, not dependent on any
particular bytecode.

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