| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2009-10-18 | Use CK_BitCast for member function pointer casts. Fixes PR5138. | Anders Carlsson | |
| llvm-svn: 84438 | |||
| 2009-10-13 | fix test/CodeGen/statements.c on 32-bit hosts. | Chris Lattner | |
| llvm-svn: 84039 | |||
| 2009-10-13 | Simplify pointer creation with the new Type::getInt*Ptr methods. | Benjamin Kramer | |
| llvm-svn: 83964 | |||
| 2009-10-13 | Teach sema and codegen about the difference between address of labels, | Chris Lattner | |
| which is a common idiom to improve PIC'ness of code using the addr of label extension. This implementation is a gross hack, but the only other alternative would be to teach evalutate about this horrid combination. While GCC allows things like "&&foo - &&bar + 1", people don't use this in practice. This implements PR5131. llvm-svn: 83957 | |||
| 2009-10-11 | Move the vtable builder to CGVtable.cpp, general cleanup. | Anders Carlsson | |
| llvm-svn: 83798 | |||
| 2009-10-03 | Pass the canonical method decl to GetVtableIndex. Fixes PR5120. | Anders Carlsson | |
| llvm-svn: 83272 | |||
| 2009-10-03 | Handle base-to-derived casts of member function pointers in CGExprConstant.cpp | Anders Carlsson | |
| llvm-svn: 83265 | |||
| 2009-10-03 | Handle members to function pointers in CGExprConstant. | Anders Carlsson | |
| llvm-svn: 83264 | |||
| 2009-10-02 | Don't update the struct alignment when adding fields to a packed struct. ↵ | Anders Carlsson | |
| Fixes PR5118. llvm-svn: 83235 | |||
| 2009-10-02 | When building constant structs, check if the resulting LLVM struct will be ↵ | Anders Carlsson | |
| bigger than the record layout size and use a packed struct if that's the case. Fixes PR5108. llvm-svn: 83230 | |||
| 2009-09-29 | Improve support for member function pointers. | Anders Carlsson | |
| llvm-svn: 83039 | |||
| 2009-09-19 | Make clang stop relying on ConstantStruct::get's default value for isPacked | Nick Lewycky | |
| which will be going away (ie. it's becoming a required parameter) later today. llvm-svn: 82323 | |||
| 2009-09-10 | GlobalDecl doesn't have an explicit constructor anymore. | Anders Carlsson | |
| llvm-svn: 81481 | |||
| 2009-09-09 | Remove tabs, and whitespace cleanups. | Mike Stump | |
| llvm-svn: 81346 | |||
| 2009-08-26 | Make address-space qualification work correctly for compound literals. | Eli Friedman | |
| Issue reported on cfe-dev. Also fixed the code to use isConstant to determine whether to generate a constant global, to be consistent with CodeGenModule. This probably needs to be refactored to deal with C++, though. llvm-svn: 80131 | |||
| 2009-08-24 | More member pointer work. | Anders Carlsson | |
| llvm-svn: 79922 | |||
| 2009-08-23 | Whoops, comment this out for now. I'll fix it shortly. | Anders Carlsson | |
| llvm-svn: 79806 | |||
| 2009-08-23 | More work towards zero-initializing structs that contain member pointers in ↵ | Anders Carlsson | |
| constant expressions. llvm-svn: 79805 | |||
| 2009-08-23 | Handle CK_NullToMemberPointer casts in the constant expr emitter. | Anders Carlsson | |
| llvm-svn: 79790 | |||
| 2009-08-22 | Change the constant expression emitter to look at the cast kind for to-union ↵ | Anders Carlsson | |
| casts. llvm-svn: 79789 | |||
| 2009-08-13 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 78946 | |||
| 2009-08-09 | Improve handling of member pointers. | Anders Carlsson | |
| llvm-svn: 78536 | |||
| 2009-08-06 | Fix clang breakage, CGF can be null in this context. | Daniel Dunbar | |
| llvm-svn: 78269 | |||
| 2009-08-05 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 78259 | |||
| 2009-08-02 | use CodeGenModule::EmitNullConstant in a couple of places. | Anders Carlsson | |
| llvm-svn: 77915 | |||
| 2009-08-01 | Fix a minor issue with unions in the new struct building code. | Eli Friedman | |
| llvm-svn: 77829 | |||
| 2009-07-31 | Remove the old struct builder code. | Anders Carlsson | |
| llvm-svn: 77738 | |||
| 2009-07-31 | Move code from EmitUnion directly into the function that handles cast-to-union. | Anders Carlsson | |
| llvm-svn: 77735 | |||
| 2009-07-31 | Use the struct builder for unions. | Anders Carlsson | |
| llvm-svn: 77732 | |||
| 2009-07-31 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77722 | |||
| 2009-07-29 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77514 | |||
| 2009-07-29 | Change uses of: | Ted Kremenek | |
| Type::getAsReferenceType() -> Type::getAs<ReferenceType>() Type::getAsRecordType() -> Type::getAs<RecordType>() Type::getAsPointerType() -> Type::getAs<PointerType>() Type::getAsBlockPointerType() -> Type::getAs<BlockPointerType>() Type::getAsLValueReferenceType() -> Type::getAs<LValueReferenceType>() Type::getAsRValueReferenceType() -> Type::getAs<RValueReferenceType>() Type::getAsMemberPointerType() -> Type::getAs<MemberPointerType>() Type::getAsReferenceType() -> Type::getAs<ReferenceType>() Type::getAsTagType() -> Type::getAs<TagType>() And remove Type::getAsReferenceType(), etc. This change is similar to one I made a couple weeks ago, but that was partly reverted pending some additional design discussion. With Doug's pending smart pointer changes for Types, it seemed natural to take this approach. llvm-svn: 77510 | |||
| 2009-07-29 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77492 | |||
| 2009-07-28 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77368 | |||
| 2009-07-28 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77349 | |||
| 2009-07-27 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77267 | |||
| 2009-07-27 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77249 | |||
| 2009-07-27 | Enable the new constant struct builder by default. The old code is still in ↵ | Anders Carlsson | |
| place but will be removed shortly. The new struct builder works on big endian systems. llvm-svn: 77185 | |||
| 2009-07-27 | More work on the constant struct builder, fix a couple of thinkos and add ↵ | Anders Carlsson | |
| support for inserting part of a bitfield in the previous byte. llvm-svn: 77180 | |||
| 2009-07-27 | More work on bitfield support in the new constant struct builder. | Anders Carlsson | |
| llvm-svn: 77177 | |||
| 2009-07-25 | More work on the constant struct builder. We can now convert the struct to a ↵ | Anders Carlsson | |
| packed struct when necessary. llvm-svn: 77038 | |||
| 2009-07-25 | More work on the constant struct builder. We now try to layout all constant ↵ | Anders Carlsson | |
| structs but throw away the result. llvm-svn: 77021 | |||
| 2009-07-24 | Update for LLVM API change. | Owen Anderson | |
| llvm-svn: 77012 | |||
| 2009-07-24 | Fix a release build warning. | Anders Carlsson | |
| llvm-svn: 76985 | |||
| 2009-07-24 | Check in a half finished new constant struct builder (Obviously not used yet). | Anders Carlsson | |
| llvm-svn: 76969 | |||
| 2009-07-23 | Move the LLVM field number for bit fields into the BitFieldInfo structure, ↵ | Anders Carlsson | |
| since it's meaning is completely different than for non-bit fields. llvm-svn: 76882 | |||
| 2009-07-23 | Use arrays as union padding. Also, since the resulting struct will always ↵ | Anders Carlsson | |
| contain a single element and either a single i8 element or an array of i8s, there's no reason to use a packed struct. llvm-svn: 76854 | |||
| 2009-07-17 | Per offline discussion with Steve Naroff, add back Type::getAsXXXType() methods | Ted Kremenek | |
| until Doug Gregor's Type smart pointer code lands (or more discussion occurs). These methods just call the new Type::getAs<XXX> methods, so we still have reduced implementation redundancy. Having explicit getAsXXXType() methods makes it easier to set breakpoints in the debugger. llvm-svn: 76193 | |||
| 2009-07-17 | Replaced Type::getAsLValueReferenceType(), Type::getAsRValueReferenceType(), ↵ | Ted Kremenek | |
| Type::getAsMemberPointerType(), Type::getAsTagType(), and Type::getAsRecordType() with their Type::getAs<XXX> equivalents. llvm-svn: 76139 | |||
| 2009-07-14 | Update for LLVM API change, and contextify a bunch of related stuff. | Owen Anderson | |
| llvm-svn: 75705 | |||
