Hi, i used CVS to checkout the source of llvm and llvm-gcc, compiled and built them on my machine successfully. i tried a c-language hello program, it was OK. But when i tried a c++-language hello program, i got: ~/project/llvm/examples$ llvm-g++ t3.cc -o t3 gccld: /developer/zsth/project/llvm/src/llvm/lib/Analysis/IPA/CallGraph.cpp:277: void llvm::CallGraphNode::removeCallEdgeTo(llvm::CallGraphNode*): Assertion `i && "Cannot find callee to remove!"' failed. gccld((anonymous namespace)::PrintStackTrace()+0x1a)[0x84eb812] gccld((anonymous namespace)::SignalHandler(int)+0x110)[0x84ebb3a] [0xffffe420] /lib/libc.so.6(abort+0x103)[0x9226e3] /lib/libc.so.6(__assert_fail+0xfd)[0x91aabd] gccld(llvm::CallGraphNode::removeCallEdgeTo(llvm::CallGraphNode*)+0x41)[0x83c1ac d] gccld((anonymous namespace)::PruneEH::DeleteBasicBlock(llvm::BasicBlock*)+0x175) [0x838c82f] gccld((anonymous namespace)::PruneEH::SimplifyFunction(llvm::Function*)+0x2cf)[0 x838cc55] gccld((anonymous namespace)::PruneEH::runOnSCC(std::vector<llvm::CallGraphNode*, std::allocator<llvm::CallGraphNode*> > const&)+0x6e)[0x838cefe] gccld(llvm::CallGraphSCCPass::runOnModule(llvm::Module&)+0x84)[0x83c430a] gccld(llvm::ModulePassManager::runPass(llvm::ModulePass*, llvm::Module*)+0x1f)[0 x84761ef] gccld(llvm::PassManagerT<llvm::MTraits>::runPasses(llvm::Module*, std::map<llvm: :Pass*, std::vector<llvm::Pass*, std::allocator<llvm::Pass*>>, std::less<llvm:: Pass*>, std::allocator<std::pair<llvm::Pass* const,std::vector<llvm::Pass*, std ::allocator<llvm::Pass*> > > >>&)+0x12a)[0x8488a10]gccld(llvm::PassManagerT<llvm::MTraits>::runOnUnit(llvm::Module*)+0x184)[0x848a2 dc] gccld(llvm::ModulePassManager::runOnModule(llvm::Module&)+0x23)[0x84737fb] gccld(llvm::PassManager::run(llvm::Module&)+0x23)[0x8473a17] gccld(llvm::GenerateBytecode(llvm::Module*, int, bool, std::basic_ostream<char, std::char_traits<char> >*)+0x27c)[0x82d848c] gccld(main+0xaad)[0x82dcdd3] /lib/libc.so.6(__libc_start_main+0xdc)[0x90e7e4] gccld(__gxx_personality_v0+0x145)[0x82d7b91] llvm-g++: Internal error: Aborted (program gccld) Please submit a full bug report. See <URL:http://llvm.cs.uiuc.edu> for instructions. Thanks, Sheng. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20060918/9a2728a6/attachment.html>
Zhou, On Mon, 2006-09-18 at 13:38 +0800, Zhou Sheng wrote:> Hi, > > i used CVS to checkout the source of llvm and llvm-gcc, compiled and > built them on my machine successfully. > > i tried a c-language hello program, it was OK. > > But when i tried a c++-language hello program, i got:Sounds like a bug. Can you provide the t3.cc source file for us? Please remove preprocessor includes by compiling with: g++ -E t3.cc -o t3.i If you can do this, please create a bugzilla bug (http://llvm.org/bugs/) and attach the test case in the t3.i file. Thanks, Reid.> > ~/project/llvm/examples$ llvm-g++ t3.cc -o t3 > gccld: /developer/zsth/project/llvm/src/llvm/lib/Analysis/IPA/CallGraph.cpp:277: void llvm::CallGraphNode::removeCallEdgeTo(llvm::CallGraphNode*): Assertion `i && "Cannot find callee to remove!"' failed. > gccld((anonymous namespace)::PrintStackTrace()+0x1a)[0x84eb812] > gccld((anonymous namespace)::SignalHandler(int)+0x110)[0x84ebb3a] > [0xffffe420] > /lib/libc.so.6(abort+0x103)[0x9226e3] > /lib/libc.so.6(__assert_fail+0xfd)[0x91aabd] > gccld(llvm::CallGraphNode::removeCallEdgeTo(llvm::CallGraphNode*)+0x41)[0x83c1ac d] > gccld((anonymous > namespace)::PruneEH::DeleteBasicBlock(llvm::BasicBlock*)+0x175) > [0x838c82f] > gccld((anonymous > namespace)::PruneEH::SimplifyFunction(llvm::Function*)+0x2cf)[0 > x838cc55] > gccld((anonymous > namespace)::PruneEH::runOnSCC(std::vector<llvm::CallGraphNode*, > std::allocator<llvm::CallGraphNode*> > const&)+0x6e)[0x838cefe] > gccld(llvm::CallGraphSCCPass::runOnModule(llvm::Module&)+0x84)[0x83c430a] > gccld(llvm::ModulePassManager::runPass(llvm::ModulePass*, > llvm::Module*)+0x1f)[0 x84761ef] > gccld(llvm::PassManagerT<llvm::MTraits>::runPasses(llvm::Module*, > std::map<llvm: :Pass*, std::vector<llvm::Pass*, > std::allocator<llvm::Pass*> >, std::less<llvm:: Pass*>, > std::allocator<std::pair<llvm::Pass* const, std::vector<llvm::Pass*, > std ::allocator<llvm::Pass*> > > > >&)+0x12a)[0x8488a10] > gccld(llvm::PassManagerT<llvm::MTraits>::runOnUnit(llvm::Module*)+0x184)[0x848a2 dc] > gccld(llvm::ModulePassManager::runOnModule(llvm::Module&)+0x23)[0x84737fb] > gccld(llvm::PassManager::run(llvm::Module&)+0x23)[0x8473a17] > gccld(llvm::GenerateBytecode(llvm::Module*, int, bool, > std::basic_ostream<char, std::char_traits<char> >*)+0x27c)[0x82d848c] > gccld(main+0xaad)[0x82dcdd3] > /lib/libc.so.6(__libc_start_main+0xdc)[0x90e7e4] > gccld(__gxx_personality_v0+0x145)[0x82d7b91] > llvm-g++: Internal error: Aborted (program gccld) > Please submit a full bug report. > See <URL:http://llvm.cs.uiuc.edu> for instructions. > > Thanks, > Sheng. > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
On Mon, 18 Sep 2006, Zhou Sheng wrote:> i used CVS to checkout the source of llvm and llvm-gcc, compiled and built > them on my machine successfully. > > i tried a c-language hello program, it was OK. > But when i tried a c++-language hello program, i got: > ~/project/llvm/examples$ llvm-g++ t3.cc -o t3Can you try upgrading to LLVM CVS? I believe this bug has already been fixed. Please let us know if it isn't fixed in CVS: http://llvm.org/docs/GettingStarted.html#checkout -Chris -- http://nondot.org/sabre/ http://llvm.org/