| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Improve key-function computation for templates. In particular: | Douglas Gregor | 2010-01-05 | 2 | -3/+18 | |
| | | | | | | | | | | | | | | | | | - All classes can have a key function; templates don't change that. non-template classes when computing the key function. - We always mark all of the virtual member functions of class template instantiations. - The vtable for an instantiation of a class template has weak linkage. We could probably use available_externally linkage for vtables of classes instantiated by explicit instantiation declarations (extern templates), but GCC doesn't do this and I'm not 100% that the ABI permits it. llvm-svn: 92753 | |||||
| * | Add code to skip the emission of available externally functions at -O0. WIP. | Mike Stump | 2010-01-05 | 1 | -0/+10 | |
| | | | | | llvm-svn: 92749 | |||||
| * | When emitting member function pointers, use the canonical decl if the member ↵ | Anders Carlsson | 2010-01-05 | 2 | -1/+4 | |
| | | | | | | | function is virtual. Fixes PR5940. llvm-svn: 92680 | |||||
| * | Revert r92431, this code isn't dead and broke the ntfs build. | Daniel Dunbar | 2010-01-04 | 1 | -0/+1 | |
| | | | | | llvm-svn: 92493 | |||||
| * | Fix -Asserts warning. | Daniel Dunbar | 2010-01-04 | 1 | -2/+2 | |
| | | | | | llvm-svn: 92491 | |||||
| * | Get rid of more dead code. | Eli Friedman | 2010-01-03 | 2 | -51/+0 | |
| | | | | | llvm-svn: 92439 | |||||
| * | Get rid of some unnecessary code. | Eli Friedman | 2010-01-02 | 1 | -27/+2 | |
| | | | | | llvm-svn: 92432 | |||||
| * | Delete impossible case. | Eli Friedman | 2010-01-02 | 1 | -1/+0 | |
| | | | | | llvm-svn: 92431 | |||||
| * | Speculative MSVC fix. | Anders Carlsson | 2010-01-02 | 1 | -3/+2 | |
| | | | | | llvm-svn: 92421 | |||||
| * | Move address points to CGVtableInfo, no functionality change. | Anders Carlsson | 2010-01-02 | 5 | -15/+16 | |
| | | | | | llvm-svn: 92420 | |||||
| * | Correctly pass VTT parameters to constructors and destructors. The VTTs ↵ | Anders Carlsson | 2010-01-02 | 6 | -83/+202 | |
| | | | | | | | aren't yet used in the ctors/dtors, but that will follow. llvm-svn: 92409 | |||||
| * | Move a few more functions away from CGCXX and to CGClass and CGExprCXX. | Anders Carlsson | 2010-01-01 | 4 | -673/+672 | |
| | | | | | llvm-svn: 92399 | |||||
| * | Fix last patch, catch of reference to non-pointer. | Mike Stump | 2010-01-01 | 1 | -10/+12 | |
| | | | | | llvm-svn: 92386 | |||||
| * | Fix catching a reference to a pointer. | Mike Stump | 2010-01-01 | 1 | -3/+15 | |
| | | | | | llvm-svn: 92385 | |||||
| * | If the key function of a record is inline, then the RTTI data should have ↵ | Anders Carlsson | 2009-12-31 | 1 | -0/+8 | |
| | | | | | | | weak_odr linkage. llvm-svn: 92371 | |||||
| * | More RTTI builder cleanup. | Anders Carlsson | 2009-12-31 | 1 | -76/+26 | |
| | | | | | llvm-svn: 92360 | |||||
| * | Fix a bunch of bugs with VMI RTTI building, and add a whole bunch of tests. | Anders Carlsson | 2009-12-30 | 2 | -215/+190 | |
| | | | | | llvm-svn: 92319 | |||||
| * | More RTTI cleanup, test that RTTI classes have the correct vtables. | Anders Carlsson | 2009-12-30 | 1 | -52/+57 | |
| | | | | | llvm-svn: 92284 | |||||
| * | Match gcc and treat vector types as fundamental types. | Anders Carlsson | 2009-12-29 | 1 | -9/+23 | |
| | | | | | llvm-svn: 92278 | |||||
| * | Handle enum types as well. | Anders Carlsson | 2009-12-29 | 1 | -3/+22 | |
| | | | | | llvm-svn: 92276 | |||||
| * | Test linkage of RTTI descriptors of array types. | Anders Carlsson | 2009-12-29 | 1 | -29/+61 | |
| | | | | | llvm-svn: 92274 | |||||
| * | Fix function type RTTI linkage and add tests. | Anders Carlsson | 2009-12-29 | 1 | -4/+14 | |
| | | | | | llvm-svn: 92266 | |||||
| * | strength reduce this call away. | Chris Lattner | 2009-12-29 | 1 | -1/+2 | |
| | | | | | llvm-svn: 92253 | |||||
| * | Get rid of FixedWidthIntType, as suggested by Chris and Eli. | Anders Carlsson | 2009-12-29 | 3 | -12/+4 | |
| | | | | | llvm-svn: 92246 | |||||
| * | adjust for llvm api changes. | Chris Lattner | 2009-12-28 | 1 | -10/+2 | |
| | | | | | llvm-svn: 92236 | |||||
| * | this form of SetDebugLocation is about to go away, add some #includes that | Chris Lattner | 2009-12-28 | 2 | -7/+15 | |
| | | | | | | | are about to not come in implicitly. llvm-svn: 92228 | |||||
| * | Promote arguments of frameaddr / returnaddr builtins to i32 type, when needed. | Anton Korobeynikov | 2009-12-27 | 1 | -2/+10 | |
| | | | | | | | | This is needed for the platforms, where bitwidth of "int" is not 32 bits (e.g. 16 on msp430). llvm-svn: 92176 | |||||
| * | Add a sanity assertion so that we don't silently generate bad code; I'll file | Eli Friedman | 2009-12-27 | 1 | -0/+2 | |
| | | | | | | | a bug with a testcase hitting this assertion in a moment. llvm-svn: 92175 | |||||
| * | Fix obvious mistake. | Eli Friedman | 2009-12-27 | 1 | -1/+1 | |
| | | | | | llvm-svn: 92172 | |||||
| * | Remove some dead variables clang-analyzer found. | Benjamin Kramer | 2009-12-25 | 3 | -7/+2 | |
| | | | | | llvm-svn: 92162 | |||||
| * | Minor optimization; emit proper unsupported messages for a couple of cases. | Eli Friedman | 2009-12-25 | 3 | -6/+16 | |
| | | | | | llvm-svn: 92153 | |||||
| * | Some small improvements to dead code elimination; helps a bit on | Eli Friedman | 2009-12-25 | 2 | -1/+10 | |
| | | | | | | | LLVM-Code-Symbols test. llvm-svn: 92152 | |||||
| * | Make copy constructor elimination work in more cases; the case in question | Eli Friedman | 2009-12-24 | 1 | -0/+3 | |
| | | | | | | | here affects clang-on-clang. llvm-svn: 92151 | |||||
| * | Move a bunch of class related functions to CGClass.cpp, no functionality change. | Anders Carlsson | 2009-12-24 | 2 | -774/+775 | |
| | | | | | llvm-svn: 92148 | |||||
| * | Pass the return value slot to all call exprs. | Anders Carlsson | 2009-12-24 | 5 | -20/+29 | |
| | | | | | llvm-svn: 92145 | |||||
| * | Fill in the return value slot in CGExprAgg::VisitCallExpr. This takes us ↵ | Anders Carlsson | 2009-12-24 | 7 | -20/+51 | |
| | | | | | | | halfway towards fixing PR5824. llvm-svn: 92142 | |||||
| * | Pass ReturnValueSlot to EmitCall. No functionality change yet. | Anders Carlsson | 2009-12-24 | 11 | -26/+29 | |
| | | | | | llvm-svn: 92138 | |||||
| * | Add a ReturnValueSlot class. Change the argument order in EmitCall to match ↵ | Anders Carlsson | 2009-12-24 | 5 | -10/+25 | |
| | | | | | | | the other overload better. llvm-svn: 92136 | |||||
| * | Fix double-destruction assertion to account for temporaries in conditionals | Douglas Gregor | 2009-12-24 | 1 | -1/+2 | |
| | | | | | llvm-svn: 92134 | |||||
| * | Assert that we aren't trying to push the same C++ temporary onto the live ↵ | Douglas Gregor | 2009-12-24 | 1 | -0/+3 | |
| | | | | | | | temporary stack twice. A little insurance against PR5867 surprising us again llvm-svn: 92132 | |||||
| * | Remove some dead code. | Mike Stump | 2009-12-24 | 1 | -29/+19 | |
| | | | | | llvm-svn: 92123 | |||||
| * | Cleanup some dead code. | Mike Stump | 2009-12-24 | 1 | -3/+1 | |
| | | | | | llvm-svn: 92122 | |||||
| * | Don't set hidden for a non-external symbol as that would make it extenal. | Mike Stump | 2009-12-24 | 1 | -1/+29 | |
| | | | | | | | Refine codegen for visibility and hidden. WIP. llvm-svn: 92118 | |||||
| * | Fix for bug 5691. | David Chisnall | 2009-12-24 | 1 | -6/+24 | |
| | | | | | | | | | This fixes throwing exceptions inside @catch blocks nested inside outer @try blocks and also fixes jumping from an inner @finally to an outer @finally (via any relevant @catch blocks). The code exhibiting this bug was based on code from CGObjCMac. I believe that this bug may still be present on the Mac runtimes, although the test case in the bug contains a few GNUisms and won't compile without some minor tweaks with Apple's libobjc. llvm-svn: 92117 | |||||
| * | Fix recent regression caught by g++.old-deja/g++.mike/eh19.C. | Mike Stump | 2009-12-24 | 1 | -0/+20 | |
| | | | | | llvm-svn: 92109 | |||||
| * | Fix regression found by g++.dg/eh/alias1.C. | Mike Stump | 2009-12-23 | 1 | -0/+4 | |
| | | | | | llvm-svn: 92072 | |||||
| * | Mangle block pointer types. Fixes PR5858. | Anders Carlsson | 2009-12-23 | 1 | -1/+2 | |
| | | | | | llvm-svn: 92069 | |||||
| * | There is no such thing as typeinfo for a cv-qualified type. Assert | Douglas Gregor | 2009-12-23 | 3 | -4/+12 | |
| | | | | | | | | | that this is true when mangling, then fix up the various places in Sema and/or CodeGen that need to remove qualifiers. Addresses a linking issue when building LLVM with Clang. llvm-svn: 92064 | |||||
| * | simplify my previous patch. | Chris Lattner | 2009-12-23 | 1 | -9/+2 | |
| | | | | | llvm-svn: 92057 | |||||
| * | fix opencl extvector element extraction on rvalues. We previously | Chris Lattner | 2009-12-23 | 1 | -8/+30 | |
| | | | | | | | error_unsupported on test10 and crashed on test11. llvm-svn: 92056 | |||||

