LLVM 22.0.0git
DirectXRegisterInfo.cpp
Go to the documentation of this file.
1//===-- DirectXRegisterInfo.cpp - RegisterInfo for DirectX -*- 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 defines the DirectX specific subclass of TargetRegisterInfo.
10//
11//===----------------------------------------------------------------------===//
12
13#include "DirectXRegisterInfo.h"
18
19#define GET_REGINFO_TARGET_DESC
20#include "DirectXGenRegisterInfo.inc"
21
22using namespace llvm;
23
25
26const MCPhysReg *
28 return nullptr;
29}
32 return BitVector(getNumRegs());
33}
34
36 int SPAdj, unsigned FIOperandNum,
37 RegScavenger *RS) const {
38 return false;
39}
40
41// Debug information queries.
This file contains DirectX target interface.
Promote Memory to Register
Definition Mem2Reg.cpp:110
uint64_t IntrinsicInst * II
MachineInstrBundleIterator< MachineInstr > iterator
Wrapper class representing virtual and physical registers.
Definition Register.h:19
This is an optimization pass for GlobalISel generic memory operations.
uint16_t MCPhysReg
An unsigned integer type large enough to represent all physical registers, but not necessarily virtua...
Definition MCRegister.h:21
Register getFrameRegister(const MachineFunction &MF) const override
BitVector getReservedRegs(const MachineFunction &MF) const override
const MCPhysReg * getCalleeSavedRegs(const MachineFunction *MF) const override
bool eliminateFrameIndex(MachineBasicBlock::iterator II, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override