reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
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);