Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:dtor

37   // Producing an alias to a base class ctor/dtor can degrade debug quality
248 void CodeGenModule::EmitCXXDestructor(const CXXDestructorDecl *dtor,
252 if (!dtor->getParent()->getNumVBases() &&
255 !TryEmitDefinitionAsAlias(GlobalDecl(dtor, Dtor_Complete),
256 GlobalDecl(dtor, Dtor_Base), true);
260 if (dtor->isVirtual())
261 getVTables().EmitThunks(GlobalDecl(dtor, Dtor_Complete));
269 if (dtorType == Dtor_Base && !TryEmitBaseDestructorAsAlias(dtor))
273 getTypes().arrangeCXXDestructor(dtor, dtorType);
276 GetAddrOfCXXDestructor(dtor, dtorType, &fnInfo, nullptr, true));
277 setFunctionLinkage(GlobalDecl(dtor, dtorType), fn);
279 CodeGenFunction(*this).GenerateCode(GlobalDecl(dtor, dtorType), fn, fnInfo);
281 setFunctionDefinitionAttributes(dtor, fn);
282 SetLLVMFunctionAttributesForDefinition(dtor, fn);
286 CodeGenModule::GetAddrOfCXXDestructor(const CXXDestructorDecl *dtor,
291 GlobalDecl GD(dtor, dtorType);
298 if (!fnInfo) fnInfo = &getTypes().arrangeCXXDestructor(dtor, dtorType);
358 // FIXME. Dtor_Base dtor is always direct!!