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

References

tools/clang/lib/CodeGen/CGBuiltin.cpp
 6020     if (!E->getArg(0)->EvaluateAsInt(Result, CGM.getContext()))
 6036     Value *Option = EmitScalarExpr(E->getArg(0));
 6041     Value *Address = EmitScalarExpr(E->getArg(0));
 6042     Value *RW      = EmitScalarExpr(E->getArg(1));
 6043     Value *IsData  = EmitScalarExpr(E->getArg(2));
 6053     llvm::Value *Arg = EmitScalarExpr(E->getArg(0));
 6059     llvm::Value *Arg = EmitScalarExpr(E->getArg(0));
 6063     llvm::Value *Arg = EmitScalarExpr(E->getArg(0));
 6069     assert(E->getNumArgs() == 2 && "__clear_cache takes 2 arguments");
 6070     const FunctionDecl *FD = E->getDirectCallee();
 6073       Ops[i] = EmitScalarExpr(E->getArg(i));
 6101     Value *Coproc = EmitScalarExpr(E->getArg(0));
 6102     Value *Opc1 = EmitScalarExpr(E->getArg(1));
 6103     Value *RtAndRt2 = EmitScalarExpr(E->getArg(2));
 6104     Value *CRm = EmitScalarExpr(E->getArg(3));
 6128     Value *Coproc = EmitScalarExpr(E->getArg(0));
 6129     Value *Opc1 = EmitScalarExpr(E->getArg(1));
 6130     Value *CRm  = EmitScalarExpr(E->getArg(2));
 6145     return Builder.CreateBitCast(RtAndRt2, ConvertType(E->getType()));
 6151        getContext().getTypeSize(E->getType()) == 64) ||
 6167     Value *LdPtr = EmitScalarExpr(E->getArg(0));
 6179     return Builder.CreateBitCast(Val, ConvertType(E->getType()));
 6184     Value *LoadAddr = EmitScalarExpr(E->getArg(0));
 6186     QualType Ty = E->getType();
 6211        getContext().getTypeSize(E->getArg(0)->getType()) == 64)) {
 6217     Address Tmp = CreateMemTemp(E->getArg(0)->getType());
 6218     Value *Val = EmitScalarExpr(E->getArg(0));
 6226     Value *StPtr = Builder.CreateBitCast(EmitScalarExpr(E->getArg(1)), Int8PtrTy);
 6232     Value *StoreVal = EmitScalarExpr(E->getArg(0));
 6233     Value *StoreAddr = EmitScalarExpr(E->getArg(1));
 6235     QualType Ty = E->getArg(0)->getType();
 6282     Value *Arg0 = EmitScalarExpr(E->getArg(0));
 6283     Value *Arg1 = EmitScalarExpr(E->getArg(1));
 6333     return EmitSpecialRegisterBuiltin(*this, E, RegisterType, ValueType, IsRead);
 6337   if (Value *Result = EmitARMMVEBuiltinExpr(BuiltinID, E, ReturnValue, Arch))
 6355   unsigned NumArgs = E->getNumArgs() - (HasExtraArg ? 1 : 0);
 6383         PtrOp0 = EmitPointerWithAlignment(E->getArg(0));
 6410         PtrOp1 = EmitPointerWithAlignment(E->getArg(1));
 6417       Ops.push_back(EmitScalarExpr(E->getArg(i)));
 6422       bool IsConst = E->getArg(i)->isIntegerConstantExpr(Result, getContext());
 6444     Value *Arg = EmitScalarExpr(E->getArg(0));
 6485     return EmitMSVCBuiltinExpr(MSVCIntrin::_BitScanForward, E);
 6488     return EmitMSVCBuiltinExpr(MSVCIntrin::_BitScanReverse, E);
 6491     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedAnd, E);
 6493     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchange, E);
 6495     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchangeAdd, E);
 6497     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchangeSub, E);
 6499     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedOr, E);
 6501     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedXor, E);
 6503     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedDecrement, E);
 6505     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedIncrement, E);
 6510     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchangeAdd_acq, E);
 6515     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchangeAdd_rel, E);
 6520     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchangeAdd_nf, E);
 6525     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchange_acq, E);
 6530     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchange_rel, E);
 6535     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchange_nf, E);
 6540     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedCompareExchange_acq, E);
 6545     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedCompareExchange_rel, E);
 6550     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedCompareExchange_nf, E);
 6555     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedOr_acq, E);
 6560     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedOr_rel, E);
 6565     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedOr_nf, E);
 6570     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedXor_acq, E);
 6575     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedXor_rel, E);
 6580     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedXor_nf, E);
 6585     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedAnd_acq, E);
 6590     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedAnd_rel, E);
 6595     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedAnd_nf, E);
 6599     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedIncrement_acq, E);
 6603     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedIncrement_rel, E);
 6607     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedIncrement_nf, E);
 6611     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedDecrement_acq, E);
 6615     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedDecrement_rel, E);
 6619     return EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedDecrement_nf, E);
 6625   const Expr *Arg = E->getArg(E->getNumArgs()-1);
 6625   const Expr *Arg = E->getArg(E->getNumArgs()-1);
 6666         Builtin->NameHint, Builtin->TypeModifier, E, Ops, PtrOp0, PtrOp1, Arch);