reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
3213 srcLV = CGF.EmitLValue(lvExpr); 3217 Address srcAddr = CGF.EmitPointerWithAlignment(CRE->getSubExpr()); 3221 srcLV = CGF.MakeAddrLValue(srcAddr, srcAddrType); 3229 cast<llvm::PointerType>(CGF.ConvertType(CRE->getType())); 3239 Address temp = CGF.CreateTempAlloca(destType->getElementType(), 3240 CGF.getPointerAlign(), 3246 CodeGenFunction::ConditionalEvaluation condEval(CGF); 3254 CGF.Builder.CreateStore(null, temp); 3264 CGF.CGM.getDataLayout()); 3269 CGF.Builder.CreateIsNull(srcAddr.getPointer(), "icr.isnull"); 3271 finalArgument = CGF.Builder.CreateSelect(isNull, 3278 originBB = CGF.Builder.GetInsertBlock(); 3279 contBB = CGF.createBasicBlock("icr.cont"); 3280 llvm::BasicBlock *copyBB = CGF.createBasicBlock("icr.copy"); 3281 CGF.Builder.CreateCondBr(isNull, contBB, copyBB); 3282 CGF.EmitBlock(copyBB); 3283 condEval.begin(CGF); 3291 RValue srcRV = CGF.EmitLoadOfLValue(srcLV, SourceLocation()); 3295 src = CGF.Builder.CreateBitCast(src, destType->getElementType(), 3299 CGF.Builder.CreateStore(src, temp); 3306 if (CGF.CGM.getCodeGenOpts().OptimizationLevel != 0 && 3314 llvm::BasicBlock *copyBB = CGF.Builder.GetInsertBlock(); 3315 CGF.EmitBlock(contBB); 3319 llvm::PHINode *phiToUse = CGF.Builder.CreatePHI(valueToUse->getType(), 2, 3327 condEval.end(CGF);