1//===-- AMDGPURegisterInfo.cpp - AMDGPU Register Information -------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// Parent TargetRegisterInfo class common to all hw codegen targets. 11// 12//===----------------------------------------------------------------------===// 13 14#include "AMDGPURegisterInfo.h" 15#include "AMDGPUTargetMachine.h" 16 17using namespace llvm; 18 19AMDGPURegisterInfo::AMDGPURegisterInfo(TargetMachine &tm, 20 const TargetInstrInfo &tii) 21: AMDGPUGenRegisterInfo(0), 22 TM(tm), 23 TII(tii) 24 { } 25 26//===----------------------------------------------------------------------===// 27// Function handling callbacks - Functions are a seldom used feature of GPUS, so 28// they are not supported at this time. 29//===----------------------------------------------------------------------===// 30 31const uint16_t AMDGPURegisterInfo::CalleeSavedReg = AMDGPU::NoRegister; 32 33const uint16_t* AMDGPURegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) 34 const { 35 return &CalleeSavedReg; 36} 37 38void AMDGPURegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator MI, 39 int SPAdj, 40 RegScavenger *RS) const { 41 assert(!"Subroutines not supported yet"); 42} 43 44unsigned AMDGPURegisterInfo::getFrameRegister(const MachineFunction &MF) const { 45 assert(!"Subroutines not supported yet"); 46 return 0; 47} 48 49#define GET_REGINFO_TARGET_DESC 50#include "AMDGPUGenRegisterInfo.inc" 51