forked from OSchip/llvm-project
Prune include of DataLayout.h from include/clang/Basic/TargetInfo.h. NFC
Summary: Use a forward declaration of DataLayout instead of including DataLayout.h in clangs TargetInfo.h. This reduces include dependencies toward DataLayout.h (and other headers such as DerivedTypes.h, Type.h that is included by DataLayout.h). Needed to move implemantation of TargetInfo::resetDataLayout from TargetInfo.h to TargetInfo.cpp. Reviewers: rnk Reviewed By: rnk Subscribers: jvesely, nhaehnle, cfe-commits, llvm-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D69262 llvm-svn: 375438
This commit is contained in:
parent
1f43ea41c3
commit
78424e5f84
|
@ -19,14 +19,15 @@
|
|||
#include "clang/Basic/Specifiers.h"
|
||||
#include "clang/Basic/TargetCXXABI.h"
|
||||
#include "clang/Basic/TargetOptions.h"
|
||||
#include "llvm/ADT/APFloat.h"
|
||||
#include "llvm/ADT/APInt.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/IntrusiveRefCntPtr.h"
|
||||
#include "llvm/ADT/Optional.h"
|
||||
#include "llvm/ADT/SmallSet.h"
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
#include "llvm/ADT/StringRef.h"
|
||||
#include "llvm/ADT/Triple.h"
|
||||
#include "llvm/IR/DataLayout.h"
|
||||
#include "llvm/Support/DataTypes.h"
|
||||
#include "llvm/Support/VersionTuple.h"
|
||||
#include <cassert>
|
||||
|
@ -35,6 +36,7 @@
|
|||
|
||||
namespace llvm {
|
||||
struct fltSemantics;
|
||||
class DataLayout;
|
||||
}
|
||||
|
||||
namespace clang {
|
||||
|
@ -198,9 +200,7 @@ protected:
|
|||
// TargetInfo Constructor. Default initializes all fields.
|
||||
TargetInfo(const llvm::Triple &T);
|
||||
|
||||
void resetDataLayout(StringRef DL) {
|
||||
DataLayout.reset(new llvm::DataLayout(DL));
|
||||
}
|
||||
void resetDataLayout(StringRef DL);
|
||||
|
||||
public:
|
||||
/// Construct a target for the given options.
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "clang/Basic/LangOptions.h"
|
||||
#include "llvm/ADT/APFloat.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/IR/DataLayout.h"
|
||||
#include "llvm/Support/ErrorHandling.h"
|
||||
#include "llvm/Support/TargetParser.h"
|
||||
#include <cstdlib>
|
||||
|
@ -136,6 +137,10 @@ TargetInfo::TargetInfo(const llvm::Triple &T) : TargetOpts(), Triple(T) {
|
|||
// Out of line virtual dtor for TargetInfo.
|
||||
TargetInfo::~TargetInfo() {}
|
||||
|
||||
void TargetInfo::resetDataLayout(StringRef DL) {
|
||||
DataLayout.reset(new llvm::DataLayout(DL));
|
||||
}
|
||||
|
||||
bool
|
||||
TargetInfo::checkCFProtectionBranchSupported(DiagnosticsEngine &Diags) const {
|
||||
Diags.Report(diag::err_opt_not_valid_on_target) << "cf-protection=branch";
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "clang/Basic/MacroBuilder.h"
|
||||
#include "clang/Basic/TargetBuiltins.h"
|
||||
#include "llvm/ADT/StringSwitch.h"
|
||||
#include "llvm/IR/DataLayout.h"
|
||||
|
||||
using namespace clang;
|
||||
using namespace clang::targets;
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include "clang/Lex/PreprocessorOptions.h"
|
||||
#include "clang/Serialization/ASTReader.h"
|
||||
#include "llvm/ADT/APFloat.h"
|
||||
#include "llvm/IR/DataLayout.h"
|
||||
using namespace clang;
|
||||
|
||||
static bool MacroBodyEndsInBackslash(StringRef MacroBody) {
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
#include "clang/Basic/LLVM.h"
|
||||
#include "clang/Tooling/Tooling.h"
|
||||
#include "gtest/gtest.h"
|
||||
#include "llvm/IR/DataLayout.h"
|
||||
|
||||
using namespace clang::ast_matchers;
|
||||
using namespace clang::tooling;
|
||||
|
|
Loading…
Reference in New Issue