reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/CodeGen/CGBuiltin.cpp
 6384         Ops.push_back(PtrOp0.getPointer());
 6411         Ops.push_back(PtrOp1.getPointer());
 6417       Ops.push_back(EmitScalarExpr(E->getArg(i)));
 6424       Ops.push_back(llvm::ConstantInt::get(getLLVMContext(), Result));
 6441     return Builder.CreateExtractElement(Ops[0], Ops[1], "vget_lane");
 6441     return Builder.CreateExtractElement(Ops[0], Ops[1], "vget_lane");
 6459     return Builder.CreateInsertElement(Ops[1], Ops[0], Ops[2], "vset_lane");
 6459     return Builder.CreateInsertElement(Ops[1], Ops[0], Ops[2], "vset_lane");
 6459     return Builder.CreateInsertElement(Ops[1], Ops[0], Ops[2], "vset_lane");
 6462     return EmitNeonCall(CGM.getIntrinsic(Intrinsic::arm_neon_sha1h), Ops,
 6465     return EmitNeonCall(CGM.getIntrinsic(Intrinsic::arm_neon_sha1c), Ops,
 6468     return EmitNeonCall(CGM.getIntrinsic(Intrinsic::arm_neon_sha1p), Ops,
 6471     return EmitNeonCall(CGM.getIntrinsic(Intrinsic::arm_neon_sha1m), Ops,
 6480     return Builder.CreateCall(F, {Ops[1], Ops[2], Ops[0],
 6480     return Builder.CreateCall(F, {Ops[1], Ops[2], Ops[0],
 6480     return Builder.CreateCall(F, {Ops[1], Ops[2], Ops[0],
 6481                                   Ops[3], Ops[4], Ops[5]});
 6481                                   Ops[3], Ops[4], Ops[5]});
 6481                                   Ops[3], Ops[4], Ops[5]});
 6644     return Builder.CreateCall(F, Ops, "vcvtr");
 6666         Builtin->NameHint, Builtin->TypeModifier, E, Ops, PtrOp0, PtrOp1, Arch);
 6676       Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6676       Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6677       uint32_t Lane = cast<ConstantInt>(Ops[2])->getZExtValue();
 6679       Ops[1] = Builder.CreateShuffleVector(Ops[1], Ops[1], SV);
 6679       Ops[1] = Builder.CreateShuffleVector(Ops[1], Ops[1], SV);
 6679       Ops[1] = Builder.CreateShuffleVector(Ops[1], Ops[1], SV);
 6685       Value *Ld = Builder.CreateCall(F, {Ops[0], Align});
 6689       return Builder.CreateShuffleVector(Ops[1], Ld, SV, "vld1q_lane");
 6693     Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6693     Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6696     return Builder.CreateInsertElement(Ops[1], Ld, Ops[2], "vld1_lane");
 6696     return Builder.CreateInsertElement(Ops[1], Ld, Ops[2], "vld1_lane");
 6701     return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqrshrn_n",
 6705                         Ops, "vqrshrun_n", 1, true);
 6708     return EmitNeonCall(CGM.getIntrinsic(Int, Ty), Ops, "vqshrn_n",
 6712                         Ops, "vqshrun_n", 1, true);
 6716                         Ops, "vrecpe");
 6719                         Ops, "vrshrn_n", 1, true);
 6722     Ops[0] = Builder.CreateBitCast(Ops[0], Ty);
 6722     Ops[0] = Builder.CreateBitCast(Ops[0], Ty);
 6723     Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6723     Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6724     Ops[2] = EmitNeonShiftVector(Ops[2], Ty, true);
 6724     Ops[2] = EmitNeonShiftVector(Ops[2], Ty, true);
 6726     Ops[1] = Builder.CreateCall(CGM.getIntrinsic(Int, Ty), {Ops[1], Ops[2]});
 6726     Ops[1] = Builder.CreateCall(CGM.getIntrinsic(Int, Ty), {Ops[1], Ops[2]});
 6726     Ops[1] = Builder.CreateCall(CGM.getIntrinsic(Int, Ty), {Ops[1], Ops[2]});
 6727     return Builder.CreateAdd(Ops[0], Ops[1], "vrsra_n");
 6727     return Builder.CreateAdd(Ops[0], Ops[1], "vrsra_n");
 6734     Ops[2] = EmitNeonShiftVector(Ops[2], Ty, rightShift);
 6734     Ops[2] = EmitNeonShiftVector(Ops[2], Ty, rightShift);
 6736                         Ops, "vsli_n");
 6739     Ops[0] = Builder.CreateBitCast(Ops[0], Ty);
 6739     Ops[0] = Builder.CreateBitCast(Ops[0], Ty);
 6740     Ops[1] = EmitNeonRShiftImm(Ops[1], Ops[2], Ty, usgn, "vsra_n");
 6740     Ops[1] = EmitNeonRShiftImm(Ops[1], Ops[2], Ty, usgn, "vsra_n");
 6740     Ops[1] = EmitNeonRShiftImm(Ops[1], Ops[2], Ty, usgn, "vsra_n");
 6741     return Builder.CreateAdd(Ops[0], Ops[1]);
 6741     return Builder.CreateAdd(Ops[0], Ops[1]);
 6746       Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6746       Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6747       Value *SV = llvm::ConstantVector::get(cast<llvm::Constant>(Ops[2]));
 6748       Ops[1] = Builder.CreateShuffleVector(Ops[1], Ops[1], SV);
 6748       Ops[1] = Builder.CreateShuffleVector(Ops[1], Ops[1], SV);
 6748       Ops[1] = Builder.CreateShuffleVector(Ops[1], Ops[1], SV);
 6749       Ops[2] = getAlignmentValue32(PtrOp0);
 6750       llvm::Type *Tys[] = {Int8PtrTy, Ops[1]->getType()};
 6752                                                  Tys), Ops);
 6756     Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6756     Ops[1] = Builder.CreateBitCast(Ops[1], Ty);
 6757     Ops[1] = Builder.CreateExtractElement(Ops[1], Ops[2]);
 6757     Ops[1] = Builder.CreateExtractElement(Ops[1], Ops[2]);
 6757     Ops[1] = Builder.CreateExtractElement(Ops[1], Ops[2]);
 6758     Ty = llvm::PointerType::getUnqual(Ops[1]->getType());
 6759     auto St = Builder.CreateStore(Ops[1], Builder.CreateBitCast(PtrOp0, Ty));
 6764                         Ops, "vtbl1");
 6767                         Ops, "vtbl2");
 6770                         Ops, "vtbl3");
 6773                         Ops, "vtbl4");
 6776                         Ops, "vtbx1");
 6779                         Ops, "vtbx2");
 6782                         Ops, "vtbx3");
 6785                         Ops, "vtbx4");