blob: e97fb5be62ec0e594051c0a7062135fd11be9aa2 [file] [log] [blame]
Tom Stellardf98f2ce2012-12-11 21:25:42 +00001//===-- R600MachineFunctionInfo.h - R600 Machine Function Info ----*- C++ -*-=//
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/// \file
11//===----------------------------------------------------------------------===//
12
13#ifndef R600MACHINEFUNCTIONINFO_H
14#define R600MACHINEFUNCTIONINFO_H
15
16#include "llvm/CodeGen/MachineFunction.h"
17#include "llvm/CodeGen/SelectionDAG.h"
18#include <vector>
19
20namespace llvm {
21
22class R600MachineFunctionInfo : public MachineFunctionInfo {
23
24public:
25 R600MachineFunctionInfo(const MachineFunction &MF);
26 std::vector<unsigned> ReservedRegs;
27 SDNode *Outputs[16];
28 SDNode *StreamOutputs[64][4];
29 bool HasLinearInterpolation;
30 bool HasPerspectiveInterpolation;
31
32 unsigned GetIJLinearIndex() const;
33 unsigned GetIJPerspectiveIndex() const;
34
35};
36
37} // End llvm namespace
38
39#endif //R600MACHINEFUNCTIONINFO_H