1 //===--------------------- R600FrameLowering.h ------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef LLVM_LIB_TARGET_AMDGPU_R600FRAMELOWERING_H
11 #define LLVM_LIB_TARGET_AMDGPU_R600FRAMELOWERING_H
13 #include "AMDGPUFrameLowering.h"
17 class R600FrameLowering
: public AMDGPUFrameLowering
{
19 R600FrameLowering(StackDirection D
, unsigned StackAl
, int LAO
,
20 unsigned TransAl
= 1) :
21 AMDGPUFrameLowering(D
, StackAl
, LAO
, TransAl
) {}
22 ~R600FrameLowering() override
;
24 void emitPrologue(MachineFunction
&MF
,
25 MachineBasicBlock
&MBB
) const override
{}
26 void emitEpilogue(MachineFunction
&MF
,
27 MachineBasicBlock
&MBB
) const override
{}
28 int getFrameIndexReference(const MachineFunction
&MF
, int FI
,
29 unsigned &FrameReg
) const override
;
31 bool hasFP(const MachineFunction
&MF
) const override
{
36 } // end namespace llvm
38 #endif // LLVM_LIB_TARGET_AMDGPU_R600FRAMELOWERING_H