LLVM
22.0.0git
lib
Target
SPIRV
SPIRVRegisterBankInfo.h
Go to the documentation of this file.
1
//===- SPIRVRegisterBankInfo.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
// This file declares the targeting of the RegisterBankInfo class for SPIR-V.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef LLVM_LIB_TARGET_SPIRV_SPIRVREGISTERBANKINFO_H
14
#define LLVM_LIB_TARGET_SPIRV_SPIRVREGISTERBANKINFO_H
15
16
#include "
llvm/CodeGen/RegisterBankInfo.h
"
17
18
#define GET_REGBANK_DECLARATIONS
19
#include "SPIRVGenRegisterBank.inc"
20
21
namespace
llvm
{
22
23
class
TargetRegisterInfo;
24
25
class
SPIRVGenRegisterBankInfo
:
public
RegisterBankInfo
{
26
protected
:
27
#define GET_TARGET_REGBANK_CLASS
28
#include "SPIRVGenRegisterBank.inc"
29
};
30
31
// This class provides the information for the target register banks.
32
class
SPIRVRegisterBankInfo
final :
public
SPIRVGenRegisterBankInfo
{
33
public
:
34
const
RegisterBank
&
getRegBankFromRegClass
(
const
TargetRegisterClass
&RC,
35
LLT
Ty)
const override
;
36
};
37
}
// namespace llvm
38
#endif
// LLVM_LIB_TARGET_SPIRV_SPIRVREGISTERBANKINFO_H
RegisterBankInfo.h
llvm::LLT
Definition
LowLevelType.h:40
llvm::RegisterBankInfo::RegisterBankInfo
RegisterBankInfo(const RegisterBank **RegBanks, unsigned NumRegBanks, const unsigned *Sizes, unsigned HwMode)
Create a RegisterBankInfo that can accommodate up to NumRegBanks RegisterBank instances.
Definition
RegisterBankInfo.cpp:56
llvm::RegisterBank
This class implements the register bank concept.
Definition
RegisterBank.h:29
llvm::SPIRVGenRegisterBankInfo
Definition
SPIRVRegisterBankInfo.h:25
llvm::SPIRVRegisterBankInfo
Definition
SPIRVRegisterBankInfo.h:32
llvm::SPIRVRegisterBankInfo::getRegBankFromRegClass
const RegisterBank & getRegBankFromRegClass(const TargetRegisterClass &RC, LLT Ty) const override
Get a register bank that covers RC.
Definition
SPIRVRegisterBankInfo.cpp:29
llvm::TargetRegisterClass
Definition
TargetRegisterInfo.h:45
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition
AddressRanges.h:18
Generated on
for LLVM by
1.14.0