brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · 6122db8 Raw
43 lines · c
1//===-- M68kRegisterBankInfo.h ----------------------------------*- C++ -*-===//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/// \file9/// This file declares the targeting of the RegisterBankInfo class for M68k.10/// \todo This should be generated by TableGen.11//===----------------------------------------------------------------------===//12 13#ifndef LLVM_LIB_TARGET_M68K_GLSEL_M68KREGISTERBANKINFO_H14#define LLVM_LIB_TARGET_M68K_GLSEL_M68KREGISTERBANKINFO_H15 16#include "llvm/CodeGen/RegisterBankInfo.h"17 18#define GET_REGBANK_DECLARATIONS19#include "M68kGenRegisterBank.inc"20#undef GET_REGBANK_DECLARATIONS21 22namespace llvm {23 24class TargetRegisterInfo;25 26class M68kGenRegisterBankInfo : public RegisterBankInfo {27protected:28#define GET_TARGET_REGBANK_CLASS29#include "M68kGenRegisterBank.inc"30#undef GET_TARGET_REGBANK_CLASS31};32 33/// This class provides the information for the target register banks.34class M68kRegisterBankInfo final : public M68kGenRegisterBankInfo {35public:36  M68kRegisterBankInfo(const TargetRegisterInfo &TRI);37 38  const InstructionMapping &39  getInstrMapping(const MachineInstr &MI) const override;40};41} // end namespace llvm42#endif // LLVM_LIB_TARGET_M68K_GLSEL_M68KREGISTERBANKINFO_H43