summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/vtable-align.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [CodeGen] Align rtti and vtable dataDavid Green2018-09-121-1/+4
| | | | | | | | | | Previously the alignment on the newly created rtti/typeinfo data was largely not set, meaning that DataLayout::getPreferredAlignment was free to overalign it to 16 bytes. This causes unnecessary code bloat. Differential Revision: https://reviews.llvm.org/D51416 llvm-svn: 342053
* CodeGen: New vtable group representation: struct of vtable arrays.Peter Collingbourne2016-12-131-2/+2
| | | | | | | | | In a future change, this representation will allow us to use the new inrange annotation on getelementptr to allow the optimizer to split vtable groups. Differential Revision: https://reviews.llvm.org/D22296 llvm-svn: 289584
* CodeGen: Use a fixed alignment for vtables.Benjamin Kramer2014-09-101-0/+14
Pointer-sized alignment is sufficient as we only ever read single values from the table. Otherwise we'd bump the alignment to 16 bytes in the backend if the vtable is larger than 16 bytes. This is great for structures that are accessed with vector instructions or copied around, but that's simply not the case for vtables. Shrinks the data segment of a Release x86_64 clang by 0.3%. The wins are larger for i386 and code bases that use vtables more often than we do. This matches the behavior of GCC 5. llvm-svn: 217495
OpenPOWER on IntegriCloud