10b57cec5SDimitry Andric //===- ARCSubtarget.cpp - ARC Subtarget Information -------------*- C++ -*-===//
20b57cec5SDimitry Andric //
30b57cec5SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
40b57cec5SDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
50b57cec5SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
60b57cec5SDimitry Andric //
70b57cec5SDimitry Andric //===----------------------------------------------------------------------===//
80b57cec5SDimitry Andric //
90b57cec5SDimitry Andric // This file implements the ARC specific subclass of TargetSubtargetInfo.
100b57cec5SDimitry Andric //
110b57cec5SDimitry Andric //===----------------------------------------------------------------------===//
120b57cec5SDimitry Andric
130b57cec5SDimitry Andric #include "ARCSubtarget.h"
140b57cec5SDimitry Andric #include "ARC.h"
15*349cc55cSDimitry Andric #include "llvm/MC/TargetRegistry.h"
160b57cec5SDimitry Andric
170b57cec5SDimitry Andric using namespace llvm;
180b57cec5SDimitry Andric
190b57cec5SDimitry Andric #define DEBUG_TYPE "arc-subtarget"
200b57cec5SDimitry Andric
210b57cec5SDimitry Andric #define GET_SUBTARGETINFO_TARGET_DESC
220b57cec5SDimitry Andric #define GET_SUBTARGETINFO_CTOR
230b57cec5SDimitry Andric #include "ARCGenSubtargetInfo.inc"
240b57cec5SDimitry Andric
anchor()250b57cec5SDimitry Andric void ARCSubtarget::anchor() {}
260b57cec5SDimitry Andric
ARCSubtarget(const Triple & TT,const std::string & CPU,const std::string & FS,const TargetMachine & TM)270b57cec5SDimitry Andric ARCSubtarget::ARCSubtarget(const Triple &TT, const std::string &CPU,
280b57cec5SDimitry Andric const std::string &FS, const TargetMachine &TM)
29*349cc55cSDimitry Andric : ARCGenSubtargetInfo(TT, CPU, /*TuneCPU=*/CPU, FS), InstrInfo(*this),
30*349cc55cSDimitry Andric FrameLowering(*this), TLInfo(TM, *this) {}
31