Lines Matching refs:Ops
1143 Value *CodeGenFunction::EmitNeonCall(Function *F, SmallVectorImpl<Value*> &Ops, in EmitNeonCall() argument
1150 Ops[j] = EmitNeonShiftVector(Ops[j], ai->getType(), rightshift); in EmitNeonCall()
1152 Ops[j] = Builder.CreateBitCast(Ops[j], ai->getType(), name); in EmitNeonCall()
1154 return Builder.CreateCall(F, Ops, name); in EmitNeonCall()
1196 llvm::SmallVector<Value*, 2> Ops; in EmitARMBuiltinExpr() local
1198 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitARMBuiltinExpr()
1202 return Builder.CreateCall(CGM.CreateRuntimeFunction(FTy, Name), Ops); in EmitARMBuiltinExpr()
1239 llvm::SmallVector<Value*, 4> Ops; in EmitARMBuiltinExpr() local
1241 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitARMBuiltinExpr()
1263 return Builder.CreateCall(F, Ops, "vcvtr"); in EmitARMBuiltinExpr()
1285 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vabd"); in EmitARMBuiltinExpr()
1289 Ops, "vabs"); in EmitARMBuiltinExpr()
1292 Ops, "vaddhn"); in EmitARMBuiltinExpr()
1294 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1297 return EmitNeonCall(F, Ops, "vcage"); in EmitARMBuiltinExpr()
1300 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1303 return EmitNeonCall(F, Ops, "vcage"); in EmitARMBuiltinExpr()
1306 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1309 return EmitNeonCall(F, Ops, "vcagt"); in EmitARMBuiltinExpr()
1312 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1315 return EmitNeonCall(F, Ops, "vcagt"); in EmitARMBuiltinExpr()
1320 return EmitNeonCall(F, Ops, "vcls"); in EmitARMBuiltinExpr()
1325 return EmitNeonCall(F, Ops, "vclz"); in EmitARMBuiltinExpr()
1330 return EmitNeonCall(F, Ops, "vcnt"); in EmitARMBuiltinExpr()
1335 return EmitNeonCall(F, Ops, "vcvt"); in EmitARMBuiltinExpr()
1340 return EmitNeonCall(F, Ops, "vcvt"); in EmitARMBuiltinExpr()
1344 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1346 return usgn ? Builder.CreateUIToFP(Ops[0], Ty, "vcvt") in EmitARMBuiltinExpr()
1347 : Builder.CreateSIToFP(Ops[0], Ty, "vcvt"); in EmitARMBuiltinExpr()
1353 Ops[0] = Builder.CreateBitCast(Ops[0], GetNeonType(getLLVMContext(), 4, quad)); in EmitARMBuiltinExpr()
1354 return usgn ? Builder.CreateFPToUI(Ops[0], Ty, "vcvt") in EmitARMBuiltinExpr()
1355 : Builder.CreateFPToSI(Ops[0], Ty, "vcvt"); in EmitARMBuiltinExpr()
1362 return EmitNeonCall(F, Ops, "vcvt_n"); in EmitARMBuiltinExpr()
1371 return EmitNeonCall(F, Ops, "vcvt_n"); in EmitARMBuiltinExpr()
1375 int CV = cast<ConstantInt>(Ops[2])->getSExtValue(); in EmitARMBuiltinExpr()
1380 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1381 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1383 return Builder.CreateShuffleVector(Ops[0], Ops[1], SV, "vext"); in EmitARMBuiltinExpr()
1395 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitARMBuiltinExpr()
1400 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vhadd"); in EmitARMBuiltinExpr()
1404 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vhsub"); in EmitARMBuiltinExpr()
1407 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1409 Ops, "vld1"); in EmitARMBuiltinExpr()
1412 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1414 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1415 Ops[0] = Builder.CreateLoad(Ops[0]); in EmitARMBuiltinExpr()
1416 return Builder.CreateInsertElement(Ops[1], Ops[0], Ops[2], "vld1_lane"); in EmitARMBuiltinExpr()
1421 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1422 Ops[0] = Builder.CreateLoad(Ops[0]); in EmitARMBuiltinExpr()
1424 Ops[0] = Builder.CreateInsertElement(V, Ops[0], CI); in EmitARMBuiltinExpr()
1425 return EmitNeonSplat(Ops[0], CI); in EmitARMBuiltinExpr()
1431 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld2"); in EmitARMBuiltinExpr()
1432 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1433 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1434 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1440 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld3"); in EmitARMBuiltinExpr()
1441 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1442 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1443 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1449 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld4"); in EmitARMBuiltinExpr()
1450 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1451 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1452 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1457 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1458 Ops[3] = Builder.CreateBitCast(Ops[3], Ty); in EmitARMBuiltinExpr()
1459 Ops.push_back(GetPointeeAlignment(*this, E->getArg(1))); in EmitARMBuiltinExpr()
1460 Ops[1] = Builder.CreateCall(F, makeArrayRef(Ops.begin() + 1, Ops.end()), in EmitARMBuiltinExpr()
1462 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1463 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1464 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1469 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1470 Ops[3] = Builder.CreateBitCast(Ops[3], Ty); in EmitARMBuiltinExpr()
1471 Ops[4] = Builder.CreateBitCast(Ops[4], Ty); in EmitARMBuiltinExpr()
1472 Ops.push_back(GetPointeeAlignment(*this, E->getArg(1))); in EmitARMBuiltinExpr()
1473 Ops[1] = Builder.CreateCall(F, makeArrayRef(Ops.begin() + 1, Ops.end()), in EmitARMBuiltinExpr()
1475 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1476 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1477 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1482 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1483 Ops[3] = Builder.CreateBitCast(Ops[3], Ty); in EmitARMBuiltinExpr()
1484 Ops[4] = Builder.CreateBitCast(Ops[4], Ty); in EmitARMBuiltinExpr()
1485 Ops[5] = Builder.CreateBitCast(Ops[5], Ty); in EmitARMBuiltinExpr()
1486 Ops.push_back(GetPointeeAlignment(*this, E->getArg(1))); in EmitARMBuiltinExpr()
1487 Ops[1] = Builder.CreateCall(F, makeArrayRef(Ops.begin() + 1, Ops.end()), in EmitARMBuiltinExpr()
1489 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1490 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1491 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1512 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld_dup"); in EmitARMBuiltinExpr()
1513 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1514 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1515 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1533 Args.push_back(Ops[1]); in EmitARMBuiltinExpr()
1540 Ops[1] = Builder.CreateCall(F, Args, "vld_dup"); in EmitARMBuiltinExpr()
1543 Value *Val = Builder.CreateExtractValue(Ops[1], i); in EmitARMBuiltinExpr()
1547 Ops[1] = Builder.CreateInsertValue(Ops[1], Elt, i); in EmitARMBuiltinExpr()
1549 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1550 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1551 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1556 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vmax"); in EmitARMBuiltinExpr()
1560 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vmin"); in EmitARMBuiltinExpr()
1563 Ops[0] = Builder.CreateBitCast(Ops[0], DTy); in EmitARMBuiltinExpr()
1565 return Builder.CreateZExt(Ops[0], Ty, "vmovl"); in EmitARMBuiltinExpr()
1566 return Builder.CreateSExt(Ops[0], Ty, "vmovl"); in EmitARMBuiltinExpr()
1570 Ops[0] = Builder.CreateBitCast(Ops[0], QTy); in EmitARMBuiltinExpr()
1571 return Builder.CreateTrunc(Ops[0], Ty, "vmovn"); in EmitARMBuiltinExpr()
1577 Ops, "vmul"); in EmitARMBuiltinExpr()
1581 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vmull"); in EmitARMBuiltinExpr()
1592 return EmitNeonCall(CGM.getIntrinsic(Int, Tys), Ops, "vpadal"); in EmitARMBuiltinExpr()
1596 Ops, "vpadd"); in EmitARMBuiltinExpr()
1606 return EmitNeonCall(CGM.getIntrinsic(Int, Tys), Ops, "vpaddl"); in EmitARMBuiltinExpr()
1610 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vpmax"); in EmitARMBuiltinExpr()
1613 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vpmin"); in EmitARMBuiltinExpr()
1617 Ops, "vqabs"); in EmitARMBuiltinExpr()
1621 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqadd"); in EmitARMBuiltinExpr()
1624 Ops, "vqdmlal"); in EmitARMBuiltinExpr()
1627 Ops, "vqdmlsl"); in EmitARMBuiltinExpr()
1631 Ops, "vqdmulh"); in EmitARMBuiltinExpr()
1634 Ops, "vqdmull"); in EmitARMBuiltinExpr()
1637 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqmovn"); in EmitARMBuiltinExpr()
1640 Ops, "vqdmull"); in EmitARMBuiltinExpr()
1644 Ops, "vqneg"); in EmitARMBuiltinExpr()
1648 Ops, "vqrdmulh"); in EmitARMBuiltinExpr()
1652 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqrshl"); in EmitARMBuiltinExpr()
1655 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqrshrn_n", in EmitARMBuiltinExpr()
1659 Ops, "vqrshrun_n", 1, true); in EmitARMBuiltinExpr()
1663 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqshl"); in EmitARMBuiltinExpr()
1667 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqshl_n", in EmitARMBuiltinExpr()
1672 Ops, "vqshlu", 1, false); in EmitARMBuiltinExpr()
1675 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqshrn_n", in EmitARMBuiltinExpr()
1679 Ops, "vqshrun_n", 1, true); in EmitARMBuiltinExpr()
1683 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqsub"); in EmitARMBuiltinExpr()
1686 Ops, "vraddhn"); in EmitARMBuiltinExpr()
1690 Ops, "vrecpe"); in EmitARMBuiltinExpr()
1694 Ops, "vrecps"); in EmitARMBuiltinExpr()
1698 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vrhadd"); in EmitARMBuiltinExpr()
1702 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vrshl"); in EmitARMBuiltinExpr()
1705 Ops, "vrshrn_n", 1, true); in EmitARMBuiltinExpr()
1709 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vrshr_n", 1, true); in EmitARMBuiltinExpr()
1713 Ops, "vrsqrte"); in EmitARMBuiltinExpr()
1717 Ops, "vrsqrts"); in EmitARMBuiltinExpr()
1720 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1721 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1722 Ops[2] = EmitNeonShiftVector(Ops[2], Ty, true); in EmitARMBuiltinExpr()
1724 Ops[1] = Builder.CreateCall2(CGM.getIntrinsic(Int, Ty), Ops[1], Ops[2]); in EmitARMBuiltinExpr()
1725 return Builder.CreateAdd(Ops[0], Ops[1], "vrsra_n"); in EmitARMBuiltinExpr()
1728 Ops, "vrsubhn"); in EmitARMBuiltinExpr()
1739 Ops.push_back(EmitScalarExpr(E->getArg(2))); in EmitARMBuiltinExpr()
1740 return Builder.CreateInsertElement(Ops[1], Ops[0], Ops[2], "vset_lane"); in EmitARMBuiltinExpr()
1744 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vshl"); in EmitARMBuiltinExpr()
1747 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vshll", 1); in EmitARMBuiltinExpr()
1750 Ops[1] = EmitNeonShiftVector(Ops[1], Ty, false); in EmitARMBuiltinExpr()
1751 return Builder.CreateShl(Builder.CreateBitCast(Ops[0],Ty), Ops[1], "vshl_n"); in EmitARMBuiltinExpr()
1754 Ops, "vshrn_n", 1, true); in EmitARMBuiltinExpr()
1757 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1758 Ops[1] = EmitNeonShiftVector(Ops[1], Ty, false); in EmitARMBuiltinExpr()
1760 return Builder.CreateLShr(Ops[0], Ops[1], "vshr_n"); in EmitARMBuiltinExpr()
1762 return Builder.CreateAShr(Ops[0], Ops[1], "vshr_n"); in EmitARMBuiltinExpr()
1768 Ops[2] = EmitNeonShiftVector(Ops[2], Ty, rightShift); in EmitARMBuiltinExpr()
1770 Ops, "vsli_n"); in EmitARMBuiltinExpr()
1773 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1774 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1775 Ops[2] = EmitNeonShiftVector(Ops[2], Ty, false); in EmitARMBuiltinExpr()
1777 Ops[1] = Builder.CreateLShr(Ops[1], Ops[2], "vsra_n"); in EmitARMBuiltinExpr()
1779 Ops[1] = Builder.CreateAShr(Ops[1], Ops[2], "vsra_n"); in EmitARMBuiltinExpr()
1780 return Builder.CreateAdd(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1783 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1785 Ops, ""); in EmitARMBuiltinExpr()
1788 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1789 Ops[1] = Builder.CreateExtractElement(Ops[1], Ops[2]); in EmitARMBuiltinExpr()
1790 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1791 return Builder.CreateStore(Ops[1], Builder.CreateBitCast(Ops[0], Ty)); in EmitARMBuiltinExpr()
1794 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1796 Ops, ""); in EmitARMBuiltinExpr()
1799 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1801 Ops, ""); in EmitARMBuiltinExpr()
1804 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1806 Ops, ""); in EmitARMBuiltinExpr()
1809 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1811 Ops, ""); in EmitARMBuiltinExpr()
1814 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1816 Ops, ""); in EmitARMBuiltinExpr()
1819 Ops.push_back(GetPointeeAlignment(*this, E->getArg(0))); in EmitARMBuiltinExpr()
1821 Ops, ""); in EmitARMBuiltinExpr()
1824 Ops, "vsubhn"); in EmitARMBuiltinExpr()
1827 Ops, "vtbl1"); in EmitARMBuiltinExpr()
1830 Ops, "vtbl2"); in EmitARMBuiltinExpr()
1833 Ops, "vtbl3"); in EmitARMBuiltinExpr()
1836 Ops, "vtbl4"); in EmitARMBuiltinExpr()
1839 Ops, "vtbx1"); in EmitARMBuiltinExpr()
1842 Ops, "vtbx2"); in EmitARMBuiltinExpr()
1845 Ops, "vtbx3"); in EmitARMBuiltinExpr()
1848 Ops, "vtbx4"); in EmitARMBuiltinExpr()
1851 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1852 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1853 Ops[0] = Builder.CreateAnd(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1854 Ops[0] = Builder.CreateICmp(ICmpInst::ICMP_NE, Ops[0], in EmitARMBuiltinExpr()
1856 return Builder.CreateSExt(Ops[0], Ty, "vtst"); in EmitARMBuiltinExpr()
1860 Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(Ty)); in EmitARMBuiltinExpr()
1861 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1862 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1871 Value *Addr = Builder.CreateConstInBoundsGEP1_32(Ops[0], vi); in EmitARMBuiltinExpr()
1873 SV = Builder.CreateShuffleVector(Ops[1], Ops[2], SV, "vtrn"); in EmitARMBuiltinExpr()
1880 Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(Ty)); in EmitARMBuiltinExpr()
1881 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1882 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1890 Value *Addr = Builder.CreateConstInBoundsGEP1_32(Ops[0], vi); in EmitARMBuiltinExpr()
1892 SV = Builder.CreateShuffleVector(Ops[1], Ops[2], SV, "vuzp"); in EmitARMBuiltinExpr()
1899 Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(Ty)); in EmitARMBuiltinExpr()
1900 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1901 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1910 Value *Addr = Builder.CreateConstInBoundsGEP1_32(Ops[0], vi); in EmitARMBuiltinExpr()
1912 SV = Builder.CreateShuffleVector(Ops[1], Ops[2], SV, "vzip"); in EmitARMBuiltinExpr()
1921 BuildVector(const llvm::SmallVectorImpl<llvm::Value*> &Ops) { in BuildVector() argument
1922 assert((Ops.size() & (Ops.size() - 1)) == 0 && in BuildVector()
1925 for (unsigned i = 0, e = Ops.size(); i != e && AllConstants; ++i) in BuildVector()
1926 AllConstants &= isa<Constant>(Ops[i]); in BuildVector()
1931 for (unsigned i = 0, e = Ops.size(); i != e; ++i) in BuildVector()
1932 CstOps.push_back(cast<Constant>(Ops[i])); in BuildVector()
1938 llvm::UndefValue::get(llvm::VectorType::get(Ops[0]->getType(), Ops.size())); in BuildVector()
1940 for (unsigned i = 0, e = Ops.size(); i != e; ++i) in BuildVector()
1941 Result = Builder.CreateInsertElement(Result, Ops[i], in BuildVector()
1949 llvm::SmallVector<Value*, 4> Ops; in EmitX86BuiltinExpr() local
1960 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitX86BuiltinExpr()
1969 Ops.push_back(llvm::ConstantInt::get(getLLVMContext(), Result)); in EmitX86BuiltinExpr()
1982 Ops[1] = Builder.CreateZExt(Ops[1], Int64Ty, "zext"); in EmitX86BuiltinExpr()
1985 Ops[1] = Builder.CreateInsertElement(llvm::UndefValue::get(Ty), in EmitX86BuiltinExpr()
1986 Ops[1], Zero, "insert"); in EmitX86BuiltinExpr()
1987 Ops[1] = Builder.CreateBitCast(Ops[1], Ops[0]->getType(), "bitcast"); in EmitX86BuiltinExpr()
2027 return Builder.CreateCall(F, Ops, name); in EmitX86BuiltinExpr()
2032 return Builder.CreateBitCast(BuildVector(Ops), in EmitX86BuiltinExpr()
2035 return Builder.CreateExtractElement(Ops[0], in EmitX86BuiltinExpr()
2036 llvm::ConstantInt::get(Ops[1]->getType(), 0)); in EmitX86BuiltinExpr()
2045 Ops[1] = Builder.CreateZExt(Ops[1], Int64Ty, "zext"); in EmitX86BuiltinExpr()
2047 Ops[1] = Builder.CreateBitCast(Ops[1], Ty, "bitcast"); in EmitX86BuiltinExpr()
2087 return Builder.CreateCall(F, Ops, name); in EmitX86BuiltinExpr()
2091 return Builder.CreateCall(F, Ops, "cmpps"); in EmitX86BuiltinExpr()
2095 return Builder.CreateCall(F, Ops, "cmpss"); in EmitX86BuiltinExpr()
2101 Builder.CreateStore(Ops[0], Tmp); in EmitX86BuiltinExpr()
2115 return Builder.CreateCall(F, Ops, "cmppd"); in EmitX86BuiltinExpr()
2119 return Builder.CreateCall(F, Ops, "cmpsd"); in EmitX86BuiltinExpr()
2127 Ops[1] = Builder.CreateBitCast(Ops[1], VecTy, "cast"); in EmitX86BuiltinExpr()
2132 Ops[1] = Builder.CreateExtractElement(Ops[1], Idx, "extract"); in EmitX86BuiltinExpr()
2135 Ops[0] = Builder.CreateBitCast(Ops[0], PtrTy); in EmitX86BuiltinExpr()
2136 return Builder.CreateStore(Ops[1], Ops[0]); in EmitX86BuiltinExpr()
2139 unsigned shiftVal = cast<llvm::ConstantInt>(Ops[2])->getZExtValue(); in EmitX86BuiltinExpr()
2149 return Builder.CreateShuffleVector(Ops[1], Ops[0], SV, "palignr"); in EmitX86BuiltinExpr()
2158 Ops[0] = Builder.CreateBitCast(Ops[0], VecTy, "cast"); in EmitX86BuiltinExpr()
2159 Ops[1] = llvm::ConstantInt::get(VecTy, (shiftVal-8) * 8); in EmitX86BuiltinExpr()
2163 return Builder.CreateCall(F, makeArrayRef(&Ops[0], 2), "palignr"); in EmitX86BuiltinExpr()
2170 unsigned shiftVal = cast<llvm::ConstantInt>(Ops[2])->getZExtValue(); in EmitX86BuiltinExpr()
2180 return Builder.CreateShuffleVector(Ops[1], Ops[0], SV, "palignr"); in EmitX86BuiltinExpr()
2188 Ops[0] = Builder.CreateBitCast(Ops[0], VecTy, "cast"); in EmitX86BuiltinExpr()
2189 Ops[1] = llvm::ConstantInt::get(Int32Ty, (shiftVal-16) * 8); in EmitX86BuiltinExpr()
2193 return Builder.CreateCall(F, makeArrayRef(&Ops[0], 2), "palignr"); in EmitX86BuiltinExpr()
2207 Value *BC = Builder.CreateBitCast(Ops[0], in EmitX86BuiltinExpr()
2208 llvm::PointerType::getUnqual(Ops[1]->getType()), in EmitX86BuiltinExpr()
2210 StoreInst *SI = Builder.CreateStore(Ops[1], BC); in EmitX86BuiltinExpr()
2345 return Builder.CreateCall(F, Ops, name); in EmitX86BuiltinExpr()
2352 llvm::SmallVector<Value*, 4> Ops; in EmitPPCBuiltinExpr() local
2355 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitPPCBuiltinExpr()
2371 Ops[1] = Builder.CreateBitCast(Ops[1], Int8PtrTy); in EmitPPCBuiltinExpr()
2373 Ops[0] = Builder.CreateGEP(Ops[1], Ops[0], "tmp"); in EmitPPCBuiltinExpr()
2374 Ops.pop_back(); in EmitPPCBuiltinExpr()
2401 return Builder.CreateCall(F, Ops, ""); in EmitPPCBuiltinExpr()
2411 Ops[2] = Builder.CreateBitCast(Ops[2], Int8PtrTy); in EmitPPCBuiltinExpr()
2412 Ops[1] = Builder.CreateGEP(Ops[2], Ops[1], "tmp"); in EmitPPCBuiltinExpr()
2413 Ops.pop_back(); in EmitPPCBuiltinExpr()
2434 return Builder.CreateCall(F, Ops, ""); in EmitPPCBuiltinExpr()