[LLVMbugs] [Bug 10499] New: llvm::SDValue<unnamed>::SelectionDAGLegalize::LegalizeOp(llvm::SDValue): Assertion `(TLI.getTypeAction(*DAG.getContext(), Node->getOperand(i).getValueType()) == TargetLowering::TypeLegal || Node->getOperand(i).getOpcode() == ISD::TargetConstant) && "Unexp
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Tue Jul 26 04:06:07 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10499
Summary: llvm::SDValue<unnamed>::SelectionDAGLegalize::Legalize
Op(llvm::SDValue): Assertion
`(TLI.getTypeAction(*DAG.getContext(),
Node->getOperand(i).getValueType()) ==
TargetLowering::TypeLegal ||
Node->getOperand(i).getOpcode() ==
ISD::TargetConstant) && "Unexp
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-64 -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_24438_500'
; ModuleID = 'bugpoint-reduced-simplified.bc'
target triple = "x86_64-unknown-linux-gnu"
define void @autogen_24438_500(i8*, i32*, i64*, i32, i8, i64) {
BB:
%A4 = alloca <8 x i64>
%A3 = alloca <8 x i16>
%A2 = alloca <8 x i16>
%A1 = alloca <8 x i32>
%A = alloca <8 x i32>
%L = load i8* %0
store i8 -85, i8* %0
%E = extractelement <8 x float> undef, i32 3
%E5 = extractelement <32 x float> undef, i32 24
%Shuff = shufflevector <8 x i32> undef, <8 x i32> undef, <8 x i32> <i32
undef, i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12>
%Shuff6 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff, <8 x i32> <i32 0,
i32 2, i32 undef, i32 6, i32 8, i32 undef, i32 12, i32 14>
%Shuff7 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff, <8 x i32> <i32 2,
i32 4, i32 6, i32 undef, i32 10, i32 12, i32 14, i32 0>
%I = insertelement <8 x i32> %Shuff, i32 -1, i32 4
%B = and i32 462723, %3
%BC = bitcast <8 x i32> %I to <8 x float>
%S = select i1 true, float 0x3ED0C07740000000, float 0x3EC8EBA4C0000000
%S8 = icmp ugt i8 %L, %4
br label %CF40
CF40: ; preds = %BB
%L9 = load i8* %0
store i8 %L9, i8* %0
%E10 = extractelement <8 x float> %BC, i32 7
%E11 = extractelement <8 x i32> %Shuff, i32 1
%Shuff12 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff, <8 x i32> <i32
undef, i32 undef, i32 0, i32 2, i32 undef, i32 6, i32 8, i32 10>
%Shuff13 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff12, <8 x i32> <i32
14, i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 undef>
%Shuff14 = shufflevector <8 x i32> %Shuff6, <8 x i32> %Shuff, <8 x i32> <i32
0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14>
%I15 = insertelement <8 x i32> %Shuff, i32 -1, i32 2
%B16 = urem <8 x i32> %Shuff14, %Shuff6
%FC = fptosi float 0x3ED0C07740000000 to i8
%S17 = select i1 %S8, i8 %L9, i8 115
%S18 = fcmp une float %S, 0x3EC9134F40000000
br label %CF
CF: ; preds = %CF, %CF40
%L19 = load i8* %0
store i8 115, i8* %0
%E20 = extractelement <8 x i32> %Shuff, i32 3
%E21 = extractelement <8 x i32> %B16, i32 5
%Shuff22 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff6, <8 x i32> <i32
undef, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14>
%Shuff23 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff12, <8 x i32> <i32
2, i32 undef, i32 6, i32 undef, i32 undef, i32 12, i32 undef, i32 0>
%Shuff24 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff22, <8 x i32> <i32
4, i32 6, i32 8, i32 10, i32 12, i32 14, i32 0, i32 2>
%I25 = insertelement <8 x i32> %Shuff, i32 -1, i32 6
%B26 = lshr i8 %S17, %L
%ZE = fpext <8 x float> %BC to <8 x double>
%S27 = select i1 %S18, i1 true, i1 %S8
br i1 %S27, label %CF, label %CF41
CF41: ; preds = %CF41, %CF
%S28 = fcmp false float %S, 0x3EC8EBA4C0000000
br i1 %S28, label %CF41, label %CF42
CF42: ; preds = %CF42, %CF41
%L29 = load i8* %0
store i8 %B26, i8* %0
%E30 = extractelement <8 x i32> %Shuff, i32 0
%E31 = extractelement <8 x i32> %Shuff, i32 2
%Shuff32 = shufflevector <8 x double> %ZE, <8 x double> %ZE, <8 x i32> <i32
5, i32 7, i32 9, i32 11, i32 13, i32 15, i32 1, i32 3>
%Shuff33 = shufflevector <8 x i32> %Shuff, <8 x i32> %Shuff24, <8 x i32> <i32
7, i32 9, i32 11, i32 undef, i32 15, i32 undef, i32 undef, i32 5>
%Shuff34 = shufflevector <8 x double> %Shuff32, <8 x double> %ZE, <8 x i32>
<i32 9, i32 11, i32 undef, i32 15, i32 1, i32 3, i32 undef, i32 7>
%I35 = insertelement <8 x double> %Shuff32, double 0x3EC79423E6864956, i32 3
%B36 = fdiv float %E, 0x3EC9134F40000000
%FC37 = uitofp i8 115 to double
%S38 = select i1 %S8, float %E10, float %B36
%S39 = icmp sgt i8 -117, %4
br i1 %S39, label %CF42, label %CF43
CF43: ; preds = %CF42
store i8 %B26, i8* %0
store <8 x i32> %B16, <8 x i32>* %A
store i8 115, i8* %0
store <8 x i32> %Shuff33, <8 x i32>* %A
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