brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · a119c4d Raw
46 lines · cpp
1//===-- AVRSubtarget.cpp - AVR Subtarget Information ----------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8//9// This file implements the AVR specific subclass of TargetSubtargetInfo.10//11//===----------------------------------------------------------------------===//12 13#include "AVRSubtarget.h"14 15#include "llvm/BinaryFormat/ELF.h"16#include "llvm/MC/TargetRegistry.h"17 18#include "AVR.h"19#include "AVRTargetMachine.h"20 21#define DEBUG_TYPE "avr-subtarget"22 23#define GET_SUBTARGETINFO_TARGET_DESC24#define GET_SUBTARGETINFO_CTOR25#include "AVRGenSubtargetInfo.inc"26 27namespace llvm {28 29AVRSubtarget::AVRSubtarget(const Triple &TT, const std::string &CPU,30                           const std::string &FS, const AVRTargetMachine &TM)31    : AVRGenSubtargetInfo(TT, CPU, /*TuneCPU*/ CPU, FS), InstrInfo(*this),32      TLInfo(TM, initializeSubtargetDependencies(CPU, FS, TM)) {33  // Parse features string.34  ParseSubtargetFeatures(CPU, /*TuneCPU*/ CPU, FS);35}36 37AVRSubtarget &38AVRSubtarget::initializeSubtargetDependencies(StringRef CPU, StringRef FS,39                                              const TargetMachine &TM) {40  // Parse features string.41  ParseSubtargetFeatures(CPU, /*TuneCPU*/ CPU, FS);42  return *this;43}44 45} // end of namespace llvm46