summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/rvalue-references.cpp
Commit message (Collapse)AuthorAgeFilesLines
* When devirtualizing the conversion to a virtual base subobject,John McCall2012-08-011-1/+1
| | | | | | | | | | | don't explode if the offset we get is zero. This can happen if you have an empty virtual base class. While I'm at it, remove an unnecessary block from the IR-generation of the null-check, mark the eventual GEP as inbounds, and generally prettify. llvm-svn: 161100
* Update all tests other than Driver/std.cpp to use -std=c++11 rather thanRichard Smith2011-10-131-1/+1
| | | | | | -std=c++0x. Patch by Ahmed Charles! llvm-svn: 141900
* Move test, so it actually tests what it is supposed to (given that we don't ↵Eli Friedman2011-09-271-0/+8
| | | | | | have an AST verifier). llvm-svn: 140620
* Be sure to emit lvalue-to-rvalue casts for loads from x-values.John McCall2011-08-301-0/+18
| | | | | | | Doing this happens to disrupt the pattern that ARC was looking for for move optimizations, so we need to fix that simultaneously. llvm-svn: 138789
* Allow elision of invocations of move constructors from temporary objects.Douglas Gregor2011-01-271-6/+3
| | | | llvm-svn: 124455
* When producing IR for a lvalue-to-rvalue cast *as an lvalue*, onlyDouglas Gregor2011-01-271-0/+52
| | | | | | | | | non-class prvalues actually require the realization of a temporary. For everything else, we already have an lvalue (or class prvalue) in the subexpression. Note: we're missing some move elision in this case. I'll tackle that next. llvm-svn: 124453
* When performing a glvalue-to-xvalue static_cast that involves aDouglas Gregor2011-01-251-0/+36
derived-to-base conversion, set the cast kind and base path appropriately. llvm-svn: 124189
OpenPOWER on IntegriCloud