diff options
author | David Majnemer <david.majnemer@gmail.com> | 2014-07-07 06:20:47 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2014-07-07 06:20:47 +0000 |
commit | e2cb8d198f54b84187419a23b3f3e1d05015e5e7 (patch) | |
tree | 77685fab2c6be89c10a2ee4526241996efd07a8e /clang/lib/StaticAnalyzer/Core/ExprEngine.cpp | |
parent | c358000ed34f074d9393fce692b67b32e370f09a (diff) | |
download | bcm5719-llvm-e2cb8d198f54b84187419a23b3f3e1d05015e5e7.tar.gz bcm5719-llvm-e2cb8d198f54b84187419a23b3f3e1d05015e5e7.zip |
CodeGen: Refactor RTTI emission
Let's not expose ABI specific minutia inside of CodeGenModule and Type.
Instead, let's abstract it through CXXABI.
This gets rid of:
CodeGenModule::getCompleteObjectLocator,
CodeGenModule::EmitFundamentalTypeDescriptor{s,},
CodeGenModule::getMSTypeDescriptor,
CodeGenModule::getMSCompleteObjectLocator,
CGCXXABI::shouldRTTIBeUnique,
CGCXXABI::classifyRTTIUniqueness.
CGRTTI was *almost* entirely centered around providing Itanium-style
RTTI information. Instead of providing interfaces that only it
consumes, move it to the ItaniumCXXABI implementation file. This allows
it to have access to Itanium-specific implementation details without
providing useless expansion points for the Microsoft ABI side.
Differential Revision: http://reviews.llvm.org/D4261
llvm-svn: 212435
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/ExprEngine.cpp')
0 files changed, 0 insertions, 0 deletions