[LLVMbugs] [Bug 10482] New: Assertion `(TLI.getTypeAction(*DAG.getContext(), Node->getOperand(i).getValueType()) == TargetLowering::TypeLegal || Node->getOperand(i).getOpcode() == ISD::TargetConstant) && "Unexpected illegal type!"' failed.
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Mon Jul 25 10:59:35 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10482
Summary: Assertion `(TLI.getTypeAction(*DAG.getContext(),
Node->getOperand(i).getValueType()) ==
TargetLowering::TypeLegal ||
Node->getOperand(i).getOpcode() ==
ISD::TargetConstant) && "Unexpected illegal type!"'
failed.
Product: libraries
Version: trunk
Platform: PC
OS/Version: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: Backend: X86
AssignedTo: unassignedbugs at nondot.org
ReportedBy: nadav.rotem at intel.com
CC: llvmbugs at cs.uiuc.edu
llc: LegalizeDAG.cpp:788:
llvm::SDValue<unnamed>::SelectionDAGLegalize::LegalizeOp(llvm::SDValue):
Assertion `(TLI.getTypeAction(*DAG.getContext(),
Node->getOperand(i).getValueType()) == TargetLowering::TypeLegal ||
Node->getOperand(i).getOpcode() == ISD::TargetConstant) && "Unexpected illegal
type!"' failed.
0 llc 0x000000000153ffea
1 llc 0x0000000001540578
2 libpthread.so.0 0x00002aaaaabd4d60
3 libc.so.6 0x00002aaaab274f45 gsignal + 53
4 libc.so.6 0x00002aaaab276340 abort + 272
5 libc.so.6 0x00002aaaab26e486 __assert_fail + 246
6 llc 0x0000000001039bc8 (anonymous
namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDValue) + 558
7 llc 0x00000000010428e9 (anonymous
namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDValue) + 36687
8 llc 0x000000000104fa27 (anonymous
namespace)::SelectionDAGLegalize::LegalizeDAG() + 179
9 llc 0x000000000104fb45 llvm::SelectionDAG::Legalize() + 49
10 llc 0x0000000000ff713c
llvm::SelectionDAGISel::CodeGenAndEmitDAG() + 2424
11 llc 0x0000000000ff8ea2
llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator<llvm::Instruction
const>, llvm::ilist_iterator<llvm::Instruction const>, bool&) + 230
12 llc 0x0000000000ff9804
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) + 2400
13 llc 0x0000000000ff9d83
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) + 849
14 llc 0x00000000011449ad
llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 85
15 llc 0x000000000147a2bb
llvm::FPPassManager::runOnFunction(llvm::Function&) + 371
16 llc 0x000000000147a4b3
llvm::FPPassManager::runOnModule(llvm::Module&) + 81
17 llc 0x0000000001479f67
llvm::MPPassManager::runOnModule(llvm::Module&) + 381
18 llc 0x000000000147b71c llvm::PassManagerImpl::run(llvm::Module&)
+ 116
19 llc 0x000000000147b77f llvm::PassManager::run(llvm::Module&) +
33
20 llc 0x0000000000ab642d main + 2403
21 libc.so.6 0x00002aaaab262304 __libc_start_main + 244
22 llc 0x0000000000ab4b79
Stack dump:
0. Program arguments: ../llc temp.ll -march=x86 -mattr=-sse2,-sse41 -o
/dev/null
1. Running pass 'Function Pass Manager' on module 'temp.ll'.
2. Running pass 'X86 DAG->DAG Instruction Selection' on function
'@autogen_3043_500'
; ModuleID = 'bugpoint-reduced-simplified.bc'
target triple = "x86_64-unknown-linux-gnu"
define void @autogen_3043_500(i8*, i32*, i64*, i32, i8, i64) {
BB:
%A4 = alloca <2 x i16>
%A3 = alloca <2 x float>
%A2 = alloca <2 x float>
%A1 = alloca <2 x double>
%A = alloca i64
%L = load i8* %0
store i8 0, i8* %0
%E = extractelement <8 x i32> undef, i32 7
%E5 = extractelement <32 x i32> undef, i32 4
%Shuff = shufflevector <8 x double> undef, <8 x double> undef, <8 x i32> <i32
10, i32 12, i32 14, i32 0, i32 2, i32 undef, i32 6, i32 8>
%Shuff6 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff, <8 x i32>
<i32 12, i32 14, i32 0, i32 2, i32 4, i32 6, i32 8, i32 10>
%Shuff7 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff, <8 x i32>
<i32 14, i32 0, i32 2, i32 4, i32 6, i32 8, i32 undef, i32 undef>
%I = insertelement <8 x double> %Shuff, double 0x3F1851E3BCD5D80D, i32 0
%B = udiv i8 -125, -125
%FC = sitofp i64 0 to double
%S = select i1 true, <2 x float>* %A3, <2 x float>* %A2
%S8 = icmp ult i16 -2753, -22257
br label %CF38
CF38: ; preds = %CF38, %BB
%L9 = load <2 x float>* %S
store <2 x float> %L9, <2 x float>* %S
%E10 = extractelement <8 x double> %Shuff, i32 2
%E11 = extractelement <8 x double> %Shuff, i32 4
%Shuff12 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff, <8 x i32>
<i32 undef, i32 9, i32 11, i32 13, i32 15, i32 1, i32 3, i32 5>
%Shuff13 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff, <8 x i32>
<i32 9, i32 11, i32 13, i32 15, i32 undef, i32 3, i32 5, i32 7>
%Shuff14 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff6, <8 x i32>
<i32 11, i32 13, i32 15, i32 undef, i32 3, i32 undef, i32 undef, i32 9>
%I15 = insertelement <8 x double> %Shuff, double %FC, i32 5
%B16 = add i1 true, %S8
br i1 %B16, label %CF38, label %CF39
CF39: ; preds = %CF38
%BC = bitcast i32 %3 to float
%S17 = select i1 %B16, double 0x3EE16D9E1D8663CD, double 0x3F1851E3BCD5D80D
%S18 = icmp eq i64 250647, %5
br label %CF
CF: ; preds = %CF, %CF39
%L19 = load i64* %A
store <2 x float> %L9, <2 x float>* %S
%E20 = extractelement <8 x double> %Shuff, i32 2
%E21 = extractelement <8 x double> %Shuff, i32 4
%Shuff22 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff12, <8 x
i32> <i32 15, i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13>
%Shuff23 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff, <8 x i32>
<i32 1, i32 3, i32 undef, i32 7, i32 9, i32 undef, i32 13, i32 15>
%Shuff24 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff12, <8 x
i32> <i32 3, i32 undef, i32 7, i32 9, i32 11, i32 13, i32 15, i32 1>
%I25 = insertelement <8 x double> %Shuff, double 0x3EEE4B396B243C8B, i32 5
%Tr = trunc i64 250647 to i32
%S26 = select i1 %B16, i8 -125, i8 -125
%L27 = load <2 x float>* %S
store i8 -125, i8* %0
%E28 = extractelement <8 x double> %Shuff, i32 5
%E29 = extractelement <2 x float> %L27, i32 1
%Shuff30 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff, <8 x i32>
<i32 undef, i32 4, i32 6, i32 undef, i32 10, i32 12, i32 14, i32 0>
%Shuff31 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff, <8 x i32>
<i32 undef, i32 6, i32 8, i32 10, i32 12, i32 14, i32 0, i32 2>
%Shuff32 = shufflevector <8 x double> %Shuff, <8 x double> %Shuff30, <8 x
i32> <i32 6, i32 8, i32 undef, i32 12, i32 14, i32 0, i32 2, i32 4>
%I33 = insertelement <8 x double> %Shuff22, double %S17, i32 0
%B34 = frem <8 x double> %Shuff13, %Shuff
%Tr35 = trunc i32 %3 to i1
br i1 %Tr35, label %CF, label %CF40
CF40: ; preds = %CF40, %CF
%S36 = select i1 %S18, i1 %B16, i1 %B16
br i1 %S36, label %CF40, label %CF41
CF41: ; preds = %CF41, %CF40
%S37 = icmp eq i64 394307, %L19
br i1 %S37, label %CF41, label %CF42
CF42: ; preds = %CF41
store <2 x float> %L27, <2 x float>* %S
store <2 x float> %L9, <2 x float>* %A3
store i8 %S26, i8* %0
store <2 x float> %L9, <2 x float>* %S
store i8 %L, i8* %0
ret void
}
--
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