| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Remove old thunks code. | Anders Carlsson | 2010-03-24 | 5 | -339/+0 | |
| | | | | | llvm-svn: 99374 | |||||
| * | Flip the switch and use the new vtable layout code for thunks by default. ↵ | Anders Carlsson | 2010-03-24 | 1 | -7/+0 | |
| | | | | | | | Add a thunks.cpp test. llvm-svn: 99367 | |||||
| * | Add CodeGenFunction::GenerateThunk and implement it. | Anders Carlsson | 2010-03-24 | 2 | -1/+179 | |
| | | | | | llvm-svn: 99365 | |||||
| * | Minor cleanup. | Anders Carlsson | 2010-03-24 | 1 | -10/+8 | |
| | | | | | llvm-svn: 99364 | |||||
| * | revert 99311. Looks like it broke darwin bootstrap. | Rafael Espindola | 2010-03-23 | 2 | -22/+3 | |
| | | | | | llvm-svn: 99317 | |||||
| * | Avoid producing implicit methods when we have a explicit template instantiation | Rafael Espindola | 2010-03-23 | 2 | -3/+22 | |
| | | | | | | | declaration. llvm-svn: 99311 | |||||
| * | Code gen for compound assignment of complex | Fariborz Jahanian | 2010-03-23 | 1 | -2/+7 | |
| | | | | | | | | types using property syntax to access setter/getters. (also radar 7351147). llvm-svn: 99307 | |||||
| * | More work on thunks - don't assert if there's a variable with the same name ↵ | Anders Carlsson | 2010-03-23 | 2 | -2/+34 | |
| | | | | | | | as the thunk already. llvm-svn: 99303 | |||||
| * | Patch to implement code gen. use of compound assignent on | Fariborz Jahanian | 2010-03-23 | 1 | -6/+19 | |
| | | | | | | | properties of complex type. Radar 7351147. llvm-svn: 99299 | |||||
| * | More thunks scaffolding. | Anders Carlsson | 2010-03-23 | 4 | -5/+86 | |
| | | | | | llvm-svn: 99294 | |||||
| * | More work on thunks. | Anders Carlsson | 2010-03-23 | 2 | -1/+68 | |
| | | | | | llvm-svn: 99287 | |||||
| * | Move ThunkInfo as well. | Anders Carlsson | 2010-03-23 | 2 | -29/+28 | |
| | | | | | llvm-svn: 99280 | |||||
| * | Move ReturnAdjustment and ThisAdjustment out into CGVtable.h | Anders Carlsson | 2010-03-23 | 2 | -64/+63 | |
| | | | | | llvm-svn: 99279 | |||||
| * | Use the canonical destructor, which fixes the self-host build. Thanks to Eli ↵ | Anders Carlsson | 2010-03-23 | 1 | -1/+2 | |
| | | | | | | | for noticing. llvm-svn: 99260 | |||||
| * | Baby steps towards making thunks be emitted from the new vtable layout code. | Anders Carlsson | 2010-03-23 | 2 | -9/+18 | |
| | | | | | llvm-svn: 99254 | |||||
| * | Some renames. | Anders Carlsson | 2010-03-23 | 1 | -19/+18 | |
| | | | | | llvm-svn: 99253 | |||||
| * | Always emit associated thunks when emitting the function itself. Remove ↵ | Anders Carlsson | 2010-03-23 | 4 | -43/+15 | |
| | | | | | | | getVtableAddressPoint, it's not used. llvm-svn: 99252 | |||||
| * | Rename MaybeEmitVtable to EmitVTableRelatedData in preparation for making it ↵ | Anders Carlsson | 2010-03-23 | 3 | -3/+5 | |
| | | | | | | | emit thunks as well. llvm-svn: 99251 | |||||
| * | Rename CGVtableInfo to CodeGenVTables in preparation of adding another ↵ | Anders Carlsson | 2010-03-23 | 13 | -87/+85 | |
| | | | | | | | VTableInfo class. llvm-svn: 99250 | |||||
| * | Comment the reasons for the strange little dance we do with the main file ↵ | Douglas Gregor | 2010-03-22 | 1 | -0/+4 | |
| | | | | | | | name for debug information llvm-svn: 99215 | |||||
| * | More work on thunks; almost there now. | Anders Carlsson | 2010-03-22 | 1 | -9/+34 | |
| | | | | | llvm-svn: 99199 | |||||
| * | Add less than operators to ThisAdjustment, ReturnAdjustment and ThunkInfo. ↵ | Anders Carlsson | 2010-03-22 | 1 | -1/+29 | |
| | | | | | | | Sort the thunks before dumping them. llvm-svn: 99184 | |||||
| * | Improve dumping of thunks. | Anders Carlsson | 2010-03-22 | 1 | -3/+16 | |
| | | | | | llvm-svn: 99181 | |||||
| * | We want to add all thunks, not just 'this' adjustment thunks. | Anders Carlsson | 2010-03-22 | 1 | -2/+25 | |
| | | | | | llvm-svn: 99177 | |||||
| * | AddThunk should take a const reference. | Anders Carlsson | 2010-03-21 | 1 | -2/+2 | |
| | | | | | llvm-svn: 99140 | |||||
| * | Fix PR6648 by not creating a temporary with the type of a | Rafael Espindola | 2010-03-21 | 1 | -4/+0 | |
| | | | | | | | | | | | | CXXExprWithTemporaries. Not emitting the expression as an aggregate might be the right thing to do, but is orthogonal. Emitting it as an scalar expression will still try to create a temporary for the incomplete type of the CXXExprWithTemporaries and fail. llvm-svn: 99134 | |||||
| * | Fixed synthesizing properties declared in properties (GNU runtime). | David Chisnall | 2010-03-20 | 1 | -1/+1 | |
| | | | | | llvm-svn: 99077 | |||||
| * | IRgen: Wrap atomic intrinsics with memory barriers, to ensure we honor the ↵ | Daniel Dunbar | 2010-03-20 | 1 | -25/+51 | |
| | | | | | | | | | semantics. - This should be conservatively correct, we eventually should have target hooks for platforms that are less strict. llvm-svn: 99050 | |||||
| * | C++: Add support for -fno-use-cxa-atexit. | Daniel Dunbar | 2010-03-20 | 4 | -18/+101 | |
| | | | | | | | | | - So much typing, so little gain... Also, rename the __cxx_global_initialization function just to match llvm-gcc. llvm-svn: 99039 | |||||
| * | IRgen: Inline GenerateCXXGlobal[VarDecl]InitFunc into sole caller. | Daniel Dunbar | 2010-03-20 | 2 | -38/+15 | |
| | | | | | llvm-svn: 99038 | |||||
| * | Change CodeGenModule to rely on the Module's symbol table instead of | John McCall | 2010-03-19 | 6 | -172/+156 | |
| | | | | | | | | | | | | | | shadowing it in the GlobalDeclMap. Eliminates the string-uniquing requirement for mangled names, which should help C++ codegen times a little. Forces us to do string lookups instead of pointer lookups, which might hurt codegen times a little across the board. We'll see how it plays out. Removing the string-uniquing requirement implicitly fixes any bugs like PR6635 which arose from the fact that we had multiple uniquing tables for different kinds of identifiers. llvm-svn: 99012 | |||||
| * | Try to improve computation of the main file name for debug | Douglas Gregor | 2010-03-19 | 1 | -7/+10 | |
| | | | | | | | information, to address recent gdb failures. llvm-svn: 98959 | |||||
| * | For debug information, get the main file name from the source manager | Douglas Gregor | 2010-03-18 | 1 | -2/+7 | |
| | | | | | | | | rather than from the -main-file-name flag, since the source manager has proper path information. Fixes <rdar://problem/7769538>. llvm-svn: 98898 | |||||
| * | Replace some SmallVectors with arrays. | Benjamin Kramer | 2010-03-18 | 1 | -21/+13 | |
| | | | | | llvm-svn: 98833 | |||||
| * | When dumping vtables, also dump the thunks. | Anders Carlsson | 2010-03-18 | 1 | -9/+66 | |
| | | | | | llvm-svn: 98799 | |||||
| * | More work on thunks. | Anders Carlsson | 2010-03-17 | 1 | -2/+39 | |
| | | | | | llvm-svn: 98765 | |||||
| * | Correctly mangle dependent TypenameType. | Rafael Espindola | 2010-03-17 | 1 | -24/+21 | |
| | | | | | | | Fixes PR6625. llvm-svn: 98707 | |||||
| * | Fixed copy-and-paste error causing categories to contain the protocols ↵ | David Chisnall | 2010-03-13 | 1 | -2/+2 | |
| | | | | | | | declared on the class, not the protocols declared on the category. llvm-svn: 98455 | |||||
| * | Give explicit template instantiations weak ODR linkage. Former | Douglas Gregor | 2010-03-13 | 2 | -8/+18 | |
| | | | | | | | | | | iterations of this patch gave explicit template instantiation link-once ODR linkage, which permitted the back end to eliminate unused symbols. Weak ODR linkage still requires the symbols to be generated. llvm-svn: 98441 | |||||
| * | Use raw_ostream instead of sprintf. | Benjamin Kramer | 2010-03-13 | 1 | -3/+2 | |
| | | | | | llvm-svn: 98438 | |||||
| * | Use SmallString instead of SmallVector | Kovarththanan Rajaratnam | 2010-03-13 | 1 | -52/+52 | |
| | | | | | llvm-svn: 98436 | |||||
| * | Re-revert the explicit template instantiation linkage patch. I am beginning ↵ | Douglas Gregor | 2010-03-13 | 2 | -12/+9 | |
| | | | | | | | to look incompetent llvm-svn: 98425 | |||||
| * | Reinstate patch to turn explicit template instantiations into weak symbols | Douglas Gregor | 2010-03-13 | 2 | -9/+12 | |
| | | | | | llvm-svn: 98424 | |||||
| * | Allow users to set CPPFLAGS and CXXFLAGS on the make command line. | Jeffrey Yasskin | 2010-03-12 | 1 | -2/+2 | |
| | | | | | | Tested: make CPPFLAGS=-m64 CXXFLAGS=-m64 -j8 && (cd tools/clang;make test) llvm-svn: 98399 | |||||
| * | Fix a rare corner case bug which exposed a serious block API generation | Fariborz Jahanian | 2010-03-12 | 1 | -62/+62 | |
| | | | | | | | | | | | | when initialized variable is a byref block variable and is referenced recursively in the initializer (you guessed it, it is block implementation of fibonacci number). Fix, on the other hand is trvial, by generating the API for byref variable before API for its initializer. We will have this test added to our internal test suite as a clang-style test is not possible due to very convoluted IR sequence. Fixes radar 7745514. llvm-svn: 98393 | |||||
| * | If main file name is empty then use "<unknown>". | Devang Patel | 2010-03-12 | 1 | -1/+4 | |
| | | | | | llvm-svn: 98385 | |||||
| * | More this adjustment simplification. | Anders Carlsson | 2010-03-12 | 1 | -56/+59 | |
| | | | | | llvm-svn: 98333 | |||||
| * | Revert the linkage change for explicit template instantiations; something is ↵ | Douglas Gregor | 2010-03-12 | 2 | -12/+9 | |
| | | | | | | | amiss llvm-svn: 98332 | |||||
| * | Remove OldOffset. | Anders Carlsson | 2010-03-12 | 1 | -7/+2 | |
| | | | | | llvm-svn: 98331 | |||||
| * | Remove debug output. | Anders Carlsson | 2010-03-12 | 1 | -3/+0 | |
| | | | | | llvm-svn: 98330 | |||||

