[LLVMdev] llc assertion failure

Ryan M. Lefever lefever at crhc.uiuc.edu
Fri Apr 6 11:34:47 PDT 2007


I am running the following llvm-ld command to produce native code:

llvm-ld -native -o code.exe code.bc   -lm

However, I am getting the following assertion failure in llc.  The 
bytecode has been processed with opt, it passes opt bytecode 
verification.  I'm not too familiar with backend code generation.  Does 
anyone have any insight in to what the problem might be or how to go 
about debugging it?

Regards,
Ryan

llc: 
/home/lefever/work/llvm-cvs-070325/include/llvm/Support/Casting.h:199: 
typename llvm::cast_retty<To, From>::ret_type llvm::cast(const Y&) [with 
X = llvm::ConstantSDNode, Y = llvm::SDOperand]: Assertion `isa<X>(Val) 
&& "cast<Ty>() argument of incompatible type!"' failed.
/home/lefever/work/install/bin/llc((anonymous 
namespace)::PrintStackTrace()+0x1a)[0x88b77e6]
/home/lefever/work/install/bin/llc((anonymous 
namespace)::SignalHandler(int)+0x112)[0x88b7aac]
[0xd5c420]
/lib/libc.so.6(abort+0x101)[0x4cab64f1]
/lib/libc.so.6(__assert_fail+0xfd)[0x4caae859]
/home/lefever/work/install/bin/llc(llvm::cast_retty<llvm::ConstantSDNode, 
llvm::SDOperand>::ret_type llvm::cast<llvm::ConstantSDNode, 
llvm::SDOperand>(llvm::SDOperand const&)+0x4c)[0x83f6af6]
/home/lefever/work/install/bin/llc(llvm::ScheduleDAG::EmitNode(llvm::SDNode*, 
llvm::DenseMap<llvm::SDNode*, unsigned int, 
llvm::DenseMapKeyInfo<llvm::SDNode*> >&)+0x8b2)[0x86ab9fc]
/home/lefever/work/install/bin/llc(llvm::ScheduleDAG::EmitSchedule()+0x283)[0x86abf7d]
/home/lefever/work/install/bin/llc[0x861cada]
/home/lefever/work/install/bin/llc(llvm::ScheduleDAG::Run()+0x94)[0x86a9d6c]
/home/lefever/work/install/bin/llc(llvm::SelectionDAGISel::ScheduleAndEmitDAG(llvm::SelectionDAG&)+0x73)[0x863e64d]
/home/lefever/work/install/bin/llc[0x84edf05]
/home/lefever/work/install/bin/llc(llvm::SelectionDAGISel::CodeGenAndEmitDAG(llvm::SelectionDAG&)+0x13b)[0x863e7ab]
/home/lefever/work/install/bin/llc(llvm::SelectionDAGISel::SelectBasicBlock(llvm::BasicBlock*, 
llvm::MachineFunction&, llvm::FunctionLoweringInfo&)+0xad)[0x8652ca7]
/home/lefever/work/install/bin/llc(llvm::SelectionDAGISel::runOnFunction(llvm::Function&)+0x5d2)[0x865449e]
/home/lefever/work/install/bin/llc[0x851d559]
/home/lefever/work/install/bin/llc(llvm::FPPassManager::runOnFunction(llvm::Function&)+0x13a)[0x8844a7c]
/home/lefever/work/install/bin/llc(llvm::FunctionPassManagerImpl::run(llvm::Function&)+0x6e)[0x8844d00]
/home/lefever/work/install/bin/llc(llvm::FunctionPassManager::run(llvm::Function&)+0x88)[0x8844dc0]
/home/lefever/work/install/bin/llc(main+0xbe0)[0x83b9cb6]
/lib/libc.so.6(__libc_start_main+0xdc)[0x4caa24e4]
/home/lefever/work/install/bin/llc(__gxx_personality_v0+0x171)[0x83b8031]
llvm-ld:
make: *** [benchmarks/bc-1.06/src/bc---all.rdi_prim.exe] Error 1



More information about the llvm-dev mailing list