Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Correctly mangle the 'std' namespace inside extern "C++" blocks. | Anders Carlsson | 2009-12-04 | 1 | -13/+23 | |
| | | | | llvm-svn: 90544 | |||||
* | Make sure that overridden method decls are always canonical. | Anders Carlsson | 2009-12-04 | 1 | -2/+2 | |
| | | | | llvm-svn: 90542 | |||||
* | Fix regression in vtable improvements. | Eli Friedman | 2009-12-04 | 1 | -2/+2 | |
| | | | | llvm-svn: 90540 | |||||
* | Try/catch statements seem to be working well enough to turn on. | Mike Stump | 2009-12-04 | 1 | -1/+1 | |
| | | | | llvm-svn: 90538 | |||||
* | Disable for now, doesn't play nice with the temporary code. | Mike Stump | 2009-12-04 | 1 | -1/+5 | |
| | | | | llvm-svn: 90537 | |||||
* | Rename method to something easier to search for. | Eli Friedman | 2009-12-04 | 1 | -7/+10 | |
| | | | | llvm-svn: 90536 | |||||
* | More work in preparation of getting rid of the submethods loop. | Anders Carlsson | 2009-12-04 | 1 | -4/+6 | |
| | | | | llvm-svn: 90535 | |||||
* | Remove an unused member variable. | Anders Carlsson | 2009-12-04 | 1 | -6/+1 | |
| | | | | llvm-svn: 90534 | |||||
* | Add a way to get the index of a method. Assert that we have the same index ↵ | Anders Carlsson | 2009-12-04 | 1 | -5/+10 | |
| | | | | | | for now. llvm-svn: 90533 | |||||
* | Add a premature optimization. | Anders Carlsson | 2009-12-04 | 1 | -0/+3 | |
| | | | | llvm-svn: 90532 | |||||
* | Add the method directly to the vtable. | Anders Carlsson | 2009-12-04 | 1 | -6/+11 | |
| | | | | llvm-svn: 90531 | |||||
* | Get rid of the PureVirtualMethods map. | Anders Carlsson | 2009-12-04 | 1 | -11/+0 | |
| | | | | llvm-svn: 90530 | |||||
* | Move handling of pure virtual methods to AppendMethods (and rename it to ↵ | Anders Carlsson | 2009-12-04 | 1 | -14/+6 | |
| | | | | | | AppendMethodsToVtable). llvm-svn: 90529 | |||||
* | Move covariant thunk handling to AppendMethods too. | Anders Carlsson | 2009-12-04 | 1 | -43/+30 | |
| | | | | llvm-svn: 90528 | |||||
* | Move 'this' pointer adjustment thunks to AppendMethods. | Anders Carlsson | 2009-12-04 | 1 | -15/+13 | |
| | | | | llvm-svn: 90527 | |||||
* | Make functions returning a struct indirectly evaluate the returned struct | Eli Friedman | 2009-12-04 | 3 | -5/+15 | |
| | | | | | | | directly into the sret pointer. This is an optimization in C, but is required for correctness in C++ for classes with a non-trivial copy constructor. llvm-svn: 90526 | |||||
* | Factor appending methods to a vtable out into a separate function. | Anders Carlsson | 2009-12-04 | 1 | -6/+13 | |
| | | | | llvm-svn: 90525 | |||||
* | Get rid of the Thunks struct too. | Anders Carlsson | 2009-12-04 | 1 | -26/+16 | |
| | | | | llvm-svn: 90524 | |||||
* | Remove the CovariantThunk struct. | Anders Carlsson | 2009-12-04 | 1 | -23/+15 | |
| | | | | llvm-svn: 90523 | |||||
* | Remove the GlobalDecl from the Thunk as well. | Anders Carlsson | 2009-12-04 | 1 | -7/+5 | |
| | | | | llvm-svn: 90522 | |||||
* | Remove the GlobalDecl from the CovariantThunk struct, we can just look it up ↵ | Anders Carlsson | 2009-12-04 | 1 | -8/+5 | |
| | | | | | | in the Methods table now. llvm-svn: 90519 | |||||
* | Start populating the VtableMembers structure. | Anders Carlsson | 2009-12-04 | 1 | -1/+10 | |
| | | | | llvm-svn: 90517 | |||||
* | Add a data structure for efficient storing of vtable methods. Not used yet. | Anders Carlsson | 2009-12-04 | 1 | -0/+57 | |
| | | | | llvm-svn: 90515 | |||||
* | Fixup reference binding for catch parameters. | Mike Stump | 2009-12-04 | 1 | -6/+21 | |
| | | | | | | Fixup throws and rethrows to use invoke as appropriate. llvm-svn: 90513 | |||||
* | Update chunk of #if 0'ed code to remove fixed FIXME and make it compile. We | Eli Friedman | 2009-12-04 | 1 | -11/+6 | |
| | | | | | | | probably want to do some sort of performance assessment before enabling it, though. llvm-svn: 90510 | |||||
* | These are done. | Mike Stump | 2009-12-03 | 1 | -2/+0 | |
| | | | | llvm-svn: 90494 | |||||
* | Improve catch parameter bindings for scalar non-pointers. WIP. | Mike Stump | 2009-12-03 | 1 | -4/+8 | |
| | | | | llvm-svn: 90492 | |||||
* | Handle static_assert inside functions. | Anders Carlsson | 2009-12-03 | 1 | -0/+1 | |
| | | | | llvm-svn: 90461 | |||||
* | Eli, I copied my code from this code... Let's fix the souce of the bad idea! | Mike Stump | 2009-12-03 | 1 | -4/+1 | |
| | | | | | | Thanks. llvm-svn: 90458 | |||||
* | Fix for PR5659: correct a rather nasty oversight in the type conversion for | Eli Friedman | 2009-12-03 | 1 | -4/+4 | |
| | | | | | | member pointer types. llvm-svn: 90450 | |||||
* | Convert ABIArgInfo::dump to raw_ostream. | Daniel Dunbar | 2009-12-03 | 1 | -11/+11 | |
| | | | | llvm-svn: 90440 | |||||
* | Attempt to fix the MSVC build. | Anders Carlsson | 2009-12-03 | 1 | -4/+4 | |
| | | | | llvm-svn: 90427 | |||||
* | Fix thunk generation for thunks with a parameter with reference type. | Eli Friedman | 2009-12-03 | 1 | -1/+2 | |
| | | | | llvm-svn: 90412 | |||||
* | Minor cleanup. | Eli Friedman | 2009-12-03 | 3 | -12/+7 | |
| | | | | llvm-svn: 90411 | |||||
* | Add support for thunking dtors. Oh why does this make my head hurt? | Mike Stump | 2009-12-03 | 4 | -15/+27 | |
| | | | | llvm-svn: 90409 | |||||
* | Reflow. | Mike Stump | 2009-12-03 | 1 | -1/+3 | |
| | | | | llvm-svn: 90407 | |||||
* | Revert r90402 for now, virt.cpp is failing. | Anders Carlsson | 2009-12-03 | 1 | -11/+9 | |
| | | | | llvm-svn: 90406 | |||||
* | Use Eli's ComputeThunkAdjustment for calculating the return adjustment. | Anders Carlsson | 2009-12-03 | 1 | -9/+11 | |
| | | | | llvm-svn: 90402 | |||||
* | Add CodeGenModule::ComputeThunkAdjustment, which Eli wrote. | Anders Carlsson | 2009-12-03 | 2 | -1/+42 | |
| | | | | llvm-svn: 90401 | |||||
* | Remove the index from the Thunk struct. | Anders Carlsson | 2009-12-03 | 1 | -14/+10 | |
| | | | | llvm-svn: 90400 | |||||
* | Change the Thunks map to use the vtable index as the key. | Anders Carlsson | 2009-12-03 | 1 | -7/+9 | |
| | | | | llvm-svn: 90399 | |||||
* | Add the global decl to the Thunk struct. | Anders Carlsson | 2009-12-03 | 1 | -5/+7 | |
| | | | | llvm-svn: 90398 | |||||
* | Remove unused struct fields. | Anders Carlsson | 2009-12-03 | 1 | -7/+2 | |
| | | | | llvm-svn: 90397 | |||||
* | Delay computing the return adjustments for covariant thunks until when they ↵ | Anders Carlsson | 2009-12-03 | 1 | -98/+113 | |
| | | | | | | are added to the vtable. llvm-svn: 90396 | |||||
* | No need to create the covariant thunk in both places now. | Anders Carlsson | 2009-12-03 | 1 | -12/+5 | |
| | | | | llvm-svn: 90394 | |||||
* | Whoops, forgot to save :) | Anders Carlsson | 2009-12-03 | 1 | -2/+4 | |
| | | | | llvm-svn: 90393 | |||||
* | Remove the index field from the CovariantThunk structure. | Anders Carlsson | 2009-12-03 | 1 | -14/+6 | |
| | | | | llvm-svn: 90392 | |||||
* | Change the CovariantThunk map to use the vtable index as its key. | Anders Carlsson | 2009-12-03 | 1 | -9/+9 | |
| | | | | llvm-svn: 90391 | |||||
* | Store a GlobalDecl in the return adjustment. | Anders Carlsson | 2009-12-03 | 1 | -4/+7 | |
| | | | | llvm-svn: 90387 | |||||
* | Do not include the 'this' pointer adjustment in the covariant return type. ↵ | Anders Carlsson | 2009-12-03 | 1 | -26/+39 | |
| | | | | | | Instead, store it in the (now oddly named) Thunks map. llvm-svn: 90386 |