[LLVMbugs] [Bug 9535] New: LegalizeVectorTypes.cpp assertion hits (v8f32 fp_round)

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Mar 23 10:07:13 PDT 2011


http://llvm.org/bugs/show_bug.cgi?id=9535

           Summary: LegalizeVectorTypes.cpp assertion hits (v8f32
                    fp_round)
           Product: new-bugs
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: matt at pharr.org
                CC: llvmbugs at cs.uiuc.edu


Given this (greatly simplified and thus sort of non-sensical) program running
on TOT:

define void @f_fu([4 x float]*, [4 x float]* nocapture, float, i32 *%xxx)
nounwind {
entry:
  %gather_bitcast137.i = bitcast <8 x i64> undef to <8 x double>
  %double2float.i = fptrunc <8 x double> %gather_bitcast137.i to <8 x float>
  %rvalue2int.i = bitcast <8 x float> %double2float.i to <8 x i32>
  %storeval.i30.i = extractelement <8 x i32> %rvalue2int.i, i32 4
  store i32 %storeval.i30.i, i32* %xxx, align 4
  ret void
}

I'm seeing the following assertion failure:

% llc x.ll -o /dev/null                                                         
SplitVectorResult #0: 0x34fec80: v8f32 = fp_round 0x34fea80, 0x34feb80 [ORD=2]
[ID=0]

Do not know how to split the result of this operator!
UNREACHABLE executed at LegalizeVectorTypes.cpp:408!
0  llc             0x00000000014a5f39
1  llc             0x00000000014a5d2c
2  libpthread.so.0 0x00002b83984cd8f0
3  libc.so.6       0x00002b83990c2a75 gsignal + 53
4  libc.so.6       0x00002b83990c65c0 abort + 384
5  llc             0x0000000001491855
6  llc             0x0000000000f5ff24
7  llc             0x0000000000f53bf5
8  llc             0x0000000000f591a8 llvm::SelectionDAG::LegalizeTypes() + 74
9  llc             0x0000000000ef4c89
llvm::SelectionDAGISel::CodeGenAndEmitDAG() + 1059
10 llc             0x0000000000ef4498
llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator<llvm::Instruction
const>, llvm::ilist_iterator<llvm::Instruction const>, bool&) + 258
11 llc             0x0000000000ef6d5e
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) + 2604
12 llc             0x0000000000ef3a05
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) + 731
13 llc             0x00000000010508cd
llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 95
14 llc             0x00000000013d4f08
llvm::FPPassManager::runOnFunction(llvm::Function&) + 448
15 llc             0x00000000013d514e
llvm::FPPassManager::runOnModule(llvm::Module&) + 102
16 llc             0x00000000013d5481
llvm::MPPassManager::runOnModule(llvm::Module&) + 459
17 llc             0x00000000013d5984 llvm::PassManagerImpl::run(llvm::Module&)
+ 130
18 llc             0x00000000013d5ed9 llvm::PassManager::run(llvm::Module&) +
39
19 llc             0x0000000000a1893f main + 2455
20 libc.so.6       0x00002b83990adc4d __libc_start_main + 253
21 llc             0x0000000000a17899
Stack dump:
0.    Program arguments: llc x.ll -o /dev/null 
1.    Running pass 'Function Pass Manager' on module 'x.ll'.
2.    Running pass 'X86 DAG->DAG Instruction Selection' on function '@f_fu'
[1]    13884 abort      llc x.ll -o /dev/null

-- 
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