Lines Matching full:dtor
246 void CodeGenModule::EmitCXXDestructor(const CXXDestructorDecl *dtor,
251 !dtor->getParent()->getNumVBases() &&
252 !TryEmitDefinitionAsAlias(GlobalDecl(dtor, Dtor_Complete),
253 GlobalDecl(dtor, Dtor_Base)))
260 if (dtorType == Dtor_Base && !TryEmitBaseDestructorAsAlias(dtor))
263 const CGFunctionInfo &fnInfo = getTypes().getFunctionInfo(dtor, dtorType);
266 cast<llvm::Function>(GetAddrOfCXXDestructor(dtor, dtorType, &fnInfo));
267 setFunctionLinkage(dtor, fn);
269 CodeGenFunction(*this).GenerateCode(GlobalDecl(dtor, dtorType), fn, fnInfo);
271 SetFunctionDefinitionAttributes(dtor, fn);
272 SetLLVMFunctionAttributesForDefinition(dtor, fn);
276 CodeGenModule::GetAddrOfCXXDestructor(const CXXDestructorDecl *dtor,
279 GlobalDecl GD(dtor, dtorType);
285 if (!fnInfo) fnInfo = &getTypes().getFunctionInfo(dtor, dtorType);
357 // FIXME. Dtor_Base dtor is always direct!!