[LLVMbugs] [Bug 10563] New: APInt::trunc(unsigned int) const: Assertion `width < BitWidth && "Invalid APInt Truncate request"' failed.
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Tue Aug 2 02:48:53 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10563
Summary: APInt::trunc(unsigned int) const: Assertion `width <
BitWidth && "Invalid APInt Truncate request"' 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
Created an attachment (id=6999)
--> (http://llvm.org/bugs/attachment.cgi?id=6999)
LL file reproducing the problem
llc: APInt.cpp:1007: llvm::APInt llvm::APInt::trunc(unsigned int) const:
Assertion `width < BitWidth && "Invalid APInt Truncate request"' failed.
0 llc 0x0000000001549f06
1 llc 0x000000000154a494
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 0x000000000151b6f2 llvm::APInt::trunc(unsigned int) const +
62
7 llc 0x0000000000fa0dca llvm::SelectionDAG::getNode(unsigned int,
llvm::DebugLoc, llvm::EVT, llvm::SDValue, llvm::SDValue) + 7784
8 llc 0x0000000000e8809e
llvm::X86TargetLowering::LowerUINT_TO_FP_i32(llvm::SDValue,
llvm::SelectionDAG&) const + 376
9 llc 0x0000000000eaa470
llvm::X86TargetLowering::LowerUINT_TO_FP(llvm::SDValue, llvm::SelectionDAG&)
const + 766
10 llc 0x0000000000ebaccb
llvm::X86TargetLowering::LowerOperation(llvm::SDValue, llvm::SelectionDAG&)
const + 1045
11 llc 0x000000000104203e (anonymous
namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDValue) + 4088
12 llc 0x00000000010570d3 (anonymous
namespace)::SelectionDAGLegalize::LegalizeDAG() + 179
13 llc 0x00000000010571f1 llvm::SelectionDAG::Legalize() + 49
14 llc 0x0000000000ffe7e8
llvm::SelectionDAGISel::CodeGenAndEmitDAG() + 2424
15 llc 0x000000000100054e
llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator<llvm::Instruction
const>, llvm::ilist_iterator<llvm::Instruction const>, bool&) + 230
16 llc 0x0000000001000eb0
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) + 2400
17 llc 0x000000000100142f
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) + 849
18 llc 0x000000000114c971
llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 85
19 llc 0x0000000001484137
llvm::FPPassManager::runOnFunction(llvm::Function&) + 371
20 llc 0x000000000148432f
llvm::FPPassManager::runOnModule(llvm::Module&) + 81
21 llc 0x0000000001483de3
llvm::MPPassManager::runOnModule(llvm::Module&) + 381
22 llc 0x0000000001485598 llvm::PassManagerImpl::run(llvm::Module&)
+ 116
23 llc 0x00000000014855fb llvm::PassManager::run(llvm::Module&) +
33
24 llc 0x0000000000ab884d main + 2403
25 libc.so.6 0x00002aaaab262304 __libc_start_main + 244
26 llc 0x0000000000ab6f99
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_74349_5000'
; ModuleID = 'bugpoint-reduced-simplified.bc'
target triple = "x86_64-unknown-linux-gnu"
define void @autogen_74349_5000(i8*, i32*, i64*, i32, i8, i64) {
BB:
%A4 = alloca <2 x i32>
%A3 = alloca <2 x i64>
%A2 = alloca <2 x i32>
%A1 = alloca <2 x double>
%A = alloca <2 x float>
%L = load i8* %0
store i8 -1, i8* %0
%E = extractelement <8 x float> undef, i32 3
%E5 = extractelement <32 x float> undef, i32 16
%Shuff = shufflevector <8 x float> undef, <8 x float> undef, <8 x i32> <i32
6, i32 8, i32 10, i32 12, i32 14, i32 0, i32 2, i32 undef>
%Shuff6 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 8, i32 10, i32 12, i32 14, i32 0, i32 2, i32 4, i32 6>
%Shuff7 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 10, i32 12, i32 14, i32 0, i32 undef, i32 4, i32 6, i32 8>
%I = insertelement <8 x float> %Shuff, float 0x3EC963BF00000000, i32 4
%B = and i8 -1, -1
%PC = bitcast <2 x i32>* %A2 to i32*
%S = select i1 true, i32 124099, i32 %3
%L8 = load i8* %0
store i32 0, i32* %PC
%E9 = extractelement <8 x float> %Shuff, i32 3
%E10 = extractelement <8 x float> %Shuff, i32 5
%Shuff11 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 undef, i32 undef, i32 4, i32 undef, i32 8, i32 10, i32 12, i32 undef>
%Shuff12 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 2, i32 4, i32 undef, i32 8, i32 undef, i32 12, i32 14, i32 0>
%Shuff13 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 4, i32 6, i32 8, i32 10, i32 undef, i32 14, i32 0, i32 2>
%I14 = insertelement <8 x float> %Shuff, float 0x3ED7FC0DA0000000, i32 6
%B15 = xor i64 %5, 171975
%PC16 = bitcast i64* %2 to i64*
%S17 = select i1 true, i8 -21, i8 %B
%L18 = load i64* %PC16
store i32 -1, i32* %PC
%E19 = extractelement <8 x float> %Shuff13, i32 0
%E20 = extractelement <8 x float> %Shuff, i32 2
%Shuff21 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff11, <8 x i32>
<i32 13, i32 15, i32 1, i32 undef, i32 5, i32 7, i32 9, i32 11>
%Shuff22 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 15, i32 undef, i32 3, i32 5, i32 undef, i32 undef, i32 11, i32 13>
%Shuff23 = shufflevector <8 x float> %Shuff13, <8 x float> %Shuff, <8 x i32>
<i32 1, i32 undef, i32 5, i32 7, i32 9, i32 undef, i32 13, i32 15>
%I24 = insertelement <8 x float> %Shuff, float 0x3ED7FC0DA0000000, i32 3
%FC = fptoui <8 x float> %I14 to <8 x i1>
%S25 = select i1 true, i64 408739, i64 %5
%S26 = icmp ult i64 0, 171975
%L27 = load <2 x i32>* %A2
store i32 %3, i32* %PC
%E28 = extractelement <8 x float> %Shuff21, i32 4
%E29 = extractelement <8 x float> %Shuff, i32 6
%Shuff30 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff21, <8 x i32>
<i32 1, i32 3, i32 5, i32 7, i32 undef, i32 11, i32 13, i32 undef>
%Shuff31 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 undef, i32 5, i32 7, i32 9, i32 undef, i32 undef, i32 15, i32 1>
%Shuff32 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 5, i32 7, i32 9, i32 11, i32 13, i32 15, i32 undef, i32 3>
%I33 = insertelement <8 x float> %Shuff13, float %E29, i32 7
%B34 = sub i32 -1, %3
%FC35 = fptoui double 0x3EEED9227F419BDF to i1
%S36 = select i1 true, double 0x3EE3CB298BF7FCE3, double 0x3EEED9227F419BDF
%L37 = load i32* %PC
store i32 %B34, i32* %PC
%E38 = extractelement <8 x float> %Shuff, i32 4
%E39 = extractelement <8 x float> %Shuff11, i32 6
%Shuff40 = shufflevector <2 x i32> %L27, <2 x i32> %L27, <2 x i32> <i32 1,
i32 3>
%Shuff41 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 15, i32 1, i32 3, i32 5, i32 7, i32 9, i32 undef, i32 13>
%Shuff42 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff30, <8 x i32>
<i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15>
%I43 = insertelement <8 x float> %Shuff, float 0x3ED7FC0DA0000000, i32 3
%B44 = srem i1 false, true
%PC45 = bitcast <2 x double>* %A1 to double*
%S46 = select i1 true, i64 0, i64 %5
%S47 = icmp slt i1 %FC35, %FC35
%L48 = load double* %PC45
store double %S36, double* %PC45
%E49 = extractelement <8 x float> %I43, i32 7
%E50 = extractelement <8 x float> %Shuff, i32 1
%Shuff51 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff23, <8 x i32>
<i32 undef, i32 6, i32 undef, i32 10, i32 12, i32 14, i32 0, i32 undef>
%Shuff52 = shufflevector <2 x i32> %Shuff40, <2 x i32> %L27, <2 x i32> <i32
undef, i32 0>
%Shuff53 = shufflevector <2 x i32> %L27, <2 x i32> %L27, <2 x i32> <i32
undef, i32 2>
%I54 = insertelement <8 x float> %Shuff51, float %E29, i32 2
%B55 = sub i64 %S46, 171975
%S56 = select i1 %S26, float %E38, float %E19
%S57 = fcmp ord <8 x float> %I54, %Shuff6
%L58 = load i32* %PC
store double 0x3EEED9227F419BDF, double* %PC45
%E59 = extractelement <8 x float> %Shuff, i32 0
%E60 = extractelement <2 x i32> %Shuff40, i32 0
%Shuff61 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff12, <8 x i32>
<i32 13, i32 15, i32 1, i32 3, i32 5, i32 7, i32 9, i32 11>
%Shuff62 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 undef, i32 1, i32 undef, i32 5, i32 undef, i32 9, i32 11, i32 13>
%Shuff63 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff51, <8 x i32>
<i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15>
%I64 = insertelement <8 x float> %Shuff, float %E29, i32 3
%Tr = trunc i16 -1 to i1
%S65 = select i1 true, i32 %S, i32 %B34
%S66 = icmp uge <8 x i1> %S57, %FC
%L67 = load double* %PC45
store i32 %L58, i32* %PC
%E68 = extractelement <8 x float> %Shuff61, i32 5
%E69 = extractelement <8 x float> %Shuff, i32 7
%Shuff70 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14, i32 0>
%Shuff71 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff61, <8 x i32>
<i32 undef, i32 6, i32 8, i32 10, i32 12, i32 14, i32 undef, i32 2>
%Shuff72 = shufflevector <2 x i32> %Shuff40, <2 x i32> %L27, <2 x i32> <i32
2, i32 undef>
%I73 = insertelement <8 x float> %Shuff70, float 0x3EC963BF00000000, i32 4
%B74 = or i32 -1, %L58
%Tr75 = trunc i32 124099 to i1
%S76 = select i1 true, i8 %S17, i8 %4
%L77 = load i32* %PC
store double %S36, double* %PC45
%E78 = extractelement <8 x float> %I43, i32 1
%E79 = extractelement <8 x float> %Shuff, i32 3
%Shuff80 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff51, <8 x i32>
<i32 14, i32 0, i32 2, i32 4, i32 undef, i32 8, i32 10, i32 12>
%Shuff81 = shufflevector <8 x float> %Shuff51, <8 x float> %I33, <8 x i32>
<i32 0, i32 undef, i32 undef, i32 6, i32 undef, i32 10, i32 undef, i32 14>
%Shuff82 = shufflevector <2 x i32> %Shuff40, <2 x i32> %L27, <2 x i32> <i32
2, i32 undef>
%I83 = insertelement <8 x float> %Shuff, float %E28, i32 0
%B84 = mul <2 x i32> %Shuff40, %L27
%ZE = fpext float %E38 to double
%S85 = select i1 %Tr, float %E, float %E38
%S86 = fcmp ole float %E50, %E49
%L87 = load i32* %PC
store i8 %L, i8* %0
%E88 = extractelement <8 x float> %I, i32 4
%E89 = extractelement <8 x float> %Shuff32, i32 6
%Shuff90 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 1, i32 3, i32 5, i32 undef, i32 9, i32 11, i32 undef, i32 15>
%Shuff91 = shufflevector <8 x float> %Shuff, <8 x float> %I73, <8 x i32> <i32
3, i32 5, i32 undef, i32 9, i32 11, i32 13, i32 15, i32 1>
%Shuff92 = shufflevector <2 x i32> %Shuff40, <2 x i32> %Shuff82, <2 x i32>
<i32 1, i32 3>
%I93 = insertelement <8 x i1> %FC, i1 %S26, i32 3
%B94 = udiv <2 x i32> %Shuff53, %Shuff40
%FC95 = fptosi <8 x float> %Shuff81 to <8 x i1>
%S96 = select i1 %S26, double %S36, double 0x3EEED9227F419BDF
%S97 = fcmp ogt float %E88, 0x3EC963BF00000000
%L98 = load i8* %0
store i8 %4, i8* %0
%E99 = extractelement <8 x float> %Shuff7, i32 6
%E100 = extractelement <2 x i32> %L27, i32 0
%Shuff101 = shufflevector <2 x i32> %B94, <2 x i32> %Shuff52, <2 x i32> <i32
3, i32 1>
%Shuff102 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 9, i32 11, i32 undef, i32 15, i32 1, i32 3, i32 undef, i32 7>
%Shuff103 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff63, <8 x i32>
<i32 11, i32 13, i32 15, i32 1, i32 3, i32 5, i32 7, i32 undef>
%I104 = insertelement <2 x i32> %Shuff101, i32 %B34, i32 1
%B105 = mul <8 x i1> %S57, %FC
%BC = bitcast float %E10 to i32
%S106 = select i1 true, i8 -77, i8 -77
%L107 = load i32* %PC
store double %S36, double* %PC45
%E108 = extractelement <8 x float> %Shuff51, i32 3
%E109 = extractelement <8 x float> %Shuff21, i32 5
%Shuff110 = shufflevector <8 x float> %Shuff61, <8 x float> %Shuff, <8 x i32>
<i32 8, i32 undef, i32 12, i32 14, i32 0, i32 2, i32 undef, i32 6>
%Shuff111 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff103, <8 x
i32> <i32 10, i32 undef, i32 14, i32 0, i32 2, i32 undef, i32 6, i32 8>
%Shuff112 = shufflevector <8 x float> %Shuff30, <8 x float> %Shuff62, <8 x
i32> <i32 12, i32 14, i32 0, i32 2, i32 4, i32 6, i32 8, i32 10>
%I113 = insertelement <8 x float> %Shuff, float %S56, i32 6
%B114 = fdiv float %E38, 0x3ED7FC0DA0000000
%FC115 = uitofp <2 x i32> %Shuff82 to <2 x double>
%S116 = select i1 %S47, <2 x i64>* %A3, <2 x i64>* %A3
%S117 = fcmp false <8 x float> %I73, %Shuff21
%L118 = load <2 x i64>* %S116
store double 0x3EC6E36395BE0B46, double* %PC45
%E119 = extractelement <2 x i32> %I104, i32 0
%E120 = extractelement <8 x float> %Shuff, i32 4
%Shuff121 = shufflevector <8 x float> %Shuff80, <8 x float> %Shuff, <8 x i32>
<i32 15, i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 undef>
%Shuff122 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff112, <8 x
i32> <i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15>
%Shuff123 = shufflevector <8 x float> %Shuff110, <8 x float> %Shuff121, <8 x
i32> <i32 3, i32 undef, i32 7, i32 9, i32 11, i32 13, i32 15, i32 1>
%I124 = insertelement <8 x float> %Shuff21, float %E9, i32 5
%B125 = fsub float %B114, %E49
%Se = sext i1 %B44 to i64
%S126 = select i1 %Tr, float 0x3EDF2BB5C0000000, float %E49
%S127 = icmp eq <8 x i1> %FC, %FC
%L128 = load i32* %PC
store <2 x i64> %L118, <2 x i64>* %S116
%E129 = extractelement <8 x float> %I73, i32 4
%E130 = extractelement <8 x i1> %FC, i32 6
%Shuff131 = shufflevector <8 x float> %Shuff23, <8 x float> %Shuff30, <8 x
i32> <i32 1, i32 undef, i32 undef, i32 undef, i32 9, i32 11, i32 13, i32 15>
%Shuff132 = shufflevector <2 x i32> %Shuff101, <2 x i32> %Shuff40, <2 x i32>
undef
%Shuff133 = shufflevector <8 x float> %Shuff30, <8 x float> %I83, <8 x i32>
<i32 9, i32 11, i32 13, i32 undef, i32 undef, i32 3, i32 5, i32 7>
%I134 = insertelement <8 x float> %Shuff, float %E49, i32 3
%B135 = frem <8 x float> %I124, %Shuff102
%BC136 = bitcast i64 408739 to double
%S137 = select i1 true, float %E79, float 0x3EC963BF00000000
%S138 = icmp ne i32 389819, %3
%L139 = load i8* %0
store double %L67, double* %PC45
%E140 = extractelement <8 x float> %Shuff90, i32 4
%E141 = extractelement <8 x float> %Shuff, i32 6
%Shuff142 = shufflevector <8 x float> %I, <8 x float> %Shuff, <8 x i32> <i32
9, i32 11, i32 13, i32 15, i32 1, i32 3, i32 5, i32 7>
%Shuff143 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff91, <8 x i32>
<i32 11, i32 13, i32 15, i32 1, i32 undef, i32 5, i32 7, i32 9>
%Shuff144 = shufflevector <8 x float> %Shuff, <8 x float> %I54, <8 x i32>
<i32 undef, i32 15, i32 1, i32 3, i32 5, i32 undef, i32 9, i32 11>
%I145 = insertelement <2 x i32> %Shuff40, i32 389819, i32 1
%B146 = add <8 x i1> %B105, %FC
%BC147 = bitcast i32 %B34 to float
%S148 = select i1 %FC35, float %E9, float %E38
%S149 = fcmp ule <8 x float> %Shuff70, %Shuff
%L150 = load <2 x i64>* %S116
store i8 %4, i8* %0
%E151 = extractelement <8 x float> %Shuff, i32 1
%E152 = extractelement <8 x float> %I43, i32 3
%Shuff153 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff133, <8 x
i32> <i32 14, i32 undef, i32 undef, i32 4, i32 6, i32 undef, i32 10, i32 12>
%Shuff154 = shufflevector <2 x i32> %L27, <2 x i32> %L27, <2 x i32> <i32
undef, i32 2>
%Shuff155 = shufflevector <8 x float> %Shuff70, <8 x float> %Shuff110, <8 x
i32> <i32 6, i32 8, i32 10, i32 12, i32 14, i32 0, i32 2, i32 4>
%I156 = insertelement <8 x i1> %S57, i1 %E130, i32 0
%B157 = frem float %E140, %E141
%S158 = select i1 %E130, i8* %0, i8* %0
%S159 = fcmp uge <8 x float> %Shuff12, %Shuff80
%L160 = load <2 x i64>* %S116
store <2 x i64> %L118, <2 x i64>* %S116
%E161 = extractelement <8 x float> %B135, i32 7
%E162 = extractelement <8 x float> %Shuff, i32 1
%Shuff163 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff102, <8 x
i32> <i32 4, i32 6, i32 undef, i32 undef, i32 12, i32 14, i32 0, i32 2>
%Shuff164 = shufflevector <8 x float> %Shuff21, <8 x float> %Shuff80, <8 x
i32> <i32 6, i32 8, i32 undef, i32 12, i32 14, i32 undef, i32 2, i32 4>
%Shuff165 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff102, <8 x
i32> <i32 8, i32 10, i32 12, i32 14, i32 0, i32 2, i32 undef, i32 6>
%I166 = insertelement <8 x float> %Shuff51, float %E9, i32 2
%B167 = fdiv float %E38, %E108
%S168 = select i1 %Tr75, float %B114, float 0x3ED76A4E00000000
%S169 = fcmp oge float %S148, %E68
%L170 = load i8* %S158
store i8 %S76, i8* %S158
%E171 = extractelement <8 x float> %Shuff51, i32 2
%E172 = extractelement <2 x i32> %Shuff82, i32 0
%Shuff173 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff122, <8 x
i32> <i32 15, i32 1, i32 3, i32 5, i32 undef, i32 9, i32 undef, i32 13>
%Shuff174 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 undef, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15>
%Shuff175 = shufflevector <2 x i32> %Shuff40, <2 x i32> %L27, <2 x i32> <i32
3, i32 1>
%I176 = insertelement <8 x float> %Shuff13, float %B157, i32 1
%B177 = shl <8 x i1> %S159, %I156
%L178 = load i8* %S158
store <2 x i64> %L118, <2 x i64>* %S116
%E179 = extractelement <2 x i32> %Shuff154, i32 0
%E180 = extractelement <8 x i1> %FC95, i32 6
%Shuff181 = shufflevector <2 x i32> %Shuff40, <2 x i32> %Shuff92, <2 x i32>
<i32 1, i32 3>
%Shuff182 = shufflevector <2 x i32> %B84, <2 x i32> %L27, <2 x i32> <i32 3,
i32 undef>
%Shuff183 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 5, i32 7, i32 9, i32 11, i32 13, i32 undef, i32 1, i32 3>
%I184 = insertelement <8 x float> %Shuff51, float %E151, i32 7
%B185 = add i64 372743, %S46
%FC186 = fptosi <8 x float> %Shuff51 to <8 x i32>
%S187 = select i1 %E130, i32 0, i32 0
%S188 = icmp ule i64 171975, %S46
%L189 = load <2 x i64>* %S116
store <2 x float> undef, <2 x float>* %A
%E190 = extractelement <8 x float> %Shuff131, i32 5
%E191 = extractelement <8 x float> %Shuff41, i32 7
%Shuff192 = shufflevector <8 x float> %Shuff122, <8 x float> %Shuff173, <8 x
i32> <i32 10, i32 12, i32 14, i32 0, i32 2, i32 4, i32 6, i32 8>
%Shuff193 = shufflevector <8 x i1> %S149, <8 x i1> %FC, <8 x i32> <i32 12,
i32 14, i32 0, i32 undef, i32 4, i32 undef, i32 undef, i32 10>
%Shuff194 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff153, <8 x
i32> <i32 undef, i32 0, i32 2, i32 4, i32 undef, i32 8, i32 10, i32 12>
%I195 = insertelement <8 x float> %Shuff, float %E88, i32 0
%B196 = lshr i8 -1, %L170
%ZE197 = zext i1 false to i32
%S198 = select i1 %E180, float 0x3ED7FC0DA0000000, float %B157
%L199 = load <2 x i64>* %S116
store double %S36, double* %PC45
%E200 = extractelement <2 x i32> %B84, i32 1
%E201 = extractelement <8 x float> %Shuff21, i32 7
%Shuff202 = shufflevector <8 x float> %Shuff70, <8 x float> %Shuff173, <8 x
i32> <i32 2, i32 4, i32 6, i32 8, i32 10, i32 undef, i32 undef, i32 0>
%Shuff203 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff131, <8 x
i32> <i32 4, i32 6, i32 undef, i32 10, i32 12, i32 14, i32 0, i32 2>
%Shuff204 = shufflevector <2 x i32> %I104, <2 x i32> %L27, <2 x i32> <i32 2,
i32 0>
%I205 = insertelement <8 x i1> %S159, i1 %Tr, i32 4
%ZE206 = zext i32 %L37 to i64
%S207 = select i1 %Tr75, i8 %S106, i8 %L98
%S208 = icmp ult i64 %B15, %B185
%L209 = load <2 x i64>* %S116
store <2 x i64> %L150, <2 x i64>* %S116
%E210 = extractelement <8 x i1> %S159, i32 3
%E211 = extractelement <8 x i1> %S127, i32 5
%Shuff212 = shufflevector <8 x float> %Shuff80, <8 x float> %Shuff, <8 x i32>
<i32 8, i32 10, i32 undef, i32 14, i32 0, i32 2, i32 undef, i32 undef>
%Shuff213 = shufflevector <2 x i32> %B84, <2 x i32> %L27, <2 x i32> <i32 2,
i32 0>
%Shuff214 = shufflevector <2 x i32> %Shuff213, <2 x i32> %Shuff213, <2 x i32>
<i32 0, i32 2>
%I215 = insertelement <8 x float> %Shuff142, float %B157, i32 6
%B216 = srem <2 x i32> %Shuff92, %Shuff132
%ZE217 = zext i8 %L8 to i16
%S218 = select i1 %E130, double %S36, double 0x3EE3CB298BF7FCE3
%S219 = icmp ule i64 25071, %B185
%L220 = load i32* %PC
store i8 %L, i8* %0
%E221 = extractelement <8 x float> %Shuff80, i32 2
%E222 = extractelement <8 x float> %Shuff, i32 4
%Shuff223 = shufflevector <8 x float> %Shuff164, <8 x float> %Shuff103, <8 x
i32> <i32 7, i32 undef, i32 undef, i32 undef, i32 15, i32 1, i32 undef, i32
undef>
%Shuff224 = shufflevector <8 x i32> %FC186, <8 x i32> %FC186, <8 x i32> <i32
undef, i32 11, i32 13, i32 15, i32 1, i32 3, i32 5, i32 7>
%Shuff225 = shufflevector <8 x float> %Shuff51, <8 x float> %Shuff153, <8 x
i32> <i32 11, i32 13, i32 15, i32 1, i32 3, i32 5, i32 7, i32 undef>
%I226 = insertelement <8 x i1> %B177, i1 %E130, i32 5
%B227 = fadd <8 x float> %I33, %Shuff102
%BC228 = bitcast i32 0 to float
%S229 = select i1 true, float %E, float %E221
%L230 = load i32* %PC
store <2 x i64> %L118, <2 x i64>* %S116
%E231 = extractelement <8 x float> %Shuff12, i32 1
%E232 = extractelement <8 x float> %Shuff202, i32 3
%Shuff233 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff, <8 x i32>
<i32 6, i32 8, i32 10, i32 12, i32 14, i32 0, i32 2, i32 4>
%Shuff234 = shufflevector <2 x i32> %Shuff92, <2 x i32> %Shuff72, <2 x i32>
<i32 0, i32 2>
%Shuff235 = shufflevector <2 x i32> %Shuff40, <2 x i32> %Shuff72, <2 x i32>
<i32 undef, i32 0>
%I236 = insertelement <8 x float> %I166, float %E19, i32 4
%B237 = sub i64 25071, %B185
%PC238 = bitcast <2 x float>* %A to float*
%S239 = select i1 %E180, i64 %S25, i64 %Se
%S240 = icmp ult <8 x i1> %I205, %S159
%L241 = load i8* %S158
store float %E190, float* %PC238
%E242 = extractelement <8 x float> %Shuff, i32 7
%E243 = extractelement <8 x float> %Shuff, i32 1
%Shuff244 = shufflevector <8 x float> %Shuff51, <8 x float> %Shuff233, <8 x
i32> <i32 undef, i32 6, i32 8, i32 10, i32 12, i32 14, i32 0, i32 2>
%Shuff245 = shufflevector <2 x i32> %Shuff213, <2 x i32> %Shuff72, <2 x i32>
<i32 undef, i32 0>
%Shuff246 = shufflevector <8 x float> %Shuff90, <8 x float> %Shuff, <8 x i32>
<i32 12, i32 14, i32 0, i32 2, i32 4, i32 6, i32 8, i32 10>
%I247 = insertelement <8 x float> %Shuff212, float %E190, i32 6
%B248 = fdiv <8 x float> %I24, %Shuff225
%FC249 = fptoui <8 x float> %Shuff63 to <8 x i64>
%S250 = select i1 %S219, float %E221, float %E5
%S251 = fcmp olt float %S126, %E99
%L252 = load double* %PC45
store float %E49, float* %PC238
%E253 = extractelement <8 x float> %Shuff7, i32 2
%E254 = extractelement <8 x i64> %FC249, i32 4
%Shuff255 = shufflevector <8 x float> %Shuff164, <8 x float> %Shuff, <8 x
i32> <i32 7, i32 9, i32 11, i32 13, i32 15, i32 1, i32 3, i32 5>
%Shuff256 = shufflevector <8 x float> %Shuff11, <8 x float> %Shuff183, <8 x
i32> <i32 9, i32 11, i32 13, i32 15, i32 1, i32 undef, i32 5, i32 7>
%Shuff257 = shufflevector <2 x i32> %Shuff101, <2 x i32> %L27, <2 x i32> <i32
3, i32 1>
%I258 = insertelement <8 x float> %Shuff, float %E221, i32 1
%Se259 = sext i1 %Tr75 to i32
%S260 = select i1 %S97, float %E78, float %E108
%S261 = fcmp ult <8 x float> %Shuff173, %I83
%L262 = load i8* %S158
store i32 %B34, i32* %PC
%E263 = extractelement <8 x float> %Shuff, i32 5
%E264 = extractelement <8 x float> %Shuff110, i32 7
%Shuff265 = shufflevector <8 x float> %Shuff233, <8 x float> %Shuff, <8 x
i32> <i32 10, i32 12, i32 14, i32 0, i32 2, i32 undef, i32 6, i32 8>
%Shuff266 = shufflevector <8 x float> %Shuff244, <8 x float> %Shuff202, <8 x
i32> <i32 12, i32 14, i32 0, i32 undef, i32 4, i32 6, i32 8, i32 10>
%Shuff267 = shufflevector <8 x float> %Shuff80, <8 x float> %Shuff212, <8 x
i32> <i32 14, i32 0, i32 undef, i32 4, i32 6, i32 8, i32 10, i32 12>
%I268 = insertelement <8 x float> %Shuff255, float %E69, i32 0
%ZE269 = fpext float %E231 to double
%S270 = select i1 %B44, float %E161, float %E151
%S271 = fcmp oge <8 x float> %Shuff62, %Shuff
%L272 = load float* %PC238
store i32 %E172, i32* %PC
%E273 = extractelement <8 x float> %Shuff, i32 2
%E274 = extractelement <8 x float> %Shuff80, i32 4
%Shuff275 = shufflevector <8 x float> %I113, <8 x float> %Shuff41, <8 x i32>
<i32 7, i32 9, i32 11, i32 13, i32 undef, i32 1, i32 3, i32 5>
%Shuff276 = shufflevector <8 x float> %Shuff212, <8 x float> %I134, <8 x i32>
<i32 9, i32 undef, i32 13, i32 15, i32 1, i32 3, i32 5, i32 7>
%Shuff277 = shufflevector <8 x float> %Shuff110, <8 x float> %Shuff110, <8 x
i32> <i32 11, i32 13, i32 15, i32 1, i32 undef, i32 5, i32 7, i32 undef>
%I278 = insertelement <2 x i32> %I145, i32 %3, i32 1
%FC279 = fptoui float %E232 to i8
%S280 = select i1 %Tr, i64 %B185, i64 %S25
%S281 = fcmp uno double 0x3EE3CB298BF7FCE3, %S218
%L282 = load i8* %S158
store i32 %E172, i32* %PC
%E283 = extractelement <2 x i32> %Shuff101, i32 1
%E284 = extractelement <2 x i32> %B216, i32 1
%Shuff285 = shufflevector <2 x double> %FC115, <2 x double> %FC115, <2 x i32>
<i32 2, i32 0>
%Shuff286 = shufflevector <2 x double> %Shuff285, <2 x double> %Shuff285, <2
x i32> <i32 0, i32 2>
%Shuff287 = shufflevector <8 x float> %Shuff255, <8 x float> %Shuff102, <8 x
i32> <i32 14, i32 0, i32 2, i32 undef, i32 6, i32 8, i32 undef, i32 12>
%I288 = insertelement <2 x i32> %B216, i32 %B34, i32 0
%B289 = ashr i8 %L262, %L139
%ZE290 = fpext float %E201 to double
%S291 = select i1 true, float %S270, float %E242
%S292 = icmp eq <2 x i32> %I278, %Shuff72
%L293 = load double* %PC45
store <2 x i64> %L118, <2 x i64>* %A3
%E294 = extractelement <8 x float> %Shuff202, i32 0
%E295 = extractelement <8 x i1> %S240, i32 2
%Shuff296 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff80, <8 x i32>
<i32 undef, i32 7, i32 9, i32 11, i32 13, i32 15, i32 1, i32 3>
%Shuff297 = shufflevector <8 x float> %Shuff30, <8 x float> %Shuff233, <8 x
i32> <i32 7, i32 9, i32 11, i32 13, i32 15, i32 undef, i32 undef, i32 5>
%Shuff298 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff41, <8 x i32>
<i32 undef, i32 11, i32 13, i32 15, i32 1, i32 3, i32 undef, i32 7>
%I299 = insertelement <8 x float> %Shuff144, float %E19, i32 3
%BC300 = bitcast i32 %L37 to float
%S301 = select i1 %E210, i32 0, i32 %E119
%S302 = fcmp ugt float %E151, %E201
%L303 = load i8* %S158
store <2 x i64> %L118, <2 x i64>* %S116
%E304 = extractelement <8 x i1> %S261, i32 1
%E305 = extractelement <8 x i1> %S127, i32 3
%Shuff306 = shufflevector <8 x i1> %S57, <8 x i1> %S66, <8 x i32> <i32 6, i32
8, i32 10, i32 12, i32 14, i32 0, i32 2, i32 4>
%Shuff307 = shufflevector <2 x i32> %Shuff245, <2 x i32> %Shuff82, <2 x i32>
<i32 0, i32 2>
%Shuff308 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff275, <8 x
i32> <i32 14, i32 0, i32 2, i32 4, i32 undef, i32 8, i32 10, i32 undef>
%I309 = insertelement <8 x float> %Shuff265, float %S148, i32 0
%FC310 = fptoui float %E221 to i16
%S311 = select i1 %E130, float 0x3ED76A4E00000000, float %E88
%S312 = fcmp une double %ZE, 0x3EEED9227F419BDF
%L313 = load i8* %0
store i64 %E254, i64* %PC16
%E314 = extractelement <8 x float> %Shuff, i32 5
%E315 = extractelement <8 x i1> %S149, i32 7
%Shuff316 = shufflevector <2 x i64> %L209, <2 x i64> %L118, <2 x i32> <i32 2,
i32 undef>
%Shuff317 = shufflevector <8 x float> %Shuff163, <8 x float> %Shuff287, <8 x
i32> <i32 0, i32 2, i32 4, i32 undef, i32 8, i32 10, i32 12, i32 14>
%Shuff318 = shufflevector <2 x i64> %L199, <2 x i64> %L150, <2 x i32> <i32 2,
i32 0>
%I319 = insertelement <8 x float> %Shuff103, float %E151, i32 0
%FC320 = sitofp i1 %E211 to double
%S321 = select i1 %S208, float %S229, float %S250
%S322 = icmp ule <8 x i1> %B177, %FC
%L323 = load <2 x i64>* %S116
store float %E9, float* %PC238
%E324 = extractelement <8 x float> %Shuff276, i32 3
%E325 = extractelement <8 x float> %Shuff103, i32 5
%Shuff326 = shufflevector <8 x float> %Shuff212, <8 x float> %Shuff202, <8 x
i32> <i32 undef, i32 undef, i32 12, i32 14, i32 0, i32 2, i32 undef, i32 6>
%Shuff327 = shufflevector <2 x i32> %Shuff101, <2 x i32> %Shuff40, <2 x i32>
<i32 2, i32 undef>
%Shuff328 = shufflevector <8 x float> %Shuff223, <8 x float> %Shuff326, <8 x
i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 undef, i32 undef, i32 14>
%I329 = insertelement <8 x float> %Shuff255, float %B114, i32 2
%B330 = udiv i32 %E200, 0
%FC331 = fptosi float %E325 to i32
%S332 = select i1 %FC35, i8 %4, i8 %S76
%S333 = icmp sgt <2 x i64> %L189, %L118
%L334 = load float* %PC238
store i32 0, i32* %PC
%E335 = extractelement <2 x i64> %L118, i32 1
%E336 = extractelement <2 x i32> %L27, i32 1
%Shuff337 = shufflevector <8 x float> %Shuff143, <8 x float> %Shuff11, <8 x
i32> <i32 undef, i32 undef, i32 0, i32 undef, i32 4, i32 undef, i32 8, i32
undef>
%Shuff338 = shufflevector <8 x float> %Shuff71, <8 x float> %Shuff142, <8 x
i32> <i32 14, i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 undef>
%Shuff339 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff153, <8 x
i32> <i32 undef, i32 undef, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14>
%I340 = insertelement <2 x i32> %Shuff214, i32 %E172, i32 0
%B341 = fdiv <8 x float> %I176, %Shuff
%ZE342 = fpext float %E120 to double
%S343 = select i1 %S302, <2 x i32>* %A2, <2 x i32>* %A2
%S344 = fcmp oeq <8 x float> %I24, %Shuff
%L345 = load i32* %PC
store i32 %BC, i32* %PC
%E346 = extractelement <2 x i32> %Shuff101, i32 1
%E347 = extractelement <8 x float> %Shuff, i32 3
%Shuff348 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff192, <8 x
i32> <i32 14, i32 undef, i32 2, i32 4, i32 6, i32 undef, i32 undef, i32 undef>
%Shuff349 = shufflevector <2 x i64> %L323, <2 x i64> %L118, <2 x i32> <i32 0,
i32 2>
%Shuff350 = shufflevector <8 x float> %Shuff131, <8 x float> %Shuff21, <8 x
i32> <i32 6, i32 8, i32 undef, i32 12, i32 14, i32 undef, i32 2, i32 4>
%I351 = insertelement <2 x i32> %L27, i32 %L230, i32 0
%FC352 = sitofp i32 %E346 to double
%S353 = select i1 %FC35, float %S148, float %E273
%S354 = icmp uge <2 x i32> %Shuff182, %Shuff92
%L355 = load <2 x i32>* %S343
store float %S85, float* %PC238
%E356 = extractelement <2 x i64> %Shuff316, i32 0
%E357 = extractelement <8 x float> %I184, i32 6
%Shuff358 = shufflevector <2 x i64> %Shuff349, <2 x i64> %L118, <2 x i32>
<i32 1, i32 3>
%Shuff359 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff41, <8 x i32>
<i32 15, i32 1, i32 3, i32 5, i32 undef, i32 9, i32 undef, i32 undef>
%Shuff360 = shufflevector <8 x float> %Shuff63, <8 x float> %Shuff233, <8 x
i32> <i32 1, i32 undef, i32 undef, i32 undef, i32 9, i32 11, i32 13, i32 undef>
%I361 = insertelement <8 x float> %Shuff350, float %S137, i32 3
%S362 = select i1 %S208, double %S96, double %L252
%S363 = icmp uge i1 %S208, %Tr
%L364 = load <2 x i64>* %S116
store double %ZE290, double* %PC45
%E365 = extractelement <8 x float> %Shuff70, i32 0
%E366 = extractelement <2 x i32> %Shuff175, i32 0
%Shuff367 = shufflevector <8 x float> %Shuff21, <8 x float> %Shuff110, <8 x
i32> <i32 13, i32 15, i32 undef, i32 3, i32 5, i32 undef, i32 9, i32 undef>
%Shuff368 = shufflevector <2 x i64> %Shuff316, <2 x i64> %Shuff316, <2 x i32>
<i32 undef, i32 1>
%Shuff369 = shufflevector <8 x float> %Shuff275, <8 x float> %Shuff80, <8 x
i32> <i32 5, i32 7, i32 9, i32 11, i32 13, i32 15, i32 1, i32 3>
%I370 = insertelement <8 x float> %Shuff, float %E19, i32 7
%PC371 = bitcast i64* %2 to double*
%S372 = select i1 %E304, float %E120, float %S353
%S373 = fcmp ogt <8 x float> %Shuff71, %Shuff244
%L374 = load float* %PC238
store <2 x i32> %L27, <2 x i32>* %S343
%E375 = extractelement <2 x i32> %Shuff40, i32 0
%E376 = extractelement <8 x float> %Shuff, i32 0
%Shuff377 = shufflevector <8 x float> %Shuff265, <8 x float> %Shuff153, <8 x
i32> <i32 11, i32 13, i32 15, i32 1, i32 3, i32 5, i32 7, i32 9>
%Shuff378 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff110, <8 x
i32> <i32 13, i32 15, i32 1, i32 undef, i32 undef, i32 7, i32 9, i32 11>
%Shuff379 = shufflevector <2 x i64> %L364, <2 x i64> %Shuff316, <2 x i32>
<i32 undef, i32 1>
%I380 = insertelement <8 x float> %Shuff192, float %S137, i32 5
%S381 = select i1 %S281, double %L252, double 0x3EE3CB298BF7FCE3
%S382 = icmp ugt i8 %FC279, %4
%L383 = load <2 x i32>* %S343
store <2 x i32> %Shuff132, <2 x i32>* %S343
%E384 = extractelement <8 x float> %I370, i32 2
%E385 = extractelement <8 x float> %Shuff21, i32 4
%Shuff386 = shufflevector <2 x i64> %Shuff358, <2 x i64> %Shuff316, <2 x i32>
<i32 3, i32 1>
%Shuff387 = shufflevector <8 x float> %Shuff, <8 x float> %Shuff275, <8 x
i32> <i32 undef, i32 7, i32 9, i32 11, i32 undef, i32 undef, i32 undef, i32 3>
%Shuff388 = shufflevector <2 x i64> %Shuff316, <2 x i64> %Shuff316, <2 x i32>
<i32 undef, i32 1>
%I389 = insertelement <8 x i1> %S117, i1 %S363, i32 5
%FC390 = uitofp i8 %L8 to float
%S391 = select i1 true, i8 %B, i8 %L262
%S392 = icmp uge <2 x i1> %S333, %S292
%L393 = load float* %PC238
store <2 x i64> %L118, <2 x i64>* %S116
%E394 = extractelement <8 x float> %Shuff377, i32 2
%E395 = extractelement <2 x i64> %L150, i32 0
%Shuff396 = shufflevector <2 x i64> %L209, <2 x i64> %L118, <2 x i32> <i32 3,
i32 1>
%Shuff397 = shufflevector <2 x i32> %I104, <2 x i32> %I351, <2 x i32> <i32 1,
i32 3>
%Shuff398 = shufflevector <8 x i1> %S322, <8 x i1> %S240, <8 x i32> <i32 11,
i32 13, i32 15, i32 1, i32 3, i32 5, i32 7, i32 9>
%I399 = insertelement <2 x i64> %Shuff316, i64 %B185, i32 1
%B400 = shl i1 true, %E130
%ZE401 = zext <2 x i32> %I340 to <2 x i64>
%S402 = select i1 %S208, float %E191, float %E221
%S403 = icmp ne <2 x i32> %B94, %Shuff40
%L404 = load float* %PC238
store float %BC228, float* %PC238
%E405 = extractelement <8 x float> %Shuff337, i32 4
%E406 = extractelement <2 x i32> %Shuff234, i32 0
%Shuff407 = shufflevector <8 x float> %Shuff337, <8 x float> %Shuff367, <8 x
i32> <i32 1, i32 undef, i32 undef, i32 7, i32 undef, i32 11, i32 13, i32 15>
%Shuff408 = shufflevector <2 x i1> %S333, <2 x i1> %S292, <2 x i32> <i32 3,
i32 1>
%Shuff409 = shufflevector <8 x float> %Shuff142, <8 x float> %Shuff359, <8 x
i32> <i32 undef, i32 11, i32 13, i32 15, i32 1, i32 3, i32 5, i32 undef>
%I410 = insertelement <8 x float> %Shuff377, float %E365, i32 3
%B411 = sdiv <2 x i32> %L383, %I340
%ZE412 = fpext <8 x float> %Shuff317 to <8 x double>
%S413 = select i1 %S47, <2 x double>* %A1, <2 x double>* %A1
%S414 = icmp ult i64 %Se, %B185
store double %L67, double* %PC371
store float %E99, float* %PC238
store <2 x i64> %L118, <2 x i64>* %S116
store <2 x double> %FC115, <2 x double>* %S413
store i32 %E366, i32* %PC
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