Home | History | Annotate | Download | only in CodeGen

Lines Matching full:ctor

47     // in many calling conventions, so only bail out if the ctor's
180 // We don't need to emit the complete ctor if the class is abstract.
189 void CodeGenModule::EmitCXXConstructor(const CXXConstructorDecl *ctor,
194 !ctor->getParent()->getNumVBases() &&
195 !TryEmitDefinitionAsAlias(GlobalDecl(ctor, Ctor_Complete),
196 GlobalDecl(ctor, Ctor_Base)))
199 const CGFunctionInfo &fnInfo = getTypes().getFunctionInfo(ctor, ctorType);
202 cast<llvm::Function>(GetAddrOfCXXConstructor(ctor, ctorType, &fnInfo));
203 setFunctionLinkage(ctor, fn);
205 CodeGenFunction(*this).GenerateCode(GlobalDecl(ctor, ctorType), fn, fnInfo);
207 SetFunctionDefinitionAttributes(ctor, fn);
208 SetLLVMFunctionAttributesForDefinition(ctor, fn);
212 CodeGenModule::GetAddrOfCXXConstructor(const CXXConstructorDecl *ctor,
215 GlobalDecl GD(ctor, ctorType);
221 if (!fnInfo) fnInfo = &getTypes().getFunctionInfo(ctor, ctorType);
223 const FunctionProtoType *proto = ctor->getType()->castAs<FunctionProtoType>();
240 // We don't need to emit the complete ctor if the class is abstract,