From: Richard Trieu Date: Tue, 14 May 2019 23:17:18 +0000 (+0000) Subject: [Lanai] Create a TargetInfo header. NFC X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=155334aabd72bce72eea5b519160b1b20d2c5f30;p=llvm [Lanai] 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@360726 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp b/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp index e60dd6f7b2c..f6360e7ead2 100644 --- a/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp +++ b/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp @@ -10,6 +10,7 @@ #include "LanaiAluCode.h" #include "LanaiCondCode.h" #include "MCTargetDesc/LanaiMCExpr.h" +#include "TargetInfo/LanaiTargetInfo.h" #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/StringRef.h" #include "llvm/ADT/StringSwitch.h" diff --git a/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp b/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp index 59419e5e563..e669538af60 100644 --- a/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp +++ b/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp @@ -14,6 +14,7 @@ #include "Lanai.h" #include "LanaiSubtarget.h" +#include "TargetInfo/LanaiTargetInfo.h" #include "llvm/MC/MCFixedLenDisassembler.h" #include "llvm/MC/MCInst.h" #include "llvm/MC/MCSubtargetInfo.h" diff --git a/lib/Target/Lanai/Lanai.h b/lib/Target/Lanai/Lanai.h index 63c521a95da..8e966c2c370 100644 --- a/lib/Target/Lanai/Lanai.h +++ b/lib/Target/Lanai/Lanai.h @@ -44,7 +44,6 @@ FunctionPass *createLanaiMemAluCombinerPass(); // operations. FunctionPass *createLanaiSetflagAluCombinerPass(); -Target &getTheLanaiTarget(); } // namespace llvm #endif // LLVM_LIB_TARGET_LANAI_LANAI_H diff --git a/lib/Target/Lanai/LanaiAsmPrinter.cpp b/lib/Target/Lanai/LanaiAsmPrinter.cpp index 15fba3a5c4c..e6c459aa428 100644 --- a/lib/Target/Lanai/LanaiAsmPrinter.cpp +++ b/lib/Target/Lanai/LanaiAsmPrinter.cpp @@ -16,6 +16,7 @@ #include "LanaiInstrInfo.h" #include "LanaiMCInstLower.h" #include "LanaiTargetMachine.h" +#include "TargetInfo/LanaiTargetInfo.h" #include "llvm/CodeGen/AsmPrinter.h" #include "llvm/CodeGen/MachineConstantPool.h" #include "llvm/CodeGen/MachineFunctionPass.h" diff --git a/lib/Target/Lanai/LanaiTargetMachine.cpp b/lib/Target/Lanai/LanaiTargetMachine.cpp index fdf1e368ee4..8ae0225629a 100644 --- a/lib/Target/Lanai/LanaiTargetMachine.cpp +++ b/lib/Target/Lanai/LanaiTargetMachine.cpp @@ -15,6 +15,7 @@ #include "Lanai.h" #include "LanaiTargetObjectFile.h" #include "LanaiTargetTransformInfo.h" +#include "TargetInfo/LanaiTargetInfo.h" #include "llvm/Analysis/TargetTransformInfo.h" #include "llvm/CodeGen/Passes.h" #include "llvm/CodeGen/TargetLoweringObjectFileImpl.h" diff --git a/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp b/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp index cf425cff1c1..a9de0416fca 100644 --- a/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp +++ b/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp @@ -13,6 +13,7 @@ #include "LanaiMCTargetDesc.h" #include "LanaiInstPrinter.h" #include "LanaiMCAsmInfo.h" +#include "TargetInfo/LanaiTargetInfo.h" #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Triple.h" #include "llvm/MC/MCInst.h" diff --git a/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.h b/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.h index 96ff9cacdca..cf66d322665 100644 --- a/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.h +++ b/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.h @@ -31,8 +31,6 @@ class Triple; class StringRef; class raw_pwrite_stream; -Target &getTheLanaiTarget(); - MCCodeEmitter *createLanaiMCCodeEmitter(const MCInstrInfo &MCII, const MCRegisterInfo &MRI, MCContext &Ctx); diff --git a/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp b/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp index 65fba887eea..93deb891dec 100644 --- a/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp +++ b/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp @@ -6,17 +6,15 @@ // //===----------------------------------------------------------------------===// -#include "llvm/IR/Module.h" +#include "TargetInfo/LanaiTargetInfo.h" #include "llvm/Support/TargetRegistry.h" using namespace llvm; -namespace llvm { -Target &getTheLanaiTarget() { +Target &llvm::getTheLanaiTarget() { static Target TheLanaiTarget; return TheLanaiTarget; } -} // namespace llvm extern "C" void LLVMInitializeLanaiTargetInfo() { RegisterTarget X(getTheLanaiTarget(), "lanai", "Lanai", diff --git a/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.h b/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.h new file mode 100644 index 00000000000..429cf0234a6 --- /dev/null +++ b/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.h @@ -0,0 +1,20 @@ +//===-- LanaiTargetInfo.h - Lanai 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_LANAI_TARGETINFO_LANAITARGETINFO_H +#define LLVM_LIB_TARGET_LANAI_TARGETINFO_LANAITARGETINFO_H + +namespace llvm { + +class Target; + +Target &getTheLanaiTarget(); + +} // namespace llvm + +#endif // LLVM_LIB_TARGET_LANAI_TARGETINFO_LANAITARGETINFO_H