summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGObjC.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove tabs, and whitespace cleanups.Mike Stump2009-09-091-109/+106
| | | | llvm-svn: 81346
* Fixed a property getter ir-gen crash.Fariborz Jahanian2009-09-011-0/+1
| | | | llvm-svn: 80681
* Regularize the case and sort.Mike Stump2009-08-261-1/+1
| | | | llvm-svn: 80163
* Using "ObjCImplicitSetterGetterRefExpr" instead of ↵Fariborz Jahanian2009-08-201-4/+4
| | | | | | | | "ObjCImplctSetterGetterRefExpr". A field rename and more comments. llvm-svn: 79537
* Renamed ClassProp data member of ObjCImplctSetterGetterRefExprFariborz Jahanian2009-08-181-6/+6
| | | | | | | | to InterfaceDecl, as it is unrelated to any property and holds the InterfaceDecl needed for accessing class getter/setter methods using the dot-syntax. llvm-svn: 79371
* Renamed ObjCKVCRefExpr to ObjCImplctSetterGetterRefExpr.Fariborz Jahanian2009-08-181-2/+4
| | | | | | | | Removed an unnecessary loop to get to setters incoming argument. Added DoxyGen comments. Still more work to do in this area (WIP). llvm-svn: 79365
* Update for LLVM API change.Owen Anderson2009-07-311-2/+2
| | | | llvm-svn: 77722
* Canonicalize else spacing.Mike Stump2009-07-301-14/+7
| | | | llvm-svn: 77629
* Update for LLVM API change.Owen Anderson2009-07-291-1/+1
| | | | llvm-svn: 77492
* Update for LLVM API change.Owen Anderson2009-07-241-5/+5
| | | | llvm-svn: 77012
* Update for LLVM API change, and contextify a bunch of related stuff.Owen Anderson2009-07-141-8/+8
| | | | llvm-svn: 75705
* Update for LLVM API change.Owen Anderson2009-07-131-2/+2
| | | | llvm-svn: 75446
* This patch includes a conceptually simple, but very intrusive/pervasive change. Steve Naroff2009-07-101-2/+2
| | | | | | | | | | | | The idea is to segregate Objective-C "object" pointers from general C pointers (utilizing the recently added ObjCObjectPointerType). The fun starts in Sema::GetTypeForDeclarator(), where "SomeInterface *" is now represented by a single AST node (rather than a PointerType whose Pointee is an ObjCInterfaceType). Since a significant amount of code assumed ObjC object pointers where based on C pointers/structs, this patch is very tedious. It should also explain why it is hard to accomplish this in smaller, self-contained patches. This patch does most of the "heavy lifting" related to moving from PointerType->ObjCObjectPointerType. It doesn't include all potential "cleanups". The good news is additional cleanups can be done later (some are noted in the code). This patch is so large that I didn't want to include any changes that are purely aesthetic. By making the ObjC types truly built-in, they are much easier to work with (and require fewer "hacks"). For example, there is no need for ASTContext::isObjCIdStructType() or ASTContext::isObjCClassStructType()! We believe this change (and the follow-up cleanups) will pay dividends over time. Given the amount of code change, I do expect some fallout from this change (though it does pass all of the clang tests). If you notice any problems, please let us know asap! Thanks. llvm-svn: 75314
* Remove the ASTContext parameter from the getBody() methods of Decl and ↵Argyrios Kyrtzidis2009-06-301-2/+2
| | | | | | | | subclasses. Timings showed no significant difference before and after the commit. llvm-svn: 74504
* Remove the ASTContext parameter from the attribute-related methods of Decl.Argyrios Kyrtzidis2009-06-301-1/+1
| | | | | | | | | The implementations of these methods can Use Decl::getASTContext() to get the ASTContext. This commit touches a lot of files since call sites for these methods are everywhere. I used pre-tokenized "carbon.h" and "cocoa.h" headers to do some timings, and there was no real time difference between before the commit and after it. llvm-svn: 74501
* Move the static DeclAttrs map into ASTContext. Fixes <rdar://problem/6983177>.Douglas Gregor2009-06-181-1/+1
| | | | llvm-svn: 73702
* Reflow some comments.Mike Stump2009-05-161-11/+11
| | | | llvm-svn: 71937
* Patch to support Gnu runtime's typed selectors.Fariborz Jahanian2009-05-051-1/+2
| | | | | | Patch by David Chisnall. llvm-svn: 71023
* Implement function-try-blocks. However, there's a very subtle bug that I ↵Sebastian Redl2009-04-261-1/+1
| | | | | | can't track down. llvm-svn: 70155
* split ObjC and C++ Statements out into their own headers.Chris Lattner2009-04-261-1/+1
| | | | llvm-svn: 70105
* Remove unnused variable.Daniel Dunbar2009-04-211-1/+0
| | | | llvm-svn: 69650
* Kill ASTContext::[gs]etFieldForDecl, instead we just lookup thingsDaniel Dunbar2009-04-211-5/+1
| | | | | | | | when we need them -- which is exactly what some code was already doing! - No intended functionality change. llvm-svn: 69648
* Remove non-const form of lookupFieldDeclForIvar.Daniel Dunbar2009-04-201-1/+1
| | | | llvm-svn: 69563
* Use EmitCallArgs in EmitObjCMessageExpr.Anders Carlsson2009-04-181-4/+1
| | | | llvm-svn: 69471
* FunctionDecl::getBody() is getting an ASTContext argument for use inDouglas Gregor2009-04-181-2/+2
| | | | | | | | lazy PCH deserialization. Propagate that argument wherever it needs to be. No functionality change, except that I've tightened up a few PCH tests in preparation. llvm-svn: 69406
* Attributes on block functions were not being set.Daniel Dunbar2009-04-171-1/+2
| | | | | | | - <rdar://problem/6800351> clang not producing correct large struct return code for Blocks llvm-svn: 69337
* Update to use hasAttr() instead of getAttr().Daniel Dunbar2009-04-131-1/+1
| | | | | | - No functionality change. llvm-svn: 68987
* Use the new EmitCallArgs function. No indented functionality change.Anders Carlsson2009-04-081-0/+1
| | | | llvm-svn: 68652
* Some "prep" work for handling ObjC @-string constants that contain UTF-8. No ↵Steve Naroff2009-03-311-3/+1
| | | | | | | | functionality change. Changed GenerateConstantString() to take an ObjCStringLiteral (instead of a std::string). While this isn't strictly necessary, it seems cleaner and allows us to cache to "containsNonAscii" if necessary (to avoid checking in both Sema and CodeGen). llvm-svn: 68114
* rename some methods.Chris Lattner2009-03-281-1/+1
| | | | llvm-svn: 67923
* pull "runtime globals" into the same framework as other functions/global ↵Chris Lattner2009-03-221-3/+2
| | | | | | | | variables. No intended functionality change. llvm-svn: 67478
* Fix codegen for support for super inside block literal expressions.Mike Stump2009-03-201-0/+2
| | | | llvm-svn: 67406
* More super dot-syntax property implementationFariborz Jahanian2009-03-201-26/+46
| | | | | | | when there is actually a property declaration used in the dot-syntax. llvm-svn: 67391
* Implement ir gen. for setter/getter applied to 'super' Fariborz Jahanian2009-03-201-1/+30
| | | | | | in a property dot-syntax notation. llvm-svn: 67382
* ir-gen support for class getter/setter call Fariborz Jahanian2009-03-101-4/+18
| | | | | | using property dot-syntax. llvm-svn: 66556
* Fixed an ir-gen bug in syntheszing a getter functionFariborz Jahanian2009-03-031-3/+7
| | | | | | | with property type which does not match its ivar and in -fobjc-gc-only mode! llvm-svn: 65955
* Obscure code gen bug related to sending Fariborz Jahanian2009-02-281-0/+2
| | | | | | | message to 'super' in a class method declared in cateogy (darwin specific). llvm-svn: 65709
* Enable debug info emission for objc methods.Devang Patel2009-02-251-0/+3
| | | | llvm-svn: 65422
* remove some more methods from objc decls, using the iteratorChris Lattner2009-02-201-6/+5
| | | | | | interfaces more consistently. llvm-svn: 65138
* Start removing the old Obj-C EH stack now that the cleanup stack is used ↵Anders Carlsson2009-02-101-7/+1
| | | | | | instead. llvm-svn: 64203
* Ensure we track all the stack depths for all break and continue pointsMike Stump2009-02-071-7/+7
| | | | | | | correctly. This should lay the ground work to throw the big switch and start code gening break and continue in the presense of vlas. llvm-svn: 64046
* Ensure that we don't miscodegen if vlas creap into the top of the for.Mike Stump2009-02-071-0/+6
| | | | | | | This will allow us to generate break and continue even if vlas are involved without worry that we'll silently generate bad code. llvm-svn: 64028
* Fixup goto codegen in and around VLAs.Mike Stump2009-02-071-2/+1
| | | | llvm-svn: 64014
* Use correct signature for calling enumeration mutation function.Daniel Dunbar2009-02-041-1/+1
| | | | llvm-svn: 63782
* Update passing of _Bool values to match what function was declared to take.Daniel Dunbar2009-02-041-3/+3
| | | | llvm-svn: 63697
* Use CGCall infrastructure to call enumeration mutation function.Daniel Dunbar2009-02-031-1/+7
| | | | llvm-svn: 63685
* Fix return type for calls to objc_setProperty.Daniel Dunbar2009-02-031-1/+5
| | | | llvm-svn: 63683
* objc2's ir-gen for nonfragile ivar access.Fariborz Jahanian2009-02-031-1/+10
| | | | llvm-svn: 63578
* Thread CGFunctionInfo construction through CodeGenTypes.Daniel Dunbar2009-02-021-2/+3
| | | | | | - Inefficient & leaks memory currently, will be cleaned up subsequently. llvm-svn: 63567
* More ABI API cleanup.Daniel Dunbar2009-02-021-3/+3
| | | | | | | - Lift CGFunctionInfo creation above ReturnTypeUsesSret and EmitFunction{Epi,Pro}log. llvm-svn: 63553
OpenPOWER on IntegriCloud