Lines Matching refs:Ops
1413 Value *CodeGenFunction::EmitNeonCall(Function *F, SmallVectorImpl<Value*> &Ops, in EmitNeonCall() argument
1420 Ops[j] = EmitNeonShiftVector(Ops[j], ai->getType(), rightshift); in EmitNeonCall()
1422 Ops[j] = Builder.CreateBitCast(Ops[j], ai->getType(), name); in EmitNeonCall()
1424 return Builder.CreateCall(F, Ops, name); in EmitNeonCall()
1475 SmallVector<Value*, 2> Ops; in EmitARMBuiltinExpr() local
1477 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitARMBuiltinExpr()
1481 return Builder.CreateCall(CGM.CreateRuntimeFunction(FTy, Name), Ops); in EmitARMBuiltinExpr()
1518 SmallVector<Value*, 4> Ops; in EmitARMBuiltinExpr() local
1520 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitARMBuiltinExpr()
1536 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitARMBuiltinExpr()
1548 Ops.push_back(EmitScalarExpr(E->getArg(2))); in EmitARMBuiltinExpr()
1549 return Builder.CreateInsertElement(Ops[1], Ops[0], Ops[2], "vset_lane"); in EmitARMBuiltinExpr()
1573 return Builder.CreateCall(F, Ops, "vcvtr"); in EmitARMBuiltinExpr()
1593 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vabd"); in EmitARMBuiltinExpr()
1597 Ops, "vabs"); in EmitARMBuiltinExpr()
1600 Ops, "vaddhn"); in EmitARMBuiltinExpr()
1602 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1605 return EmitNeonCall(F, Ops, "vcage"); in EmitARMBuiltinExpr()
1608 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1611 return EmitNeonCall(F, Ops, "vcage"); in EmitARMBuiltinExpr()
1614 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1617 return EmitNeonCall(F, Ops, "vcagt"); in EmitARMBuiltinExpr()
1620 std::swap(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
1623 return EmitNeonCall(F, Ops, "vcagt"); in EmitARMBuiltinExpr()
1628 return EmitNeonCall(F, Ops, "vcls"); in EmitARMBuiltinExpr()
1633 return EmitNeonCall(F, Ops, "vclz"); in EmitARMBuiltinExpr()
1638 return EmitNeonCall(F, Ops, "vcnt"); in EmitARMBuiltinExpr()
1644 return EmitNeonCall(F, Ops, "vcvt"); in EmitARMBuiltinExpr()
1650 return EmitNeonCall(F, Ops, "vcvt"); in EmitARMBuiltinExpr()
1654 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1656 return usgn ? Builder.CreateUIToFP(Ops[0], Ty, "vcvt") in EmitARMBuiltinExpr()
1657 : Builder.CreateSIToFP(Ops[0], Ty, "vcvt"); in EmitARMBuiltinExpr()
1664 Ops[0] = Builder.CreateBitCast(Ops[0], FloatTy); in EmitARMBuiltinExpr()
1665 return usgn ? Builder.CreateFPToUI(Ops[0], Ty, "vcvt") in EmitARMBuiltinExpr()
1666 : Builder.CreateFPToSI(Ops[0], Ty, "vcvt"); in EmitARMBuiltinExpr()
1676 return EmitNeonCall(F, Ops, "vcvt_n"); in EmitARMBuiltinExpr()
1688 return EmitNeonCall(F, Ops, "vcvt_n"); in EmitARMBuiltinExpr()
1692 int CV = cast<ConstantInt>(Ops[2])->getSExtValue(); in EmitARMBuiltinExpr()
1697 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1698 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1700 return Builder.CreateShuffleVector(Ops[0], Ops[1], SV, "vext"); in EmitARMBuiltinExpr()
1705 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vhadd"); in EmitARMBuiltinExpr()
1709 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vhsub"); in EmitARMBuiltinExpr()
1712 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
1714 Ops, "vld1"); in EmitARMBuiltinExpr()
1717 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
1719 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1720 LoadInst *Ld = Builder.CreateLoad(Ops[0]); in EmitARMBuiltinExpr()
1723 return Builder.CreateInsertElement(Ops[1], Ld, Ops[2], "vld1_lane"); in EmitARMBuiltinExpr()
1729 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1730 LoadInst *Ld = Builder.CreateLoad(Ops[0]); in EmitARMBuiltinExpr()
1734 Ops[0] = Builder.CreateInsertElement(V, Ld, CI); in EmitARMBuiltinExpr()
1735 return EmitNeonSplat(Ops[0], CI); in EmitARMBuiltinExpr()
1741 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld2"); in EmitARMBuiltinExpr()
1742 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1743 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1744 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1750 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld3"); in EmitARMBuiltinExpr()
1751 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1752 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1753 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1759 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld4"); in EmitARMBuiltinExpr()
1760 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1761 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1762 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1767 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1768 Ops[3] = Builder.CreateBitCast(Ops[3], Ty); in EmitARMBuiltinExpr()
1769 Ops.push_back(GetPointeeAlignmentValue(E->getArg(1))); in EmitARMBuiltinExpr()
1770 Ops[1] = Builder.CreateCall(F, makeArrayRef(Ops).slice(1), "vld2_lane"); in EmitARMBuiltinExpr()
1771 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1772 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1773 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1778 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1779 Ops[3] = Builder.CreateBitCast(Ops[3], Ty); in EmitARMBuiltinExpr()
1780 Ops[4] = Builder.CreateBitCast(Ops[4], Ty); in EmitARMBuiltinExpr()
1781 Ops.push_back(GetPointeeAlignmentValue(E->getArg(1))); in EmitARMBuiltinExpr()
1782 Ops[1] = Builder.CreateCall(F, makeArrayRef(Ops).slice(1), "vld3_lane"); in EmitARMBuiltinExpr()
1783 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1784 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1785 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1790 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
1791 Ops[3] = Builder.CreateBitCast(Ops[3], Ty); in EmitARMBuiltinExpr()
1792 Ops[4] = Builder.CreateBitCast(Ops[4], Ty); in EmitARMBuiltinExpr()
1793 Ops[5] = Builder.CreateBitCast(Ops[5], Ty); in EmitARMBuiltinExpr()
1794 Ops.push_back(GetPointeeAlignmentValue(E->getArg(1))); in EmitARMBuiltinExpr()
1795 Ops[1] = Builder.CreateCall(F, makeArrayRef(Ops).slice(1), "vld3_lane"); in EmitARMBuiltinExpr()
1796 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1797 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1798 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1819 Ops[1] = Builder.CreateCall2(F, Ops[1], Align, "vld_dup"); in EmitARMBuiltinExpr()
1820 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1821 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1822 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1840 Args.push_back(Ops[1]); in EmitARMBuiltinExpr()
1847 Ops[1] = Builder.CreateCall(F, Args, "vld_dup"); in EmitARMBuiltinExpr()
1850 Value *Val = Builder.CreateExtractValue(Ops[1], i); in EmitARMBuiltinExpr()
1854 Ops[1] = Builder.CreateInsertValue(Ops[1], Elt, i); in EmitARMBuiltinExpr()
1856 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
1857 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
1858 return Builder.CreateStore(Ops[1], Ops[0]); in EmitARMBuiltinExpr()
1863 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vmax"); in EmitARMBuiltinExpr()
1867 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vmin"); in EmitARMBuiltinExpr()
1870 Ops[0] = Builder.CreateBitCast(Ops[0], DTy); in EmitARMBuiltinExpr()
1872 return Builder.CreateZExt(Ops[0], Ty, "vmovl"); in EmitARMBuiltinExpr()
1873 return Builder.CreateSExt(Ops[0], Ty, "vmovl"); in EmitARMBuiltinExpr()
1877 Ops[0] = Builder.CreateBitCast(Ops[0], QTy); in EmitARMBuiltinExpr()
1878 return Builder.CreateTrunc(Ops[0], Ty, "vmovn"); in EmitARMBuiltinExpr()
1884 Ops, "vmul"); in EmitARMBuiltinExpr()
1888 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vmull"); in EmitARMBuiltinExpr()
1899 return EmitNeonCall(CGM.getIntrinsic(Int, Tys), Ops, "vpadal"); in EmitARMBuiltinExpr()
1903 Ops, "vpadd"); in EmitARMBuiltinExpr()
1913 return EmitNeonCall(CGM.getIntrinsic(Int, Tys), Ops, "vpaddl"); in EmitARMBuiltinExpr()
1917 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vpmax"); in EmitARMBuiltinExpr()
1920 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vpmin"); in EmitARMBuiltinExpr()
1924 Ops, "vqabs"); in EmitARMBuiltinExpr()
1928 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqadd"); in EmitARMBuiltinExpr()
1931 Ops, "vqdmlal"); in EmitARMBuiltinExpr()
1934 Ops, "vqdmlsl"); in EmitARMBuiltinExpr()
1938 Ops, "vqdmulh"); in EmitARMBuiltinExpr()
1941 Ops, "vqdmull"); in EmitARMBuiltinExpr()
1944 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqmovn"); in EmitARMBuiltinExpr()
1947 Ops, "vqdmull"); in EmitARMBuiltinExpr()
1951 Ops, "vqneg"); in EmitARMBuiltinExpr()
1955 Ops, "vqrdmulh"); in EmitARMBuiltinExpr()
1959 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqrshl"); in EmitARMBuiltinExpr()
1962 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqrshrn_n", in EmitARMBuiltinExpr()
1966 Ops, "vqrshrun_n", 1, true); in EmitARMBuiltinExpr()
1970 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqshl"); in EmitARMBuiltinExpr()
1974 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqshl_n", in EmitARMBuiltinExpr()
1979 Ops, "vqshlu", 1, false); in EmitARMBuiltinExpr()
1982 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqshrn_n", in EmitARMBuiltinExpr()
1986 Ops, "vqshrun_n", 1, true); in EmitARMBuiltinExpr()
1990 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqsub"); in EmitARMBuiltinExpr()
1993 Ops, "vraddhn"); in EmitARMBuiltinExpr()
1997 Ops, "vrecpe"); in EmitARMBuiltinExpr()
2001 Ops, "vrecps"); in EmitARMBuiltinExpr()
2005 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vrhadd"); in EmitARMBuiltinExpr()
2009 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vrshl"); in EmitARMBuiltinExpr()
2012 Ops, "vrshrn_n", 1, true); in EmitARMBuiltinExpr()
2016 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vrshr_n", 1, true); in EmitARMBuiltinExpr()
2020 Ops, "vrsqrte"); in EmitARMBuiltinExpr()
2024 Ops, "vrsqrts"); in EmitARMBuiltinExpr()
2027 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
2028 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
2029 Ops[2] = EmitNeonShiftVector(Ops[2], Ty, true); in EmitARMBuiltinExpr()
2031 Ops[1] = Builder.CreateCall2(CGM.getIntrinsic(Int, Ty), Ops[1], Ops[2]); in EmitARMBuiltinExpr()
2032 return Builder.CreateAdd(Ops[0], Ops[1], "vrsra_n"); in EmitARMBuiltinExpr()
2035 Ops, "vrsubhn"); in EmitARMBuiltinExpr()
2039 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vshl"); in EmitARMBuiltinExpr()
2042 return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vshll", 1); in EmitARMBuiltinExpr()
2045 Ops[1] = EmitNeonShiftVector(Ops[1], Ty, false); in EmitARMBuiltinExpr()
2046 return Builder.CreateShl(Builder.CreateBitCast(Ops[0],Ty), Ops[1], "vshl_n"); in EmitARMBuiltinExpr()
2049 Ops, "vshrn_n", 1, true); in EmitARMBuiltinExpr()
2052 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
2053 Ops[1] = EmitNeonShiftVector(Ops[1], Ty, false); in EmitARMBuiltinExpr()
2055 return Builder.CreateLShr(Ops[0], Ops[1], "vshr_n"); in EmitARMBuiltinExpr()
2057 return Builder.CreateAShr(Ops[0], Ops[1], "vshr_n"); in EmitARMBuiltinExpr()
2063 Ops[2] = EmitNeonShiftVector(Ops[2], Ty, rightShift); in EmitARMBuiltinExpr()
2065 Ops, "vsli_n"); in EmitARMBuiltinExpr()
2068 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
2069 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
2070 Ops[2] = EmitNeonShiftVector(Ops[2], Ty, false); in EmitARMBuiltinExpr()
2072 Ops[1] = Builder.CreateLShr(Ops[1], Ops[2], "vsra_n"); in EmitARMBuiltinExpr()
2074 Ops[1] = Builder.CreateAShr(Ops[1], Ops[2], "vsra_n"); in EmitARMBuiltinExpr()
2075 return Builder.CreateAdd(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
2078 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
2080 Ops, ""); in EmitARMBuiltinExpr()
2083 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
2084 Ops[1] = Builder.CreateExtractElement(Ops[1], Ops[2]); in EmitARMBuiltinExpr()
2085 Ty = llvm::PointerType::getUnqual(Ops[1]->getType()); in EmitARMBuiltinExpr()
2086 StoreInst *St = Builder.CreateStore(Ops[1], in EmitARMBuiltinExpr()
2087 Builder.CreateBitCast(Ops[0], Ty)); in EmitARMBuiltinExpr()
2094 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
2096 Ops, ""); in EmitARMBuiltinExpr()
2099 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
2101 Ops, ""); in EmitARMBuiltinExpr()
2104 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
2106 Ops, ""); in EmitARMBuiltinExpr()
2109 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
2111 Ops, ""); in EmitARMBuiltinExpr()
2114 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
2116 Ops, ""); in EmitARMBuiltinExpr()
2119 Ops.push_back(GetPointeeAlignmentValue(E->getArg(0))); in EmitARMBuiltinExpr()
2121 Ops, ""); in EmitARMBuiltinExpr()
2124 Ops, "vsubhn"); in EmitARMBuiltinExpr()
2127 Ops, "vtbl1"); in EmitARMBuiltinExpr()
2130 Ops, "vtbl2"); in EmitARMBuiltinExpr()
2133 Ops, "vtbl3"); in EmitARMBuiltinExpr()
2136 Ops, "vtbl4"); in EmitARMBuiltinExpr()
2139 Ops, "vtbx1"); in EmitARMBuiltinExpr()
2142 Ops, "vtbx2"); in EmitARMBuiltinExpr()
2145 Ops, "vtbx3"); in EmitARMBuiltinExpr()
2148 Ops, "vtbx4"); in EmitARMBuiltinExpr()
2151 Ops[0] = Builder.CreateBitCast(Ops[0], Ty); in EmitARMBuiltinExpr()
2152 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
2153 Ops[0] = Builder.CreateAnd(Ops[0], Ops[1]); in EmitARMBuiltinExpr()
2154 Ops[0] = Builder.CreateICmp(ICmpInst::ICMP_NE, Ops[0], in EmitARMBuiltinExpr()
2156 return Builder.CreateSExt(Ops[0], Ty, "vtst"); in EmitARMBuiltinExpr()
2160 Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(Ty)); in EmitARMBuiltinExpr()
2161 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
2162 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
2171 Value *Addr = Builder.CreateConstInBoundsGEP1_32(Ops[0], vi); in EmitARMBuiltinExpr()
2173 SV = Builder.CreateShuffleVector(Ops[1], Ops[2], SV, "vtrn"); in EmitARMBuiltinExpr()
2180 Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(Ty)); in EmitARMBuiltinExpr()
2181 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
2182 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
2190 Value *Addr = Builder.CreateConstInBoundsGEP1_32(Ops[0], vi); in EmitARMBuiltinExpr()
2192 SV = Builder.CreateShuffleVector(Ops[1], Ops[2], SV, "vuzp"); in EmitARMBuiltinExpr()
2199 Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(Ty)); in EmitARMBuiltinExpr()
2200 Ops[1] = Builder.CreateBitCast(Ops[1], Ty); in EmitARMBuiltinExpr()
2201 Ops[2] = Builder.CreateBitCast(Ops[2], Ty); in EmitARMBuiltinExpr()
2210 Value *Addr = Builder.CreateConstInBoundsGEP1_32(Ops[0], vi); in EmitARMBuiltinExpr()
2212 SV = Builder.CreateShuffleVector(Ops[1], Ops[2], SV, "vzip"); in EmitARMBuiltinExpr()
2221 BuildVector(ArrayRef<llvm::Value*> Ops) { in BuildVector() argument
2222 assert((Ops.size() & (Ops.size() - 1)) == 0 && in BuildVector()
2225 for (unsigned i = 0, e = Ops.size(); i != e && AllConstants; ++i) in BuildVector()
2226 AllConstants &= isa<Constant>(Ops[i]); in BuildVector()
2231 for (unsigned i = 0, e = Ops.size(); i != e; ++i) in BuildVector()
2232 CstOps.push_back(cast<Constant>(Ops[i])); in BuildVector()
2238 llvm::UndefValue::get(llvm::VectorType::get(Ops[0]->getType(), Ops.size())); in BuildVector()
2240 for (unsigned i = 0, e = Ops.size(); i != e; ++i) in BuildVector()
2241 Result = Builder.CreateInsertElement(Result, Ops[i], Builder.getInt32(i)); in BuildVector()
2248 SmallVector<Value*, 4> Ops; in EmitX86BuiltinExpr() local
2259 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitX86BuiltinExpr()
2268 Ops.push_back(llvm::ConstantInt::get(getLLVMContext(), Result)); in EmitX86BuiltinExpr()
2276 return Builder.CreateBitCast(BuildVector(Ops), in EmitX86BuiltinExpr()
2279 return Builder.CreateExtractElement(Ops[0], in EmitX86BuiltinExpr()
2280 llvm::ConstantInt::get(Ops[1]->getType(), 0)); in EmitX86BuiltinExpr()
2285 Builder.CreateStore(Ops[0], Tmp); in EmitX86BuiltinExpr()
2303 Ops[1] = Builder.CreateBitCast(Ops[1], VecTy, "cast"); in EmitX86BuiltinExpr()
2308 Ops[1] = Builder.CreateExtractElement(Ops[1], Idx, "extract"); in EmitX86BuiltinExpr()
2311 Ops[0] = Builder.CreateBitCast(Ops[0], PtrTy); in EmitX86BuiltinExpr()
2312 return Builder.CreateStore(Ops[1], Ops[0]); in EmitX86BuiltinExpr()
2315 unsigned shiftVal = cast<llvm::ConstantInt>(Ops[2])->getZExtValue(); in EmitX86BuiltinExpr()
2325 return Builder.CreateShuffleVector(Ops[1], Ops[0], SV, "palignr"); in EmitX86BuiltinExpr()
2334 Ops[0] = Builder.CreateBitCast(Ops[0], VecTy, "cast"); in EmitX86BuiltinExpr()
2335 Ops[1] = llvm::ConstantInt::get(VecTy, (shiftVal-8) * 8); in EmitX86BuiltinExpr()
2339 return Builder.CreateCall(F, makeArrayRef(&Ops[0], 2), "palignr"); in EmitX86BuiltinExpr()
2346 unsigned shiftVal = cast<llvm::ConstantInt>(Ops[2])->getZExtValue(); in EmitX86BuiltinExpr()
2356 return Builder.CreateShuffleVector(Ops[1], Ops[0], SV, "palignr"); in EmitX86BuiltinExpr()
2364 Ops[0] = Builder.CreateBitCast(Ops[0], VecTy, "cast"); in EmitX86BuiltinExpr()
2365 Ops[1] = llvm::ConstantInt::get(Int32Ty, (shiftVal-16) * 8); in EmitX86BuiltinExpr()
2369 return Builder.CreateCall(F, makeArrayRef(&Ops[0], 2), "palignr"); in EmitX86BuiltinExpr()
2376 unsigned shiftVal = cast<llvm::ConstantInt>(Ops[2])->getZExtValue(); in EmitX86BuiltinExpr()
2394 return Builder.CreateShuffleVector(Ops[1], Ops[0], SV, "palignr"); in EmitX86BuiltinExpr()
2402 Ops[0] = Builder.CreateBitCast(Ops[0], VecTy, "cast"); in EmitX86BuiltinExpr()
2403 Ops[1] = llvm::ConstantInt::get(Int32Ty, (shiftVal-16) * 8); in EmitX86BuiltinExpr()
2407 return Builder.CreateCall(F, makeArrayRef(&Ops[0], 2), "palignr"); in EmitX86BuiltinExpr()
2421 Value *BC = Builder.CreateBitCast(Ops[0], in EmitX86BuiltinExpr()
2422 llvm::PointerType::getUnqual(Ops[1]->getType()), in EmitX86BuiltinExpr()
2424 StoreInst *SI = Builder.CreateStore(Ops[1], BC); in EmitX86BuiltinExpr()
2443 Ops[0] = Builder.CreateBitCast(Ops[0], MMXTy, "cast"); in EmitX86BuiltinExpr()
2445 return Builder.CreateCall(F, Ops, name); in EmitX86BuiltinExpr()
2453 llvm::SmallVector<Value*, 4> Ops; in EmitHexagonBuiltinExpr() local
2456 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitHexagonBuiltinExpr()
4434 return Builder.CreateCall(F, Ops, ""); in EmitHexagonBuiltinExpr()
4439 SmallVector<Value*, 4> Ops; in EmitPPCBuiltinExpr() local
4442 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitPPCBuiltinExpr()
4458 Ops[1] = Builder.CreateBitCast(Ops[1], Int8PtrTy); in EmitPPCBuiltinExpr()
4460 Ops[0] = Builder.CreateGEP(Ops[1], Ops[0]); in EmitPPCBuiltinExpr()
4461 Ops.pop_back(); in EmitPPCBuiltinExpr()
4488 return Builder.CreateCall(F, Ops, ""); in EmitPPCBuiltinExpr()
4498 Ops[2] = Builder.CreateBitCast(Ops[2], Int8PtrTy); in EmitPPCBuiltinExpr()
4499 Ops[1] = Builder.CreateGEP(Ops[2], Ops[1]); in EmitPPCBuiltinExpr()
4500 Ops.pop_back(); in EmitPPCBuiltinExpr()
4521 return Builder.CreateCall(F, Ops, ""); in EmitPPCBuiltinExpr()