summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGObjCMac.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Thread CGFunctionInfo construction through CodeGenTypes.Daniel Dunbar2009-02-021-4/+5
| | | | | | - Inefficient & leaks memory currently, will be cleaned up subsequently. llvm-svn: 63567
* More ABI API cleanup.Daniel Dunbar2009-02-021-2/+2
| | | | | | | - Lift CGFunctionInfo creation above ReturnTypeUsesSret and EmitFunction{Epi,Pro}log. llvm-svn: 63553
* ABI handling API changes.Daniel Dunbar2009-02-021-6/+6
| | | | | | | | | | | - Lift CGFunctionInfo creation up to callers of EmitCall. - Move isVariadic bit out of CGFunctionInfo, take as argument to GetFunctionType instead. No functionality change. llvm-svn: 63550
* Refactored code gen for ivar access in preparation forFariborz Jahanian2009-02-021-0/+26
| | | | | | objc2 nonfragile ivar access code gen. llvm-svn: 63541
* Use target alignment API to set objc2's meta-dataFariborz Jahanian2009-01-311-13/+20
| | | | | | alignment. llvm-svn: 63470
* Kill off CGCallInfo, always use CGFunctionInfo for encapsulatingDaniel Dunbar2009-01-311-2/+2
| | | | | | function/call info. llvm-svn: 63466
* class meta-data belong to __objc_data section (in objc2Fariborz Jahanian2009-01-311-1/+1
| | | | | | nonfragile abi). llvm-svn: 63461
* Recognize class's visibility attribute and set its linkageFariborz Jahanian2009-01-311-6/+18
| | | | | | to private extern (in objc2 nonfragile abi). llvm-svn: 63460
* Missed another mis-alignment of an objc2 meta-data.Fariborz Jahanian2009-01-301-1/+1
| | | | llvm-svn: 63453
* Setting correct alignent for objc2 meta-data.Fariborz Jahanian2009-01-301-0/+12
| | | | llvm-svn: 63445
* add imag_info section and data (for objc2 nonfragile abi).Fariborz Jahanian2009-01-301-6/+17
| | | | llvm-svn: 63430
* Generate list of implemented classes and categories in theirFariborz Jahanian2009-01-301-1/+56
| | | | | | own sections (related to objc2 nonfragile abi). llvm-svn: 63418
* Code gen. for @protocol expression in the new nonfragile abi.Fariborz Jahanian2009-01-301-4/+34
| | | | llvm-svn: 63408
* Bug fixing involving method-list in protocol meta-dataFariborz Jahanian2009-01-301-6/+25
| | | | | | (objc2 nonfragile-abi). llvm-svn: 63351
* Random bug fix related to protocl metadata in categories inFariborz Jahanian2009-01-291-5/+6
| | | | | | non-fragile abi. llvm-svn: 63343
* Set protocol linkage and visibility correctly andFariborz Jahanian2009-01-291-2/+17
| | | | | | | build protocol translation table meta-data (objc2 non-fragile abi). llvm-svn: 63329
* Protocol meta-data for objc2's non-fragile abi. Fariborz Jahanian2009-01-291-21/+233
| | | | | | Lot more to do in this area. llvm-svn: 63326
* Add setter/getter methods to the list of methodsFariborz Jahanian2009-01-281-0/+15
| | | | | | of class's meta-data (related to objc2 nonfragile abi). llvm-svn: 63251
* property metadata for objc2's nonfragile abiFariborz Jahanian2009-01-281-15/+30
| | | | llvm-svn: 63246
* Some refactoring of common code. No change in functionality.Fariborz Jahanian2009-01-281-34/+47
| | | | llvm-svn: 63218
* Set visibility of ivar offset symbols according to Fariborz Jahanian2009-01-281-4/+13
| | | | | | | accessibility of the ivar (related to objc2's non-fragile abi). llvm-svn: 63166
* Generation of ivar-offset symbols in objc2's non-fragile abi.Fariborz Jahanian2009-01-281-13/+59
| | | | | | Changed section names for meta-data (to match current gcc). llvm-svn: 63163
* After talking to our runtime guru, I added a comment.Fariborz Jahanian2009-01-271-0/+5
| | | | llvm-svn: 63141
* ivar meta-data generation for nonfragile-abi.Fariborz Jahanian2009-01-271-2/+87
| | | | | | Still more work to do in this area. llvm-svn: 63126
* Added a FIXME.Fariborz Jahanian2009-01-261-0/+2
| | | | llvm-svn: 63071
* Build method-description-list for category meta-data Fariborz Jahanian2009-01-261-3/+31
| | | | | | as well (for nonfragile-abi). llvm-svn: 63062
* Method decription meta-data and its setting in class_ro_t Fariborz Jahanian2009-01-261-17/+102
| | | | | | meta-data. llvm-svn: 63043
* Meta-data for nonfragile-abi's categoriesFariborz Jahanian2009-01-261-2/+51
| | | | llvm-svn: 63020
* Compute instaceStart/instanceSize fields of the class_ro_t meta-dataFariborz Jahanian2009-01-241-2/+41
| | | | | | for objc2's non-fragile abi. llvm-svn: 62945
* Patch to build class meta-data for each implementation Fariborz Jahanian2009-01-241-9/+44
| | | | | | of class in objc2's nonfragile abi. llvm-svn: 62935
* This patch builds the meta-class object for each Fariborz Jahanian2009-01-241-75/+171
| | | | | | implemented class in objc2's nonfrigile abi. llvm-svn: 62929
* Some very early work for new objc's Fariborz Jahanian2009-01-231-11/+208
| | | | | | meta-data generation. llvm-svn: 62894
* Checked in an oops!Fariborz Jahanian2009-01-231-1/+2
| | | | llvm-svn: 62853
* Another missing LLVM type for objc2's new abi defined.Fariborz Jahanian2009-01-231-3/+12
| | | | llvm-svn: 62852
* Define LLVM types for nonfragile abi metadata.Fariborz Jahanian2009-01-231-25/+158
| | | | llvm-svn: 62830
* Use NonFragileABI as name of new Next abi. More comments Fariborz Jahanian2009-01-221-56/+118
| | | | | | for the new meta-data. llvm-svn: 62806
* More refactoring of common API to the common class forFariborz Jahanian2009-01-221-93/+104
| | | | | | the two Next's objc runtimes. More comments. llvm-svn: 62735
* Moved whole bunch of common APIs to the common class.Fariborz Jahanian2009-01-211-37/+37
| | | | | | No change in functionality. llvm-svn: 62729
* Refactoring ObjC Next's runtime classes in preparation forFariborz Jahanian2009-01-211-74/+123
| | | | | | the new ObjC's abi. llvm-svn: 62721
* Commented objective-c's metadata types. Minor clean up.Fariborz Jahanian2009-01-211-5/+89
| | | | | | No change in functionality. llvm-svn: 62646
* Remove ScopedDecl, collapsing all of its functionality into Decl, soDouglas Gregor2009-01-201-2/+2
| | | | | | | | | | | | | | | | that every declaration lives inside a DeclContext. Moved several things that don't have names but were ScopedDecls (and, therefore, NamedDecls) to inherit from Decl rather than NamedDecl, including ObjCImplementationDecl and LinkageSpecDecl. Now, we don't store empty DeclarationNames for these things, nor do we try to insert them into DeclContext's lookup structure. The serialization tests are temporarily disabled. We'll re-enable them once we've sorted out the remaining ownership/serialiazation issues between DeclContexts and TranslationUnion, DeclGroups, etc. llvm-svn: 62562
* Patch to re-implement ivar-list meta-data generation to fixFariborz Jahanian2009-01-171-11/+31
| | | | | | cases of unnamed ivar bitfields. llvm-svn: 62429
* Cleanup DeclContext::addDecl and DeclContext::insert interface, from Piotr RakDouglas Gregor2009-01-121-8/+4
| | | | llvm-svn: 62122
* (LLVM up) Match TargetData API change in LLVM TOT.Daniel Dunbar2009-01-121-7/+7
| | | | llvm-svn: 62101
* Convert property implementation to DeclContext::addDecl().Steve Naroff2009-01-111-16/+9
| | | | | | This completes the ObjCContainerDecl AST cleanup (for now). llvm-svn: 62037
* This patch fixes the code gen failures which was a fallout fromFariborz Jahanian2009-01-101-4/+9
| | | | | | | | not merging protocol properties into the classes which use those protocols. With this patch, all my exceutable test pass again. llvm-svn: 62030
* Provide a new kind of iterator, the specific_decl_iterator, thatDouglas Gregor2009-01-091-1/+1
| | | | | | | | | filters the decls seen by decl_iterator with two criteria: the dynamic type of the declaration and a run-time predicate described by a member function. This simplifies EnumDecl, RecordDecl, and ObjCContainerDecl considerably. It has no measurable performance impact. llvm-svn: 61994
* Move property API's up to ObjCContainerDecl (removing a lot of duplicate code).Steve Naroff2009-01-091-6/+6
| | | | | | | | | Add isa/cast/dyncast support for ObjCContainerDecl. Renamed classprop_iterator/begin/end to prop_iterator/begin/end (the class prefix was confusing). More simplifications to Sema::ActOnAtEnd()... Added/changed some FIXME's as a result of the above work. llvm-svn: 61988
* Another nasty code gen. bug with trivial fix. Calling classFariborz Jahanian2009-01-071-1/+3
| | | | | | | method on 'super' receiver in a category implementation. Other simpler cases were working by accident. llvm-svn: 61880
* More encoding support. This time forFariborz Jahanian2008-12-191-1/+1
| | | | | | @encode of classes and bitfields. llvm-svn: 61268
OpenPOWER on IntegriCloud