| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Patch to 1) synthesizing non-trivial default destructor when | Fariborz Jahanian | 2009-08-17 | 1 | -0/+5 | |
| | | | | | | | | | one is not provided by user. 2) More complete emission of ctor prologue when it has no initializer list or when it is synthesized. llvm-svn: 79269 | |||||
| * | Improve handling of delete expressions. | Anders Carlsson | 2009-08-16 | 1 | -0/+1 | |
| | | | | | llvm-svn: 79205 | |||||
| * | Add an IsInitializer flag to EmitAnyExpr. This is used to prevent ↵ | Anders Carlsson | 2009-08-16 | 1 | -7/+10 | |
| | | | | | | | temporaries from being destroyed when they're bound to a reference variable. llvm-svn: 79179 | |||||
| * | Cleanups and fixups for calculating the virtual base offsets. WIP. | Mike Stump | 2009-08-16 | 1 | -4/+11 | |
| | | | | | llvm-svn: 79156 | |||||
| * | Fix for PR4721: adjust CodeGen and ASTContext so that we have a | Eli Friedman | 2009-08-15 | 1 | -1/+4 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | consistent model for handling size expressions for VLAs. The model is essentially as follows: VLA types own their associated expression. In some cases, we need to create multiple VLA types to represent a given VLA (for canonical types, or qualifiers on array types, or type merging). If we need to create multiple types based off of the same VLA declaration, we use the new refcounting functionality so they can all own the expression. The VLASizeMap in CodeGenFunction then uses the size expression to identify the group of VLA types based off of the same original declaration. I'm not particularly attached to the VLA types owning the expression, but we're stuck with at least until someone comes up with a way to walk the VLA expressions for a declaration. I did the parallel fix in ASTContext for DependentSizedArrayType, but I haven't really looked closely at it, so there might still be issues there. I'll clean up the code duplication in ASTContext in a followup commit. llvm-svn: 79071 | |||||
| * | Refine vtable layout for virtual bases and keep better track of | Mike Stump | 2009-08-13 | 1 | -0/+4 | |
| | | | | | | | primaries. WIP. llvm-svn: 78950 | |||||
| * | Update for LLVM API change. | Owen Anderson | 2009-08-13 | 1 | -2/+2 | |
| | | | | | llvm-svn: 78946 | |||||
| * | More toward synthesizing copy assignments. SWIP. | Fariborz Jahanian | 2009-08-12 | 1 | -0/+5 | |
| | | | | | llvm-svn: 78861 | |||||
| * | Refactor. WIP. Eventually, this will all go into a vtable builder class. | Mike Stump | 2009-08-12 | 1 | -0/+2 | |
| | | | | | llvm-svn: 78857 | |||||
| * | Refactor. | Mike Stump | 2009-08-12 | 1 | -0/+2 | |
| | | | | | llvm-svn: 78854 | |||||
| * | Patch for synthesizing copy assignment operator. | Fariborz Jahanian | 2009-08-12 | 1 | -0/+6 | |
| | | | | | | | WIP. llvm-svn: 78841 | |||||
| * | Refine vtable building for the secondary vtables to exclude yet more | Mike Stump | 2009-08-12 | 1 | -2/+3 | |
| | | | | | | | | cases where a virtual base was already used as a primary base class. WIP. llvm-svn: 78820 | |||||
| * | LLVMContext is a class now. | Benjamin Kramer | 2009-08-11 | 1 | -1/+1 | |
| | | | | | llvm-svn: 78691 | |||||
| * | minor refactoring. No change otherwise. | Fariborz Jahanian | 2009-08-10 | 1 | -0/+4 | |
| | | | | | llvm-svn: 78582 | |||||
| * | ir-gen for initialization, in synthesize copy constructor, | Fariborz Jahanian | 2009-08-08 | 1 | -1/+2 | |
| | | | | | | | of base/field which have trivial copy constructor. llvm-svn: 78516 | |||||
| * | Add support for global initializers. | Anders Carlsson | 2009-08-08 | 1 | -0/+6 | |
| | | | | | llvm-svn: 78515 | |||||
| * | Refactor some code and implement support for global destructors for static ↵ | Anders Carlsson | 2009-08-08 | 1 | -3/+12 | |
| | | | | | | | variables. llvm-svn: 78507 | |||||
| * | Refactoring of copy ctor ir-gen. No change in functionality. | Fariborz Jahanian | 2009-08-08 | 1 | -2/+4 | |
| | | | | | llvm-svn: 78489 | |||||
| * | Synthesized copy constructor now generates code for | Fariborz Jahanian | 2009-08-07 | 1 | -1/+6 | |
| | | | | | | | | copying non-virtual base classes which have non-trivial constructor. Work in progress. llvm-svn: 78436 | |||||
| * | More synthesis of copy constructors. Work in progress. | Fariborz Jahanian | 2009-08-07 | 1 | -0/+2 | |
| | | | | | llvm-svn: 78402 | |||||
| * | Add support for vcall generation for vtables for virtual bases. WIP. | Mike Stump | 2009-08-06 | 1 | -1/+2 | |
| | | | | | llvm-svn: 78357 | |||||
| * | Also generate the rtti field for virtual bases for vtables. Turn on | Mike Stump | 2009-08-06 | 1 | -1/+4 | |
| | | | | | | | | rtti so we can properly test it. Refactor code a little. Still a work in progress. llvm-svn: 78343 | |||||
| * | More layout for virtual tables for virtual bases. Still in progress. | Mike Stump | 2009-08-06 | 1 | -0/+2 | |
| | | | | | llvm-svn: 78314 | |||||
| * | Update for LLVM API change. | Owen Anderson | 2009-08-05 | 1 | -1/+1 | |
| | | | | | llvm-svn: 78259 | |||||
| * | Add beginnigs of rtti generation, wire up more of -fno-exceptions. | Mike Stump | 2009-07-31 | 1 | -0/+1 | |
| | | | | | llvm-svn: 77751 | |||||
| * | Add code to setup the vtable pointer in the constructor. Work in progress. | Mike Stump | 2009-07-31 | 1 | -0/+2 | |
| | | | | | llvm-svn: 77699 | |||||
| * | Patch for future ir-gen for destructor calls. | Fariborz Jahanian | 2009-07-30 | 1 | -1/+6 | |
| | | | | | llvm-svn: 77608 | |||||
| * | Some code cleanup. | Fariborz Jahanian | 2009-07-28 | 1 | -2/+2 | |
| | | | | | llvm-svn: 77339 | |||||
| * | More work toward data member access ir-gen. | Fariborz Jahanian | 2009-07-28 | 1 | -0/+8 | |
| | | | | | llvm-svn: 77332 | |||||
| * | Early ir-gen for constructor prologue. This is on going. | Fariborz Jahanian | 2009-07-20 | 1 | -0/+2 | |
| | | | | | llvm-svn: 76493 | |||||
| * | Avoid generation of dead code in a few more situations. | Daniel Dunbar | 2009-07-19 | 1 | -1/+19 | |
| | | | | | | | | | | | | | | - Emit variable declarations as "simple", we want to avoid forcing the creation of a dummy basic block, but still need to make the variable available for later use. - With that, we can now skip IRgen for other unreachable statements (which don't define a label). - Anders, I added two fixmes on calls to EmitVLASize, can you check them? llvm-svn: 76361 | |||||
| * | Update for LLVM API change, and contextify a bunch of related stuff. | Owen Anderson | 2009-07-14 | 1 | -1/+1 | |
| | | | | | llvm-svn: 75705 | |||||
| * | Update for LLVM API change. | Owen Anderson | 2009-07-13 | 1 | -0/+4 | |
| | | | | | llvm-svn: 75446 | |||||
| * | Implemented memmove_collectable API for Next runtime | Fariborz Jahanian | 2009-07-08 | 1 | -0/+5 | |
| | | | | | | | | when struct variables with GC'able members are copied into. Will provide a test case later. llvm-svn: 74984 | |||||
| * | Add PushConditionalTempDestruction/PopConditionalTempDestruction. | Anders Carlsson | 2009-06-04 | 1 | -0/+19 | |
| | | | | | llvm-svn: 72835 | |||||
| * | More temporary work. | Anders Carlsson | 2009-06-03 | 1 | -2/+3 | |
| | | | | | llvm-svn: 72796 | |||||
| * | Store more information about live temporaries. No functionality change for now. | Anders Carlsson | 2009-06-03 | 1 | -1/+24 | |
| | | | | | llvm-svn: 72793 | |||||
| * | Add a new function for emitting new functions. | Anders Carlsson | 2009-05-31 | 1 | -0/+2 | |
| | | | | | llvm-svn: 72656 | |||||
| * | Emit destructors correctly for temporaries. | Anders Carlsson | 2009-05-31 | 1 | -0/+4 | |
| | | | | | llvm-svn: 72655 | |||||
| * | Add lvalue irgen support for CXXBindTemporaryExpr. | Anders Carlsson | 2009-05-30 | 1 | -0/+1 | |
| | | | | | llvm-svn: 72649 | |||||
| * | More temporary support. | Anders Carlsson | 2009-05-30 | 1 | -1/+6 | |
| | | | | | llvm-svn: 72648 | |||||
| * | Add code for emitting C++ destructors. Not used yet. | Anders Carlsson | 2009-05-29 | 1 | -0/+4 | |
| | | | | | llvm-svn: 72591 | |||||
| * | Fixup the rest of the trivial cases of the codegen of volatile. If | Mike Stump | 2009-05-29 | 1 | -2/+5 | |
| | | | | | | | | any body can spot codegen bugs with volatile, or knows of any in the bug database, let me know. llvm-svn: 72572 | |||||
| * | Handle operator call expressions where the callee is a member function. | Anders Carlsson | 2009-05-27 | 1 | -0/+3 | |
| | | | | | llvm-svn: 72458 | |||||
| * | Rename an EmitCallExpr function to EmitCall to make it clear that it doesn't ↵ | Anders Carlsson | 2009-05-27 | 1 | -7/+5 | |
| | | | | | | | emit an expr. llvm-svn: 72446 | |||||
| * | Fixup codegen for volatile structs in the trivial cases (a a=a and a=a=a). | Mike Stump | 2009-05-26 | 1 | -2/+5 | |
| | | | | | llvm-svn: 72439 | |||||
| * | Track volatile aggregate copies better. I'm hoping someone else will decide | Mike Stump | 2009-05-23 | 1 | -1/+5 | |
| | | | | | | | how to get the backend to know that the operation is volatile. llvm-svn: 72348 | |||||
| * | Add EmitReferenceBindingToExpr. Have EmitCallArg use it for now. Doesn't ↵ | Anders Carlsson | 2009-05-20 | 1 | -0/+4 | |
| | | | | | | | support anything but at least we don't crash ;) llvm-svn: 72147 | |||||
| * | Pass the destination QualType to EmitStoreOfScalar. No functionality change. | Anders Carlsson | 2009-05-19 | 1 | -1/+1 | |
| | | | | | llvm-svn: 72118 | |||||
| * | Factor code that's common to EmitCXXMemberCallExpr and ↵ | Anders Carlsson | 2009-05-11 | 1 | -0/+7 | |
| | | | | | | | EmitCXXConstructorCall out into a EmitCXXMemberCall function. llvm-svn: 71514 | |||||

