-
Notifications
You must be signed in to change notification settings - Fork 14.6k
Description
Bugzilla Link | 858 |
Resolution | FIXED |
Resolved on | Feb 22, 2010 12:47 |
Version | trunk |
OS | Linux |
Blocks | llvm/llvm-bugzilla-archive#862 |
Extended Description
This code causes an assertion:
void %foo() {
entry:
%tmp = call int asm sideeffect "repne\0A\09",
"={cx},==&D,1,{ax},0,{dirflag},{fpsr},{flags},{memory}"( int* null, sbyte*
null, int 0, uint 4294967295 ) ; [#uses=0]
unreachable
}
The error is:
llc bugpoint-reduced-simplified.bc
llc: SelectionDAGISel.cpp:2132: void
llvm::SelectionDAGLowering::visitInlineAsm(llvm::CallInst&): Assertion `CTy ==
TargetLowering::C_RegisterClass && "Unknown op type!"' failed.
llc((anonymous namespace)::PrintStackTrace()+0x1a)[0x885fef8]
llc((anonymous namespace)::SignalHandler(int)+0x108)[0x88601b4]
[0xffffe500]
[0xffffe405]
/lib/tls/i686/cmov/libc.so.6(gsignal+0x51)[0x5570f8b1]
/lib/tls/i686/cmov/libc.so.6(abort+0x109)[0x55711049]
/lib/tls/i686/cmov/libc.so.6(__assert_fail+0x10f)[0x5570908f]
llc(llvm::SelectionDAGLowering::visitInlineAsm(llvm::CallInst&)+0xb88)[0x8651082]
llc(llvm::SelectionDAGLowering::visitCall(llvm::CallInst&)+0x83b)[0x8654de9]
llc(llvm::SelectionDAGLowering::visit(unsigned int, llvm::User&)+0x2d4)[0x866f7fc]
llc(llvm::SelectionDAGLowering::visit(llvm::Instruction&)+0x28)[0x866f8e4]
llc(llvm::SelectionDAGISel::BuildSelectionDAG(llvm::SelectionDAG&,
llvm::BasicBlock*, std::vector<std::pair<llvm::MachineInstr*, unsigned int>,
std::allocator<std::pair<llvm::MachineInstr*, unsigned int> > >&,
llvm::FunctionLoweringInfo&)+0x168)[0x865a1ea]
llc(llvm::SelectionDAGISel::SelectBasicBlock(llvm::BasicBlock*,
llvm::MachineFunction&, llvm::FunctionLoweringInfo&)+0x98)[0x865ab94]
llc(llvm::SelectionDAGISel::runOnFunction(llvm::Function&)+0x493)[0x865bfc7]
llc[0x84197c9]
llc(llvm::FunctionPassManagerT::runPass(llvm::FunctionPass*,
llvm::Function*)+0x1f)[0x87deb65]
llc(llvm::PassManagerTllvm::FTraits::runPasses(llvm::Function*,
std::map<llvm::Pass*, std::vector<llvm::Pass*, std::allocatorllvm::Pass* >,
std::lessllvm::Pass*, std::allocator<std::pair<llvm::Pass* const,
std::vector<llvm::Pass*, std::allocatorllvm::Pass* > > > >&)+0x136)[0x87f53da]
llc(llvm::PassManagerTllvm::FTraits::runOnUnit(llvm::Function*)+0x188)[0x87f5efe]
llc(llvm::FunctionPassManagerT::runOnFunction(llvm::Function&)+0x23)[0x87dec0b]
llc(llvm::FunctionPass::runOnModule(llvm::Module&)+0xa0)[0x87dc7be]
llc(llvm::ModulePassManager::runPass(llvm::ModulePass*,
llvm::Module*)+0x1f)[0x87debbb]
llc(llvm::PassManagerTllvm::MTraits::runPasses(llvm::Module*,
std::map<llvm::Pass*, std::vector<llvm::Pass*, std::allocatorllvm::Pass* >,
std::lessllvm::Pass*, std::allocator<std::pair<llvm::Pass* const,
std::vector<llvm::Pass*, std::allocatorllvm::Pass* > > > >&)+0x136)[0x87f5968]
llc(llvm::PassManagerTllvm::MTraits::runOnUnit(llvm::Module*)+0x188)[0x87f60c0]
llc(llvm::ModulePassManager::runOnModule(llvm::Module&)+0x23)[0x87dc1cf]
llc(llvm::PassManager::run(llvm::Module&)+0x23)[0x87dc247]
llc(main+0xdd9)[0x839a80b]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xc8)[0x556fbea8]
llc(__gxx_personality_v0+0x169)[0x8399031]
Aborted