Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Mark C++ reference parameters as dereferenceable | Hal Finkel | 2014-07-18 | 1 | -1/+1 |
| | | | | | | | | | | | | | | Because references must be initialized using some evaluated expression, they must point to something, and a callee can assume the reference parameter is dereferenceable. Taking advantage of a new attribute just added to LLVM, mark them as such. Because dereferenceability in addrspace(0) implies nonnull in the backend, we don't need both attributes. However, we need to know the size of the object to use the dereferenceable attribute, so for incomplete types we still emit only nonnull. llvm-svn: 213386 | ||||
* | Add 'nonnull' parameter or return attribute when producing an llvm pointer ↵ | Nick Lewycky | 2014-05-28 | 1 | -2/+1 |
| | | | | | | type in a function type where the C++ type is a reference. Update the tests. llvm-svn: 209723 | ||||
* | Prepare for using MS ABI by default for Win32: update CodeGenCXX tests | Hans Wennborg | 2013-12-13 | 1 | -7/+7 |
| | | | | llvm-svn: 197281 | ||||
* | Fix newlines. | Daniel Dunbar | 2011-01-18 | 1 | -60/+60 |
| | | | | llvm-svn: 123742 | ||||
* | tests: Force a triple. | Daniel Dunbar | 2011-01-18 | 1 | -1/+1 |
| | | | | llvm-svn: 123741 | ||||
* | Add support for explicit constructor calls in Microsoft mode. | Francois Pichet | 2011-01-18 | 1 | -0/+60 |
For example: class A{ public: A& operator=(const A& that) { if (this != &that) { this->A::~A(); this->A::A(that); // <=== explicit constructor call. } return *this; } }; More work will be needed to support an explicit call to a template constructor. llvm-svn: 123735 |