1 //===-- PPCRegisterBankInfo.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-exception 6 // 7 //===----------------------------------------------------------------------===// 8 /// 9 /// \file 10 /// This file declares the targeting of the RegisterBankInfo class for PowerPC. 11 /// 12 //===----------------------------------------------------------------------===// 13 14 #ifndef LLVM_LIB_TARGET_PPC_GISEL_PPCREGISTERBANKINFO_H 15 #define LLVM_LIB_TARGET_PPC_GISEL_PPCREGISTERBANKINFO_H 16 17 #include "llvm/CodeGen/GlobalISel/RegisterBank.h" 18 #include "llvm/CodeGen/GlobalISel/RegisterBankInfo.h" 19 #include "llvm/CodeGen/TargetRegisterInfo.h" 20 21 #define GET_REGBANK_DECLARATIONS 22 #include "PPCGenRegisterBank.inc" 23 24 namespace llvm { 25 class TargetRegisterInfo; 26 27 class PPCGenRegisterBankInfo : public RegisterBankInfo { 28 protected: 29 #define GET_TARGET_REGBANK_CLASS 30 #include "PPCGenRegisterBank.inc" 31 }; 32 33 class PPCRegisterBankInfo final : public PPCGenRegisterBankInfo { 34 public: 35 PPCRegisterBankInfo(const TargetRegisterInfo &TRI); 36 }; 37 } // namespace llvm 38 39 #endif 40