LLVM
15.0.0git
lib
Target
BPF
BPFRegisterInfo.h
Go to the documentation of this file.
1
//===-- BPFRegisterInfo.h - BPF Register Information Impl -------*- 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 contains the BPF implementation of the TargetRegisterInfo class.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef LLVM_LIB_TARGET_BPF_BPFREGISTERINFO_H
14
#define LLVM_LIB_TARGET_BPF_BPFREGISTERINFO_H
15
16
#include "
llvm/CodeGen/TargetRegisterInfo.h
"
17
18
#define GET_REGINFO_HEADER
19
#include "BPFGenRegisterInfo.inc"
20
21
namespace
llvm
{
22
23
struct
BPFRegisterInfo
:
public
BPFGenRegisterInfo
{
24
25
BPFRegisterInfo
();
26
27
const
MCPhysReg
*
getCalleeSavedRegs
(
const
MachineFunction
*MF)
const override
;
28
29
BitVector
getReservedRegs
(
const
MachineFunction
&MF)
const override
;
30
31
void
eliminateFrameIndex
(
MachineBasicBlock::iterator
MI
,
int
SPAdj,
32
unsigned
FIOperandNum,
33
RegScavenger
*RS =
nullptr
)
const override
;
34
35
Register
getFrameRegister
(
const
MachineFunction
&MF)
const override
;
36
};
37
}
38
39
#endif
llvm::BPFRegisterInfo
Definition:
BPFRegisterInfo.h:23
MI
IRTranslator LLVM IR MI
Definition:
IRTranslator.cpp:104
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:17
llvm::BPFRegisterInfo::BPFRegisterInfo
BPFRegisterInfo()
Definition:
BPFRegisterInfo.cpp:29
llvm::BitVector
Definition:
BitVector.h:75
BPFGenRegisterInfo
llvm::BPFRegisterInfo::getFrameRegister
Register getFrameRegister(const MachineFunction &MF) const override
Definition:
BPFRegisterInfo.cpp:124
llvm::RegScavenger
Definition:
RegisterScavenging.h:34
llvm::BPFRegisterInfo::getReservedRegs
BitVector getReservedRegs(const MachineFunction &MF) const override
Definition:
BPFRegisterInfo.cpp:37
llvm::MachineFunction
Definition:
MachineFunction.h:257
llvm::BPFRegisterInfo::eliminateFrameIndex
void eliminateFrameIndex(MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override
Definition:
BPFRegisterInfo.cpp:56
llvm::BPFRegisterInfo::getCalleeSavedRegs
const MCPhysReg * getCalleeSavedRegs(const MachineFunction *MF) const override
Definition:
BPFRegisterInfo.cpp:33
llvm::Register
Wrapper class representing virtual and physical registers.
Definition:
Register.h:19
uint16_t
llvm::MachineInstrBundleIterator< MachineInstr >
TargetRegisterInfo.h
Generated on Fri Jul 1 2022 13:35:01 for LLVM by
1.8.17