| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | If the base type of a member call is a record type we don't need to emit a ↵ | Anders Carlsson | 2009-10-11 | 1 | -5/+6 |
| | | | | | | | virtual call. llvm-svn: 83816 | ||||
| * | Remove dead variable. | Benjamin Kramer | 2009-10-11 | 1 | -1/+1 |
| | | | | | llvm-svn: 83808 | ||||
| * | Add CGVtable.cpp to CMakeLists. | Benjamin Kramer | 2009-10-11 | 1 | -0/+1 |
| | | | | | llvm-svn: 83800 | ||||
| * | Move the vtable builder to CGVtable.cpp, general cleanup. | Anders Carlsson | 2009-10-11 | 7 | -554/+608 |
| | | | | | llvm-svn: 83798 | ||||
| * | Change mangleCXXVtable and mangleCXXRtti to take CXXRecordDecls instead of ↵ | Anders Carlsson | 2009-10-11 | 4 | -17/+17 |
| | | | | | | | QualTypes. llvm-svn: 83793 | ||||
| * | Move our (non-existing) RTTI emission code into CGRtti.cpp. No functionality ↵ | Anders Carlsson | 2009-10-10 | 3 | -32/+49 |
| | | | | | | | change. llvm-svn: 83732 | ||||
| * | Generate weak read barriers when reading a weak __block | Fariborz Jahanian | 2009-10-10 | 1 | -1/+5 |
| | | | | | | | variable inside the block. llvm-svn: 83729 | ||||
| * | Revert 83567. | Devang Patel | 2009-10-09 | 1 | -6/+3 |
| | | | | | llvm-svn: 83676 | ||||
| * | Allow customization for the producer information in the debug output. | Mike Stump | 2009-10-09 | 2 | -1/+8 |
| | | | | | llvm-svn: 83659 | ||||
| * | Avoid warning. | Mike Stump | 2009-10-09 | 1 | -1/+1 |
| | | | | | llvm-svn: 83609 | ||||
| * | Installation of Clang libraries and headers, from Axel Naumann! | Douglas Gregor | 2009-10-08 | 1 | -3/+0 |
| | | | | | llvm-svn: 83582 | ||||
| * | Record location info before emiting alloca for arguments. This allows ↵ | Devang Patel | 2009-10-08 | 1 | -3/+6 |
| | | | | | | | arguments to have proper location info. llvm-svn: 83567 | ||||
| * | If a global initializer has a non-trivial constructor or destructor, we ↵ | Anders Carlsson | 2009-10-08 | 1 | -0/+11 |
| | | | | | | | | | | | | | | | | | | | | never want to defer generation of it, even if it is declared static. With this change we're finally able to compile and run the (infamous) #include <string> #include <iostream> int main(int argc, char **argv) { std::cout << "Hello, World" << std::endl; } $ clang hello.cpp -lstdc++ -o hello $ ./hello Hello, World llvm-svn: 83559 | ||||
| * | Mangle std::basic_ostream<char, std::char_traits<char>> as So. | Anders Carlsson | 2009-10-08 | 1 | -0/+18 |
| | | | | | llvm-svn: 83557 | ||||
| * | Mangle anonymous structs/unions correctly. Fixes PR5139. | Anders Carlsson | 2009-10-07 | 2 | -3/+45 |
| | | | | | llvm-svn: 83448 | ||||
| * | Add a MangleContext and pass it to all mangle functions. It will be used for ↵ | Anders Carlsson | 2009-10-07 | 5 | -42/+58 |
| | | | | | | | keeping state, such as identifiers assigned to anonymous structs as well as scope encoding. llvm-svn: 83442 | ||||
| * | Uncomment some commented out code. | Anders Carlsson | 2009-10-06 | 1 | -4/+4 |
| | | | | | llvm-svn: 83428 | ||||
| * | Change GetAddressCXXOfBaseClass to use CXXBasePaths for calculating base ↵ | Anders Carlsson | 2009-10-06 | 3 | -66/+135 |
| | | | | | | | class offsets. Fix the code to handle virtual bases as well. llvm-svn: 83426 | ||||
| * | When mangling names, always use the canonical decl. Fixes PR5144. | Anders Carlsson | 2009-10-06 | 1 | -1/+1 |
| | | | | | llvm-svn: 83420 | ||||
| * | InsertSubprogramStart if ATTACH_DEBUG_INFO_TO_AN_INSN is not defined. | Devang Patel | 2009-10-06 | 1 | -1/+3 |
| | | | | | llvm-svn: 83419 | ||||
| * | Add support to attach debug info to an instruction. | Devang Patel | 2009-10-06 | 4 | -12/+46 |
| | | | | | | | This is not yet enabled. llvm-svn: 83399 | ||||
| * | Emit the destructor epilogue in a cleanup block so a return from a ↵ | Anders Carlsson | 2009-10-06 | 1 | -1/+20 |
| | | | | | | | destructor body still calls the epilogue. llvm-svn: 83397 | ||||
| * | Pass the right type to GetAddrOfFunction when getting functions for the ↵ | Anders Carlsson | 2009-10-06 | 1 | -4/+16 |
| | | | | | | | VTable. Fixes PR5021. llvm-svn: 83395 | ||||
| * | Set appropriate context for a global variable while emitting debug info. | Devang Patel | 2009-10-06 | 2 | -1/+21 |
| | | | | | llvm-svn: 83352 | ||||
| * | Fix thinko and simplify. | Mike Stump | 2009-10-05 | 1 | -2/+2 |
| | | | | | llvm-svn: 83342 | ||||
| * | Ensure we have atleast 2-byte alignment for member functions. | Mike Stump | 2009-10-05 | 1 | -0/+3 |
| | | | | | llvm-svn: 83337 | ||||
| * | Respect alignments better. | Mike Stump | 2009-10-05 | 1 | -0/+3 |
| | | | | | llvm-svn: 83328 | ||||
| * | Use new predicates for some type equality tests. | Benjamin Kramer | 2009-10-05 | 3 | -5/+4 |
| | | | | | llvm-svn: 83303 | ||||
| * | Pass the canonical method decl to GetVtableIndex. Fixes PR5120. | Anders Carlsson | 2009-10-03 | 2 | -2/+2 |
| | | | | | llvm-svn: 83272 | ||||
| * | Implement code generation of member function pointer calls. Fixes PR5121. | Anders Carlsson | 2009-10-03 | 4 | -1/+131 |
| | | | | | llvm-svn: 83271 | ||||
| * | Teach AggExprEmitter about pointers to member functions. | Anders Carlsson | 2009-10-03 | 1 | -0/+33 |
| | | | | | llvm-svn: 83266 | ||||
| * | Handle base-to-derived casts of member function pointers in CGExprConstant.cpp | Anders Carlsson | 2009-10-03 | 1 | -0/+37 |
| | | | | | llvm-svn: 83265 | ||||
| * | Handle members to function pointers in CGExprConstant. | Anders Carlsson | 2009-10-03 | 1 | -0/+43 |
| | | | | | llvm-svn: 83264 | ||||
| * | Move some functions from CodeGenFunctions to CodeGenModule so they can be ↵ | Anders Carlsson | 2009-10-03 | 5 | -18/+26 |
| | | | | | | | used by CGExprConstant. llvm-svn: 83263 | ||||
| * | Don't update the struct alignment when adding fields to a packed struct. ↵ | Anders Carlsson | 2009-10-02 | 1 | -1/+6 |
| | | | | | | | Fixes PR5118. llvm-svn: 83235 | ||||
| * | More magic pixie dust. | Mike Stump | 2009-10-02 | 1 | -3/+3 |
| | | | | | llvm-svn: 83232 | ||||
| * | Fix up debug information for block pointers a bit more. | Mike Stump | 2009-10-02 | 1 | -1/+3 |
| | | | | | llvm-svn: 83231 | ||||
| * | When building constant structs, check if the resulting LLVM struct will be ↵ | Anders Carlsson | 2009-10-02 | 1 | -38/+59 |
| | | | | | | | bigger than the record layout size and use a packed struct if that's the case. Fixes PR5108. llvm-svn: 83230 | ||||
| * | Implement a FIXME. This improves codegen just a tad. | Mike Stump | 2009-10-01 | 2 | -11/+12 |
| | | | | | llvm-svn: 83221 | ||||
| * | CodeGen may see out-of-line declarations of the various special member | Douglas Gregor | 2009-10-01 | 1 | -14/+23 |
| | | | | | | | | | | | | functions when they are explicitly declared, e.g., via a function template specialization or explicit template instantiation declaration. Don't try to synthesize bodies for the special member functions in this case; rather, check whether we have an implicit declaration and, if so, synthesize the appropriate function body. Fixes PR5084. llvm-svn: 83212 | ||||
| * | Fix a lame regression in IR gen for C++ delete expressions. PR5102 | Douglas Gregor | 2009-10-01 | 1 | -0/+2 |
| | | | | | llvm-svn: 83195 | ||||
| * | A couple of refinements for laying out debug information for | Mike Stump | 2009-10-01 | 1 | -12/+15 |
| | | | | | | | BlockDeclRefDecls. llvm-svn: 83185 | ||||
| * | Anonymous namespaces, sema + codegen. A lot of semantics are still broken, | John McCall | 2009-10-01 | 2 | -4/+19 |
| | | | | | | | apparently because using directives aren't quite working correctly. llvm-svn: 83184 | ||||
| * | <rdar://problem/7263113> Make clang produce gcc's objc_assign_StrongCast as ↵ | Fariborz Jahanian | 2009-09-30 | 1 | -1/+11 |
| | | | | | | | a result of type-cast of an ivar in assignment. llvm-svn: 83150 | ||||
| * | Improve debugging information for BlockDeclRefExpr. WIP. Given this | Mike Stump | 2009-09-30 | 3 | -0/+246 |
| | | | | | | | | scheme, we can switch the previous scheme over to using this code path. There's a bit of simplifications yet to do as well. llvm-svn: 83138 | ||||
| * | Handle C++ delete expressions when the overloaded delete operator is a | Douglas Gregor | 2009-09-29 | 1 | -3/+11 |
| | | | | | | | | | | | | "usual deallocation function" with two arguments. CodeGen will have to handle this case specifically, since the value for the second argument (the size of the allocated object) may have to be computed at run time. Fixes the Sema part of PR4782. llvm-svn: 83080 | ||||
| * | Handle CXXMemberCallExprs that point to a static method. Fixes PR5093. | Anders Carlsson | 2009-09-29 | 1 | -0/+8 |
| | | | | | llvm-svn: 83045 | ||||
| * | Handle CK_BaseToDerivedMemberPointer for member function pointers. Fixes PR5091. | Anders Carlsson | 2009-09-29 | 3 | -11/+62 |
| | | | | | llvm-svn: 83041 | ||||
| * | Improve support for member function pointers. | Anders Carlsson | 2009-09-29 | 3 | -3/+26 |
| | | | | | llvm-svn: 83039 | ||||
| * | Use a switch statement in VisitCastExpr. | Anders Carlsson | 2009-09-29 | 1 | -12/+16 |
| | | | | | llvm-svn: 83038 | ||||

