summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/copy-assign-synthesis-1.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Mark C++ reference parameters as dereferenceableHal Finkel2014-07-181-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
* Remove some incorrect test suppressionsAlp Toker2014-06-301-1/+0
| | | | | | | | | These don't actually require any registered backend to run. This commit tests the water with a handful of fixes for what is a more widespread problem. llvm-svn: 212008
* Add 'nonnull' parameter or return attribute when producing an llvm pointer ↵Nick Lewycky2014-05-281-2/+1
| | | | | | type in a function type where the C++ type is a reference. Update the tests. llvm-svn: 209723
* clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/NAKAMURA Takumi2013-12-041-1/+1
| | | | llvm-svn: 196350
* Check IR and don't use temporary files.Rafael Espindola2013-10-261-11/+5
| | | | llvm-svn: 193484
* Fix FileCheck --check-prefix lines.Tim Northover2013-08-121-2/+2
| | | | | | | | | | Various tests had sprung up over the years which had --check-prefix=ABC on the RUN line, but "CHECK-ABC:" later on. This happened to work before, but was strictly incorrect. FileCheck is getting stricter soon though. Patch by Ron Ofir. llvm-svn: 188174
* Re-apply r174919 - smarter copy/move assignment/construction, with fixes forLang Hames2013-02-171-6/+0
| | | | | | | | | | | bitfield related issues. The original commit broke Takumi's builder. The bug was caused by bitfield sizes being determined by their underlying type, rather than the field info. A similar issue with bitfield alignments showed up on closer testing. Both have been fixed in this patch. llvm-svn: 175389
* Backing out r174919 while I investigate a self-host bug on Takumi's builder.Lang Hames2013-02-121-0/+6
| | | | llvm-svn: 174925
* When generating IR for default copy-constructors, copy-assignment operators,Lang Hames2013-02-111-6/+0
| | | | | | | | | | | | | | | | | | | | move-constructors and move-assignment operators, use memcpy to copy adjacent POD members. Previously, classes with one or more Non-POD members would fall back on element-wise copies for all members, including POD members. This often generated a lot of IR. Without padding metadata, it wasn't often possible for the LLVM optimizers to turn the element-wise copies into a memcpy. This code hasn't yet received any serious tuning. I didn't see any serious regressions on a self-hosted clang build, or any of the nightly tests, but I think it's important to get this out in the wild to get more testing. Insights, feedback and comments welcome. Many thanks to David Blaikie, Richard Smith, and especially John McCall for their help and feedback on this work. llvm-svn: 174919
* Update all tests other than Driver/std.cpp to use -std=c++11 rather thanRichard Smith2011-10-131-2/+2
| | | | | | -std=c++0x. Patch by Ahmed Charles! llvm-svn: 141900
* These tests require particular registered targets. Declared as such.Galina Kistanova2011-06-031-0/+1
| | | | llvm-svn: 132600
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-2/+2
| | | | | | | | | - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
* Remove RUN: true lines.Daniel Dunbar2009-11-081-1/+0
| | | | llvm-svn: 86432
* Eliminate &&s in tests.Daniel Dunbar2009-11-081-4/+4
| | | | | | - 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious. llvm-svn: 86430
* Mangle record types as decls.Anders Carlsson2009-09-261-12/+12
| | | | llvm-svn: 82843
* Remove tabs, and whitespace cleanups.Mike Stump2009-09-091-6/+8
| | | | llvm-svn: 81346
* Patch to ir-gen copy assigning array members when synthesizing Fariborz Jahanian2009-08-211-0/+7
| | | | | | a copy assignment operator function. llvm-svn: 79681
* Fixed a bug in ir-gen for copy assignment synthesis.Fariborz Jahanian2009-08-141-0/+100
Fixed a bug when evaluating those copy-assignments which need by lazily syntheized. A test case for these. llvm-svn: 78965
OpenPOWER on IntegriCloud