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 "SPIRVSubtarget.h"
15#include "llvm/CodeGen/MachineFunction.h"
16
17#define GET_REGINFO_TARGET_DESC
18#include "SPIRVGenRegisterInfo.inc"
19using namespace llvm;
20
21SPIRVRegisterInfo::SPIRVRegisterInfo() : SPIRVGenRegisterInfo(SPIRV::ID0) {}
22
23BitVector SPIRVRegisterInfo::getReservedRegs(const MachineFunction &MF) const {
24 return BitVector(getNumRegs());
25}
26
27const MCPhysReg *
28SPIRVRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const {
29 static const MCPhysReg CalleeSavedReg = {0};
30 return &CalleeSavedReg;
31}
32