Closed Quuxplusone closed 13 years ago
fail_74349.ll.log
Created attachment 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 }
Attached fail_74349.ll.log (34255 bytes, application/octet-stream): LL file reproducing the problem
r136711.
fail_74349.ll.log
(34255 bytes, application/octet-stream)