Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:Protocols

262   /// All of the protocols that have been declared.
329 /// and ObjC2 protocols. Objective-C 1 protocols can not contain optional
362 /// Generates a list of referenced protocols. Classes, categories, and
363 /// protocols all use this structure.
364 llvm::Constant *GenerateProtocolList(ArrayRef<std::string> Protocols);
365 /// To ensure that all protocols are seen by the runtime, we add a category on
367 /// protocols. This is a horribly ugly hack, but it allows us to collect all
368 /// of the protocols without changing the ABI.
380 llvm::Constant *Protocols,
386 /// Generates a method list. This is used by protocols to define the required
1368 llvm::Constant *Protocols,
1394 PtrTy, // protocols
1424 Elements.push_back(llvm::ConstantExpr::getBitCast(Protocols, PtrTy));
1478 llvm::Constant *CGObjCGNU::GenerateProtocolList(ArrayRef<std::string>Protocols){
1480 Protocols.size());
1487 for (const std::string *iter = Protocols.begin(), *endIter = Protocols.end();
1505 Elements.push_back(llvm::ConstantInt::get(LongTy, Protocols.size()));
1526 // Protocols are objects containing lists of the methods implemented and
1527 // protocols adopted.
1558 SmallVector<std::string, 16> Protocols;
1561 Protocols.push_back((*PI)->getNameAsString());
1601 llvm::Constant *ProtocolList = GenerateProtocolList(Protocols);
1689 // Protocols are objects containing lists of the methods implemented and
1690 // protocols adopted.
1834 // Collect the names of referenced protocols
1835 SmallVector<std::string, 16> Protocols;
1840 Protocols.push_back((*I)->getNameAsString());
1855 GenerateProtocolList(Protocols), PtrTy));
2072 // Collect the names of referenced protocols
2073 SmallVector<std::string, 16> Protocols;
2077 Protocols.push_back((*I)->getNameAsString());
2149 MethodList, GenerateProtocolList(Protocols), IvarOffsetArray,
2178 // Add all referenced protocols to a category.