Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Convert the type of the LValue offset variable in APValue to CharUnits, moving | Ken Dyck | 2010-01-15 | 1 | -1/+1 | |
| | | | | | | the LValue-related methods of APValue out of line to avoid header file leaching. llvm-svn: 93512 | |||||
* | Emit linkage name even if it matches regular name. The code generator uses ↵ | Devang Patel | 2010-01-14 | 1 | -3/+3 | |
| | | | | | | linkage name to find subprogram entry for the current function. llvm-svn: 93461 | |||||
* | Add comment. | Devang Patel | 2010-01-14 | 1 | -0/+3 | |
| | | | | llvm-svn: 93434 | |||||
* | Made ObjC method name mangling match GCC (which does it in a stupid and ↵ | David Chisnall | 2010-01-14 | 1 | -2/+5 | |
| | | | | | | broken way that can give conflicts on method names containing underscores, but is needed for gdb to work because gdb does not know how to read ObjC class tables and relies on the mangling). llvm-svn: 93427 | |||||
* | Store the address points for constructor vtables directly in the VTT ↵ | Anders Carlsson | 2010-01-14 | 2 | -24/+99 | |
| | | | | | | builder, because that's the only time they're needed. llvm-svn: 93412 | |||||
* | Add a DenseMapInfo specialization for BaseSubobject. | Anders Carlsson | 2010-01-14 | 1 | -2/+37 | |
| | | | | llvm-svn: 93399 | |||||
* | Because CurLoc is the current source location as far as CGDebugInfo is ↵ | Devang Patel | 2010-01-14 | 1 | -1/+0 | |
| | | | | | | concerned. It is expected that this is set (usually left bracket location of function body compound statement) before EmitfunctionStart() is used. llvm-svn: 93389 | |||||
* | Emit human readable names for c/c++ functions. Avoid emitting linkage name ↵ | Devang Patel | 2010-01-14 | 3 | -15/+51 | |
| | | | | | | if it matches regular name. llvm-svn: 93383 | |||||
* | Add a BaseSubobject class to uniquely identify a base class subobject. Not ↵ | Anders Carlsson | 2010-01-13 | 1 | -0/+25 | |
| | | | | | | yet used. llvm-svn: 93345 | |||||
* | Use the new isInteger() method in a couple places, some random cleanup, and | Chris Lattner | 2010-01-11 | 1 | -23/+15 | |
| | | | | | | add a fixme. llvm-svn: 93179 | |||||
* | Fix type mismatch on 64-bit platforms (GNU ObjC). | David Chisnall | 2010-01-11 | 1 | -1/+1 | |
| | | | | llvm-svn: 93169 | |||||
* | Roll out ASTContext::getTypeSizeInChars(), replacing instances of | Ken Dyck | 2010-01-11 | 8 | -51/+63 | |
| | | | | | | | | | | "ASTContext::getTypeSize() / 8". Replace [u]int64_t variables with CharUnits ones as appropriate. Also rename RawType, fromRaw(), and getRaw() in CharUnits to QuantityType, fromQuantity(), and getQuantity() for clarity. llvm-svn: 93153 | |||||
* | Try to make cmake happy | Anton Korobeynikov | 2010-01-10 | 1 | -1/+1 | |
| | | | | llvm-svn: 93119 | |||||
* | Generalize target weirdness handling having proper layering in mind: | Anton Korobeynikov | 2010-01-10 | 6 | -35/+175 | |
| | | | | | | | | | 1. Add helper class for sema checks for target attributes 2. Add helper class for codegen of target attributes As a proof-of-concept - implement msp430's 'interrupt' attribute. llvm-svn: 93118 | |||||
* | Rename file to generalization in next commits | Anton Korobeynikov | 2010-01-10 | 1 | -0/+0 | |
| | | | | llvm-svn: 93117 | |||||
* | implement codegen support for preinc as an lvalue, PR5514. | Chris Lattner | 2010-01-09 | 1 | -2/+10 | |
| | | | | llvm-svn: 93076 | |||||
* | refactor pre/postinc logic into CGF and require the caller to pass in the | Chris Lattner | 2010-01-09 | 4 | -129/+139 | |
| | | | | | | lvalue to poke, no functionality change. llvm-svn: 93075 | |||||
* | revert r92749, which is just dead code. | Chris Lattner | 2010-01-09 | 1 | -10/+0 | |
| | | | | llvm-svn: 93074 | |||||
* | Fix for PR5967: Make const-marking for LLVM globals correct for cases requiring | Eli Friedman | 2010-01-08 | 4 | -14/+42 | |
| | | | | | | | run-time initialization, and emit run-time initializers aggresively to avoid ordering issues with deferred globals. llvm-svn: 92976 | |||||
* | Export a public symbol for classes with the GNU runtime. | David Chisnall | 2010-01-08 | 1 | -5/+16 | |
| | | | | llvm-svn: 92973 | |||||
* | fix PR5869: mangle static symbols like gcc does to make it easier to diff ↵ | Nuno Lopes | 2010-01-07 | 1 | -1/+4 | |
| | | | | | | symbol tables llvm-svn: 92911 | |||||
* | Fix linkage for RTTI names by re-using the logic for computing the | Douglas Gregor | 2010-01-06 | 3 | -43/+26 | |
| | | | | | | | | linkage of vtables. Before this, we were emitting RTTI names for template instantiations with strong external linkage rather than with weak ODR linkage. llvm-svn: 92857 | |||||
* | Fix marking of virtual members for nested classes whose first non-pure ↵ | Douglas Gregor | 2010-01-06 | 3 | -45/+59 | |
| | | | | | | virtual function has a body inlined in the class llvm-svn: 92855 | |||||
* | Fix for PR5691 | David Chisnall | 2010-01-06 | 1 | -1/+1 | |
| | | | | llvm-svn: 92846 | |||||
* | Fix (invalid) may-be-uninitialized warning. | Daniel Dunbar | 2010-01-06 | 1 | -1/+2 | |
| | | | | llvm-svn: 92828 | |||||
* | Revert my available_externally vtables experiment. It's breaking the ↵ | Douglas Gregor | 2010-01-06 | 1 | -2/+7 | |
| | | | | | | LLVM-with-Clang build with linker errors that I have yet to investigate. llvm-svn: 92822 | |||||
* | Reorder to avoid invalidating idx which is an accessor into VCall. | Mike Stump | 2010-01-06 | 1 | -1/+1 | |
| | | | | llvm-svn: 92819 | |||||
* | Silence bogus GCC warning | Douglas Gregor | 2010-01-05 | 1 | -1/+2 | |
| | | | | llvm-svn: 92787 | |||||
* | Make use of available_externally linkage for vtables when the | Douglas Gregor | 2010-01-05 | 1 | -4/+19 | |
| | | | | | | | | | | non-inline key function of a class template instantiation, when no key function is present, the class template instantiation itself was instantiated with an explicit instantiation declaration (aka extern template). I'm fairly certain that the C++0x specification gives us this lattitude, although GCC doesn't take advantage of it. llvm-svn: 92779 | |||||
* | 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 |