summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/rtti-fundamental.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Adding type info for f16c floating-point type. This is consistent with theYunzhong Gao2014-04-171-0/+5
| | | | | | | | Itanium ABI in 2.9.2 Place of Emission. Differential Revision: http://reviews.llvm.org/D2750 llvm-svn: 206439
* type_info objects are not unnamed_addr: the ABI requires us toJohn McCall2014-02-081-60/+60
| | | | | | | | | | unique them and permits the implementation of dynamic_cast (and anything else which knows it's working with a complete class type) to compare their addresses directly. rdar://16005328 llvm-svn: 201020
* Set unnamed_addr in every type info.Rafael Espindola2011-01-111-60/+60
| | | | llvm-svn: 123293
* std::nullptr_t is a fundamental type for RTTI purposes.Anders Carlsson2010-11-041-39/+82
| | | | llvm-svn: 118238
* Emit standard-library RTTI with external linkage, not weak_odr.John McCall2010-08-041-57/+57
| | | | | | | | | | Apply hidden visibility to most RTTI; libstdc++ does not rely on exact pointer equality for the type info (just the type info names). Apply the same optimization to RTTI that we do to vtables. Fixes PR5962. llvm-svn: 110192
* Eliminate excessive PCH deserialization caused by the search forDouglas Gregor2010-04-081-1/+3
| | | | | | | | | | | | | | | | | | | | | | __cxxabiv1::__fundamental_type_info in every translation unit. Previously, we would perform name lookup for __cxxabiv1::__fundamental_type_info at the end of IRGen for a each translation unit, to determine whether it was present. If so, we we produce type information for all of the fundamental types. However, this name lookup causes PCH deserialization of a significant part of the translation unit, which has a woeful impact on performance. With this change, we now look at each record type after we've generated its vtable to see if it is __cxxabiv1::__fundamental_type_info. If so, we generate type info for all of the fundamental types. This works because __cxxabiv1::__fundamental_type_info should always have a key function (typically the virtual destructor), that will be defined once in the support library. The fundamental type information will end up there. Fixes <rdar://problem/7840011>. llvm-svn: 100772
* Test for the previous commit.Rafael Espindola2010-03-271-0/+71
llvm-svn: 99702
OpenPOWER on IntegriCloud