From eb0029ff8c05617bd9e80fc0d7669a46a269cee8 Mon Sep 17 00:00:00 2001 From: Richard Trieu Date: Wed, 15 May 2019 00:35:37 +0000 Subject: [PATCH] [Sparc] Create a TargetInfo header. NFC Move the declarations of getTheTarget() functions into a new header in TargetInfo and make users of these functions include this new header. This fixes a layering problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@360733 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Sparc/AsmParser/SparcAsmParser.cpp | 1 + .../Sparc/Disassembler/SparcDisassembler.cpp | 7 +----- .../Sparc/MCTargetDesc/SparcMCTargetDesc.cpp | 1 + .../Sparc/MCTargetDesc/SparcMCTargetDesc.h | 4 ---- lib/Target/Sparc/SparcAsmPrinter.cpp | 1 + lib/Target/Sparc/SparcTargetMachine.cpp | 1 + .../Sparc/TargetInfo/SparcTargetInfo.cpp | 3 +-- lib/Target/Sparc/TargetInfo/SparcTargetInfo.h | 22 +++++++++++++++++++ 8 files changed, 28 insertions(+), 12 deletions(-) create mode 100644 lib/Target/Sparc/TargetInfo/SparcTargetInfo.h diff --git a/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp b/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp index 914efd6524c..15453ae59a4 100644 --- a/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp +++ b/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp @@ -8,6 +8,7 @@ #include "MCTargetDesc/SparcMCExpr.h" #include "MCTargetDesc/SparcMCTargetDesc.h" +#include "TargetInfo/SparcTargetInfo.h" #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" diff --git a/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp b/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp index bfbd1e1769c..bee331874e9 100644 --- a/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp +++ b/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp @@ -11,6 +11,7 @@ //===----------------------------------------------------------------------===// #include "MCTargetDesc/SparcMCTargetDesc.h" +#include "TargetInfo/SparcTargetInfo.h" #include "llvm/MC/MCAsmInfo.h" #include "llvm/MC/MCContext.h" #include "llvm/MC/MCDisassembler/MCDisassembler.h" @@ -40,12 +41,6 @@ public: }; } -namespace llvm { -Target &getTheSparcTarget(); -Target &getTheSparcV9Target(); -Target &getTheSparcelTarget(); -} - static MCDisassembler *createSparcDisassembler(const Target &T, const MCSubtargetInfo &STI, MCContext &Ctx) { diff --git a/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp b/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp index c62bfbf7bcf..ce593bb6677 100644 --- a/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp +++ b/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp @@ -14,6 +14,7 @@ #include "SparcInstPrinter.h" #include "SparcMCAsmInfo.h" #include "SparcTargetStreamer.h" +#include "TargetInfo/SparcTargetInfo.h" #include "llvm/MC/MCInstrInfo.h" #include "llvm/MC/MCRegisterInfo.h" #include "llvm/MC/MCSubtargetInfo.h" diff --git a/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h b/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h index c2a70689a69..e5699bb1c13 100644 --- a/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h +++ b/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h @@ -32,10 +32,6 @@ class StringRef; class raw_pwrite_stream; class raw_ostream; -Target &getTheSparcTarget(); -Target &getTheSparcV9Target(); -Target &getTheSparcelTarget(); - MCCodeEmitter *createSparcMCCodeEmitter(const MCInstrInfo &MCII, const MCRegisterInfo &MRI, MCContext &Ctx); diff --git a/lib/Target/Sparc/SparcAsmPrinter.cpp b/lib/Target/Sparc/SparcAsmPrinter.cpp index 52305a19e52..4d5cbfbadc9 100644 --- a/lib/Target/Sparc/SparcAsmPrinter.cpp +++ b/lib/Target/Sparc/SparcAsmPrinter.cpp @@ -17,6 +17,7 @@ #include "Sparc.h" #include "SparcInstrInfo.h" #include "SparcTargetMachine.h" +#include "TargetInfo/SparcTargetInfo.h" #include "llvm/CodeGen/AsmPrinter.h" #include "llvm/CodeGen/MachineInstr.h" #include "llvm/CodeGen/MachineModuleInfoImpls.h" diff --git a/lib/Target/Sparc/SparcTargetMachine.cpp b/lib/Target/Sparc/SparcTargetMachine.cpp index cb9df3ba492..9069bc21779 100644 --- a/lib/Target/Sparc/SparcTargetMachine.cpp +++ b/lib/Target/Sparc/SparcTargetMachine.cpp @@ -13,6 +13,7 @@ #include "LeonPasses.h" #include "Sparc.h" #include "SparcTargetObjectFile.h" +#include "TargetInfo/SparcTargetInfo.h" #include "llvm/CodeGen/Passes.h" #include "llvm/CodeGen/TargetPassConfig.h" #include "llvm/IR/LegacyPassManager.h" diff --git a/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp b/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp index 08003dda4ad..eafa2b4b2f1 100644 --- a/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp +++ b/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp @@ -6,8 +6,7 @@ // //===----------------------------------------------------------------------===// -#include "Sparc.h" -#include "llvm/IR/Module.h" +#include "TargetInfo/SparcTargetInfo.h" #include "llvm/Support/TargetRegistry.h" using namespace llvm; diff --git a/lib/Target/Sparc/TargetInfo/SparcTargetInfo.h b/lib/Target/Sparc/TargetInfo/SparcTargetInfo.h new file mode 100644 index 00000000000..e02ff59fdac --- /dev/null +++ b/lib/Target/Sparc/TargetInfo/SparcTargetInfo.h @@ -0,0 +1,22 @@ +//===-- SparcTargetInfo.h - Sparc Target Implementation ---------*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_LIB_TARGET_SPARC_TARGETINFO_SPARCTARGETINFO_H +#define LLVM_LIB_TARGET_SPARC_TARGETINFO_SPARCTARGETINFO_H + +namespace llvm { + +class Target; + +Target &getTheSparcTarget(); +Target &getTheSparcV9Target(); +Target &getTheSparcelTarget(); + +} // namespace llvm + +#endif // LLVM_LIB_TARGET_SPARC_TARGETINFO_SPARCTARGETINFO_H -- 2.50.1