diff options
author | Mehdi Amini <mehdi.amini@apple.com> | 2015-08-26 21:16:29 +0000 |
---|---|---|
committer | Mehdi Amini <mehdi.amini@apple.com> | 2015-08-26 21:16:29 +0000 |
commit | 0ab4b5b52e5828a23c7d7d37b7c5cba6cf86895a (patch) | |
tree | d25592692deaae28c660295944471e859590684a /clang/lib/CodeGen/CGDebugInfo.cpp | |
parent | 9d7593fb33c50d6960dbf89e7c12b1417617b187 (diff) | |
download | bcm5719-llvm-0ab4b5b52e5828a23c7d7d37b7c5cba6cf86895a.tar.gz bcm5719-llvm-0ab4b5b52e5828a23c7d7d37b7c5cba6cf86895a.zip |
Fix LLVM C API for DataLayout
We removed access to the DataLayout on the TargetMachine and
deprecated the C API function LLVMGetTargetMachineData() in r243114.
However the way I tried to be backward compatible was broken: I
changed the wrapper of the TargetMachine to be a structure that
includes the DataLayout as well. However the TargetMachine is also
wrapped by the ExecutionEngine, in the more classic way. A client
using the TargetMachine wrapped by the ExecutionEngine and trying
to get the DataLayout would break.
It seems tricky to solve the problem completely in the C API
implementation. This patch tries to address this backward
compatibility in a more lighter way in the C++ API. The C API is
restored in its original state and the removed C++ API is
reintroduced, but privately. The C API is friended to the
TargetMachine and should be the only consumer for this API.
Reviewers: ributzka
Differential Revision: http://reviews.llvm.org/D12263
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 246082
Diffstat (limited to 'clang/lib/CodeGen/CGDebugInfo.cpp')
0 files changed, 0 insertions, 0 deletions