summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Nios2/Nios2Subtarget.h
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2019-01-15 19:59:19 +0000
committerCraig Topper <craig.topper@intel.com>2019-01-15 19:59:19 +0000
commit99fcbf67d04d488d819bffb8fda3bb9d5504b63b (patch)
treed4875f7ae2caec0f1958b8906c5da47d82b78f25 /llvm/lib/Target/Nios2/Nios2Subtarget.h
parent55897389799ed8759c3f1da0cb0a07959ca8467e (diff)
downloadbcm5719-llvm-99fcbf67d04d488d819bffb8fda3bb9d5504b63b.tar.gz
bcm5719-llvm-99fcbf67d04d488d819bffb8fda3bb9d5504b63b.zip
[Nios2] Remove Nios2 backend
As mentioned here http://lists.llvm.org/pipermail/llvm-dev/2019-January/129121.html This backend is incomplete and has not been maintained in several months. Differential Revision: https://reviews.llvm.org/D56691 llvm-svn: 351231
Diffstat (limited to 'llvm/lib/Target/Nios2/Nios2Subtarget.h')
-rw-r--r--llvm/lib/Target/Nios2/Nios2Subtarget.h97
1 files changed, 0 insertions, 97 deletions
diff --git a/llvm/lib/Target/Nios2/Nios2Subtarget.h b/llvm/lib/Target/Nios2/Nios2Subtarget.h
deleted file mode 100644
index a822dff33b5..00000000000
--- a/llvm/lib/Target/Nios2/Nios2Subtarget.h
+++ /dev/null
@@ -1,97 +0,0 @@
-//===-- Nios2Subtarget.h - Define Subtarget for the Nios2 -------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file declares the Nios2 specific subclass of TargetSubtargetInfo.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIB_TARGET_NIOS2_NIOS2SUBTARGET_H
-#define LLVM_LIB_TARGET_NIOS2_NIOS2SUBTARGET_H
-
-#include "Nios2FrameLowering.h"
-#include "Nios2ISelLowering.h"
-#include "Nios2InstrInfo.h"
-#include "llvm/CodeGen/SelectionDAGTargetInfo.h"
-#include "llvm/CodeGen/TargetFrameLowering.h"
-#include "llvm/CodeGen/TargetSubtargetInfo.h"
-
-#define GET_SUBTARGETINFO_HEADER
-#include "Nios2GenSubtargetInfo.inc"
-
-namespace llvm {
-class StringRef;
-
-class Nios2TargetMachine;
-
-class Nios2Subtarget : public Nios2GenSubtargetInfo {
- virtual void anchor();
-
-public:
- // Nios2 R2 features
- // Bit manipulation instructions extension
- bool HasBMX;
- // Code Density instructions extension
- bool HasCDX;
- // Multi-Processor instructions extension
- bool HasMPX;
- // New mandatory instructions
- bool HasR2Mandatory;
-
-protected:
- enum Nios2ArchEnum {
- // Nios2 R1 ISA
- Nios2r1,
- // Nios2 R2 ISA
- Nios2r2
- };
-
- // Nios2 architecture version
- Nios2ArchEnum Nios2ArchVersion;
-
- Triple TargetTriple;
-
- Nios2InstrInfo InstrInfo;
- Nios2TargetLowering TLInfo;
- SelectionDAGTargetInfo TSInfo;
- Nios2FrameLowering FrameLowering;
-
-public:
- /// This constructor initializes the data members to match that
- /// of the specified triple.
- Nios2Subtarget(const Triple &TT, const std::string &CPU,
- const std::string &FS, const TargetMachine &TM);
-
- /// ParseSubtargetFeatures - Parses features string setting specified
- /// subtarget options. Definition of function is auto generated by tblgen.
- void ParseSubtargetFeatures(StringRef CPU, StringRef FS);
-
- bool hasNios2r1() const { return Nios2ArchVersion >= Nios2r1; }
- bool isNios2r1() const { return Nios2ArchVersion == Nios2r1; }
- bool hasNios2r2() const { return Nios2ArchVersion >= Nios2r2; }
- bool isNios2r2() const { return Nios2ArchVersion == Nios2r2; }
-
- Nios2Subtarget &initializeSubtargetDependencies(StringRef CPU, StringRef FS);
-
- const Nios2InstrInfo *getInstrInfo() const override { return &InstrInfo; }
- const TargetFrameLowering *getFrameLowering() const override {
- return &FrameLowering;
- }
- const Nios2RegisterInfo *getRegisterInfo() const override {
- return &InstrInfo.getRegisterInfo();
- }
- const Nios2TargetLowering *getTargetLowering() const override {
- return &TLInfo;
- }
- const SelectionDAGTargetInfo *getSelectionDAGInfo() const override {
- return &TSInfo;
- }
-};
-} // namespace llvm
-
-#endif
OpenPOWER on IntegriCloud