LLVM
20.0.0git
Toggle main menu visibility
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
y
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
o
p
r
s
t
u
v
w
z
Enumerations
_
a
b
c
d
e
f
g
h
i
j
l
m
o
p
q
r
s
t
u
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Examples
lib
Target
SPIRV
SPIRVRegisterInfo.cpp
Go to the documentation of this file.
1
//===-- SPIRVRegisterInfo.cpp - SPIR-V Register Information -----*- 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 SPIR-V implementation of the TargetRegisterInfo class.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#include "
SPIRVRegisterInfo.h
"
14
#include "
SPIRV.h
"
15
#include "
SPIRVSubtarget.h
"
16
#include "
llvm/CodeGen/MachineFunction.h
"
17
18
#define GET_REGINFO_TARGET_DESC
19
#include "SPIRVGenRegisterInfo.inc"
20
using namespace
llvm
;
21
22
SPIRVRegisterInfo::SPIRVRegisterInfo
() :
SPIRVGenRegisterInfo
(
SPIRV
::ID0) {}
23
24
BitVector
SPIRVRegisterInfo::getReservedRegs
(
const
MachineFunction
&MF)
const
{
25
return
BitVector
(getNumRegs());
26
}
27
28
const
MCPhysReg
*
29
SPIRVRegisterInfo::getCalleeSavedRegs
(
const
MachineFunction
*MF)
const
{
30
static
const
MCPhysReg
CalleeSavedReg
= {0};
31
return
&
CalleeSavedReg
;
32
}
MachineFunction.h
CalleeSavedReg
static const MCPhysReg CalleeSavedReg
Definition:
R600RegisterInfo.cpp:66
SPIRVRegisterInfo.h
SPIRV
spirv structurize SPIRV
Definition:
SPIRVStructurizer.cpp:1243
SPIRVSubtarget.h
SPIRV.h
SPIRVGenRegisterInfo
llvm::BitVector
Definition:
BitVector.h:82
llvm::MachineFunction
Definition:
MachineFunction.h:258
uint16_t
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:18
llvm::SPIRVRegisterInfo::getCalleeSavedRegs
const MCPhysReg * getCalleeSavedRegs(const MachineFunction *MF) const override
Definition:
SPIRVRegisterInfo.cpp:29
llvm::SPIRVRegisterInfo::SPIRVRegisterInfo
SPIRVRegisterInfo()
Definition:
SPIRVRegisterInfo.cpp:22
llvm::SPIRVRegisterInfo::getReservedRegs
BitVector getReservedRegs(const MachineFunction &MF) const override
Definition:
SPIRVRegisterInfo.cpp:24
Generated on Mon Apr 21 2025 15:41:39 for LLVM by
1.9.6