Lines Matching defs:Class
11 // class in this file generates structures used by the GNU Objective-C runtime
44 /// Class that lazily initialises the runtime function. Avoids inserting the
47 class LazyRuntimeFunction {
53 /// Constructor leaves this class uninitialized, because it is intended to
54 /// be used as a field in another class and not all of the types that are
75 /// Overloaded cast operator, allows the class to be implicitly cast to an
99 /// GNU Objective-C runtime code generation. This class implements the parts of
102 class CGObjCGNU : public CGObjCRuntime {
107 /// contains the receiver (object) and the expected class.
287 /// Placeholder for the class. Lots of things refer to the class before we've
289 /// it with a pointer to the class structure before finally emitting the
292 /// Placeholder for the metaclass. Lots of things refer to the class before
371 /// The version of the runtime that this class targets. Must match the
374 /// The version of the protocol class. Used to differentiate between ObjC1
412 /// a class defined in the runtime, declaring no methods, but adopting the
416 /// Generates a class structure.
444 /// Emits a reference to a class. This allows the linker to object if there
445 /// is no class of the matching name.
448 /// Emits a pointer to the named class
491 const ObjCInterfaceDecl *Class,
498 const ObjCInterfaceDecl *Class,
581 /// Class representing the legacy GCC Objective-C ABI. This is the default when
587 /// the extended form of the class structure, and the extra fields are simply
589 class CGObjCGCC : public CGObjCGNU {
594 /// structure describing the receiver and the class, and a selector as
629 /// Class used when targeting the new GNUstep runtime ABI.
630 class CGObjCGNUstep : public CGObjCGNU {
635 /// a structure describing the receiver and the class, and a selector as
801 class CGObjCObjFW: public CGObjCGNU {
810 /// structure describing the receiver and the class, and a selector as
883 /// Emits a reference to a dummy variable which is emitted with each class.
885 /// together modules where a referenced class is not defined.
1040 // reference to the class symbol. For the compatible nonfragile ABI we are
1042 // class externally so that we can make the switch later.
1057 // techniques can modify the name -> class mapping.
1231 ///send to self with special delivery semantics indicating which class's method
1238 const ObjCInterfaceDecl *Class,
1277 MakeConstantString(Class->getNameAsString()));
1279 // Set up global aliases for the metaclass or class pointer if they do not
1281 // pointers to the class and metaclass structure created for the runtime
1283 // super_class pointer from either the class or metaclass structure.
1288 Class->getNameAsString(), NULL, &TheModule);
1295 Class->getNameAsString(), NULL, &TheModule);
1300 // Cast the pointer to a simplified version of the class structure
1324 llvm::MDString::get(VMContext, Class->getSuperClass()->getNameAsString()),
1343 const ObjCInterfaceDecl *Class,
1398 llvm::MDString::get(VMContext, Class ? Class->getNameAsString() :""),
1399 llvm::ConstantInt::get(llvm::Type::getInt1Ty(VMContext), Class!=0)
1583 /// Generate a class structure
1599 // Set up the class structure
1657 // This is now an externally visible symbol, so that we can speed up class
1663 llvm::Constant *Class = MakeGlobal(ClassTy, Elements, ClassSym,
1666 ClassRef->replaceAllUsesWith(llvm::ConstantExpr::getBitCast(Class,
1669 Class->setName(ClassSym);
1671 return Class;
1805 // Collect information about class methods:
1955 // Class method list
2046 // Collect information about class methods
2073 // Class method list
2156 // Get the class declaration for which the alias is specified.
2176 // Get the class name
2180 // Emit the symbol that is used to generate linker errors if this class is
2208 // class}. The runtime will then set this to the correct value on load.
2283 // Collect information about class methods
2320 // we emit a symbol containing the offset for each ivar in the class. This
2360 //Generate metaclass for class methods
2366 // Generate the class structure
2374 // Resolve the class aliases, if they exist.
2388 // Add class structure to list to be added to the symtab later
2797 // initializer will be reset later anyway, when we are generating the class
2808 // GCC-compiled class.
2845 // Otherwise check in the super class.