summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/class-layout.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add a missing check in CodeGen of packed classes with vtables. ↵Eli Friedman2012-04-271-0/+14
| | | | | | <rdar://problem/11324125>. llvm-svn: 155689
* Record layout requires not just a definition, but a completeJohn McCall2011-10-071-0/+32
| | | | | | | | definition. Assert this. Change IR generation to not try to aggressively emit the IR translation of a record during its own definition. Fixes PR10912. llvm-svn: 141350
* clang side to match the LLVM IR type system rewrite patch.Chris Lattner2011-07-091-1/+1
| | | | llvm-svn: 134831
* Use the right type name.Anders Carlsson2011-04-171-1/+1
| | | | llvm-svn: 129674
* When laying out bases in, always try the "base subobject" LLVM type. If itAnders Carlsson2011-04-171-0/+28
| | | | | | | | | | | | | turns out that a field or base needs to be laid out in the tail padding of the base, CGRecordLayoutBuilder::ResizeLastBaseFieldIfNecessary will convert it to an array of i8. I've audited the new test results to make sure that they are still valid. I've also verified that we pass a self-host with this change. This (finally) fixes PR5589! llvm-svn: 129673
* Put each test in class-layout.cpp into a separate namespace.Anders Carlsson2010-12-051-9/+15
| | | | llvm-svn: 120925
* Use a more appropriate LLVM type for the vtable pointer.Anders Carlsson2010-05-051-2/+2
| | | | llvm-svn: 103078
* Baby steps towards fixing PR5589. If a class needs a vtable pointer, add one.Anders Carlsson2009-12-161-0/+4
| | | | llvm-svn: 91545
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - 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
* No need to add tail padding if the resulting LLVM struct type will have the ↵Anders Carlsson2009-12-081-2/+6
| | | | | | same size as the final record size. llvm-svn: 90820
* Eliminate &&s in tests.Daniel Dunbar2009-11-081-1/+1
| | | | | | - 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious. llvm-svn: 86430
* Use the CGRecordLayoutBuilder even if there are no fields, because in C++ an ↵Anders Carlsson2009-07-271-0/+5
empty class will have a padding byte. llvm-svn: 77205
OpenPOWER on IntegriCloud