| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Reset the lifetime-managed flag between emission of the agg conditional | John McCall | 2010-11-17 | 1 | -2/+2 |
| | | | | | | | branches. Fixes PR8623. llvm-svn: 119408 | ||||
| * | After discussion with Doug and John, I am reverting | Fariborz Jahanian | 2010-10-22 | 1 | -8/+1 |
| | | | | | | | the patch. llvm-svn: 117159 | ||||
| * | Patch fixes miscompile with non-trivial copy constructors and | Fariborz Jahanian | 2010-10-22 | 1 | -1/+8 |
| | | | | | | | statement expressions, //rdar: //8540501 llvm-svn: 117146 | ||||
| * | Experimental TBAA support. | Dan Gohman | 2010-10-14 | 1 | -3/+13 |
| | | | | | | | | This enables metadata generation by default, however the TBAA pass in the optimizer is still disabled for now. llvm-svn: 116536 | ||||
| * | Removes unused setter. | Fariborz Jahanian | 2010-09-16 | 1 | -3/+0 |
| | | | | | llvm-svn: 114085 | ||||
| * | Further beautification: this pointer can now be typed. | John McCall | 2010-09-16 | 1 | -5/+5 |
| | | | | | llvm-svn: 114061 | ||||
| * | Initialize AggValueSlot's flags along all paths, plus minor beautification. | John McCall | 2010-09-16 | 1 | -6/+8 |
| | | | | | | | Prospective fix for broken commit in r114045. llvm-svn: 114060 | ||||
| * | Patch to move RequiresGCollection bit to | Fariborz Jahanian | 2010-09-16 | 1 | -14/+26 |
| | | | | | | | AggValueSlot slot. llvm-svn: 114045 | ||||
| * | one piece of code is responsible for the lifetime of every aggregate | John McCall | 2010-09-15 | 1 | -0/+63 |
| | | | | | | | | | | | | | | slot. The easiest way to do that was to bundle up the information we care about for aggregate slots into a new structure which demands that its creators at least consider the question. I could probably be convinced that the ObjC 'needs GC' bit should be rolled into this structure. Implement generalized copy elision. The main obstacle here is that IR-generation must be much more careful about making sure that exactly llvm-svn: 113962 | ||||
| * | CGValue: Increase width of allowed alignment. We could switch to log2, but we | Daniel Dunbar | 2010-08-26 | 1 | -1/+1 |
| | | | | | | | don't currently need the bits anyway. llvm-svn: 112173 | ||||
| * | IRgen/CGValue: Give MakeAddrLValue() an alignment argument, and eliminate ↵ | Daniel Dunbar | 2010-08-21 | 1 | -9/+5 |
| | | | | | | | old form of MakeAddr(). llvm-svn: 111723 | ||||
| * | IRgen: Move remaining LValue::Set... methods to LValue::set... (non-static) ↵ | Daniel Dunbar | 2010-08-21 | 1 | -15/+13 |
| | | | | | | | methods. llvm-svn: 111722 | ||||
| * | IRgen/CGValue: Add getQuals(), so qualifiers can be modified on an LValue. | Daniel Dunbar | 2010-08-21 | 1 | -0/+3 |
| | | | | | llvm-svn: 111719 | ||||
| * | IRgen/LValue: Add LValue::setNonGC instead of SetObjCNonGC, for consistency ↵ | Daniel Dunbar | 2010-08-21 | 1 | -3/+3 |
| | | | | | | | with isNonGC(). llvm-svn: 111718 | ||||
| * | IRgen: Add an LValue::MakeAddr variant which takes a type and uses that to build | Daniel Dunbar | 2010-08-21 | 1 | -0/+8 |
| | | | | | | | | | | the qualifiers. Also, add CodeGenFunction::MakeAddrLValue() helper function which passes in the ASTContext. llvm-svn: 111714 | ||||
| * | IRgen/CGValue: Add alignment to LValue, and use that alignment when ↵ | Daniel Dunbar | 2010-08-21 | 1 | -6/+13 |
| | | | | | | | generating lvalue load/stores. llvm-svn: 111710 | ||||
| * | IRgen/LValue: Rename SetQualifiers() to Initialize(). | Daniel Dunbar | 2010-08-21 | 1 | -7/+7 |
| | | | | | llvm-svn: 111708 | ||||
| * | Adopt objc_assign_threadlocal() for __thread variables of GC types. | Fariborz Jahanian | 2010-07-20 | 1 | -1/+8 |
| | | | | | | | Implements radar 8203301. llvm-svn: 108917 | ||||
| * | CodeGen: Shrink RValue. 4 words -> 2 words. | Benjamin Kramer | 2010-05-02 | 1 | -30/+25 |
| | | | | | llvm-svn: 102863 | ||||
| * | IRgen: Move the bit-field access type into CGBitFieldInfo, and change ↵ | Daniel Dunbar | 2010-04-08 | 1 | -3/+9 |
| | | | | | | | bit-field LValues to just store the base address of object containing the bit-field. llvm-svn: 100745 | ||||
| * | IRgen: Move BitFieldIsSigned bit into CGBitFieldInfo. | Daniel Dunbar | 2010-04-06 | 1 | -9/+1 |
| | | | | | llvm-svn: 100513 | ||||
| * | IRgen: Move BitField LValues to just hold a reference to the CGBitFieldInfo. | Daniel Dunbar | 2010-04-05 | 1 | -22/+24 |
| | | | | | | | | | | - Unfortunately, this requires some horrible code in CGObjCMac which always allocats a CGBitFieldInfo because we don't currently build a proper layout for Objective-C classes. It needs to be cleaned up, but I don't want the bit-field cleanups to be blocked on that. llvm-svn: 100474 | ||||
| * | Fix documentation. | Mike Stump | 2009-11-03 | 1 | -1/+1 |
| | | | | | llvm-svn: 85901 | ||||
| * | Patch fixes a code gen. bug in generation of objc_assign_ivar | Fariborz Jahanian | 2009-09-24 | 1 | -0/+5 |
| | | | | | | | (objc GC's API). llvm-svn: 82724 | ||||
| * | Refactor the representation of qualifiers to bring ExtQualType out of the | John McCall | 2009-09-24 | 1 | -52/+25 |
| | | | | | | | | | Type hierarchy. Demote 'volatile' to extended-qualifier status. Audit our use of qualifiers and fix a few places that weren't dealing with qualifiers quite right; many more remain. llvm-svn: 82705 | ||||
| * | Miscellanous fixes in generatation of objc gc's write-barriers. | Fariborz Jahanian | 2009-09-21 | 1 | -5/+5 |
| | | | | | llvm-svn: 82472 | ||||
| * | Fixed a bug in generation of the new write-barriers when | Fariborz Jahanian | 2009-09-18 | 1 | -2/+8 |
| | | | | | | | array syntax is used to derefernce and assign to ivar pointee. llvm-svn: 82183 | ||||
| * | Remove tabs, and whitespace cleanups. | Mike Stump | 2009-09-09 | 1 | -20/+20 |
| | | | | | llvm-svn: 81346 | ||||
| * | Using "ObjCImplicitSetterGetterRefExpr" instead of ↵ | Fariborz Jahanian | 2009-08-20 | 1 | -4/+4 |
| | | | | | | | | | "ObjCImplctSetterGetterRefExpr". A field rename and more comments. llvm-svn: 79537 | ||||
| * | Renamed ObjCKVCRefExpr to ObjCImplctSetterGetterRefExpr. | Fariborz Jahanian | 2009-08-18 | 1 | -4/+5 |
| | | | | | | | | | 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 | ||||
| * | Preserve address space information through member accesses, e.g., | Mon P Wang | 2009-07-22 | 1 | -3/+8 |
| | | | | | | | | __attribute__((address_space(1))) struct {int arr[ 3 ]; } *p1; ... = p1->arr[2]; // load from address space 1 llvm-svn: 76717 | ||||
| * | Not setting all the fields is confusing... | Mike Stump | 2009-05-28 | 1 | -0/+3 |
| | | | | | llvm-svn: 72506 | ||||
| * | Add support for volatile RValues. | Mike Stump | 2009-05-23 | 1 | -3/+8 |
| | | | | | llvm-svn: 72341 | ||||
| * | Reflow some comments. | Mike Stump | 2009-05-16 | 1 | -5/+5 |
| | | | | | llvm-svn: 71937 | ||||
| * | Provide basic support for generation of objc2's | Fariborz Jahanian | 2009-05-04 | 1 | -1/+10 |
| | | | | | | | | objc_assign_global API when assigning to global objective-c object pointer. llvm-svn: 70939 | ||||
| * | Handle case of none gc'able objects regardless of their | Fariborz Jahanian | 2009-02-21 | 1 | -2/+12 |
| | | | | | | | type. llvm-svn: 65205 | ||||
| * | Some code simplification. ir gen for gc'able array | Fariborz Jahanian | 2009-02-19 | 1 | -5/+6 |
| | | | | | | | of objects in objc. llvm-svn: 64992 | ||||
| * | fix volatile handling with ExtVectorElementExpr, so that we | Chris Lattner | 2009-02-16 | 1 | -2/+6 |
| | | | | | | | | | | | | emit two volatile loads for: typedef __attribute__(( ext_vector_type(4) )) float float4; float test(volatile float4 *P) { return P->x+P->y; } llvm-svn: 64683 | ||||
| * | Remove tabs. | Nate Begeman | 2008-12-16 | 1 | -3/+3 |
| | | | | | llvm-svn: 61097 | ||||
| * | Implemented ir-gen for 'implicit' properties using the new AST nodes. | Fariborz Jahanian | 2008-11-22 | 1 | -1/+21 |
| | | | | | llvm-svn: 59886 | ||||
| * | Fields of ivars of struct types are considered ivars | Fariborz Jahanian | 2008-11-21 | 1 | -2/+2 |
| | | | | | | | themselves for gc API generation purposes. llvm-svn: 59828 | ||||
| * | Support generation of objc_assign_ivar for ivar | Fariborz Jahanian | 2008-11-20 | 1 | -0/+10 |
| | | | | | | | write-barriers. llvm-svn: 59748 | ||||
| * | More of objective-c's gc code-gen. Treat objective-c | Fariborz Jahanian | 2008-11-19 | 1 | -3/+4 |
| | | | | | | | objects as __strong when attribute unspecified. llvm-svn: 59654 | ||||
| * | Few more changes due to Daniel's feedback. | Fariborz Jahanian | 2008-11-19 | 1 | -2/+2 |
| | | | | | llvm-svn: 59645 | ||||
| * | Generate strong write barriers for __strong objects. | Fariborz Jahanian | 2008-11-19 | 1 | -10/+17 |
| | | | | | | | Also, took care of Daniel's commments. llvm-svn: 59575 | ||||
| * | Generate objc_read_weak for __weak objc loads. | Fariborz Jahanian | 2008-11-18 | 1 | -0/+4 |
| | | | | | llvm-svn: 59553 | ||||
| * | Some basic support toward objective-c's GC code gen. | Fariborz Jahanian | 2008-11-18 | 1 | -2/+13 |
| | | | | | llvm-svn: 59543 | ||||
| * | Add FIXME about potential problem in how property ref lvalues are handled. | Daniel Dunbar | 2008-10-17 | 1 | -0/+3 |
| | | | | | llvm-svn: 57743 | ||||
| * | Change CodeGen to emit calls using (RValue,Type) list: | Daniel Dunbar | 2008-09-09 | 1 | -0/+5 |
| | | | | | | | | | | | | | | | - Add CodeGenFunction::EmitAnyExprToTemp o Like EmitAnyExpr, but emits aggregates to a temporary location if none is available. Seems like this should be simpler (even aside from using first class aggregates). - Killed CodeGenFunction::EmitCallArg (just append the pair) - Conversion of RValues to actual call arguments is now isolated in CodeGenFunction::EmitCall. llvm-svn: 55970 | ||||
| * | Add special "property reference" CodeGen::LValue type for emitting | Daniel Dunbar | 2008-08-29 | 1 | -2/+24 |
| | | | | | | | | | Objective-C property references. - This handles property references "more correctly" but setters still don't work. llvm-svn: 55534 | ||||

