1fa63f976522bd4faf19249e8c9ac4d3edda498d9Tom Stellard//===- SIMachineFunctionInfo.h - SIMachineFunctionInfo interface -*- C++ -*-==//
2a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//
3a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//                     The LLVM Compiler Infrastructure
4a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//
5a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard// This file is distributed under the University of Illinois Open Source
6a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard// License. See LICENSE.TXT for details.
7a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//
8a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//===----------------------------------------------------------------------===//
9a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//
10fa63f976522bd4faf19249e8c9ac4d3edda498d9Tom Stellard// SIMachineFunctionInfo is used to keep track of the spi_sp_input_addr config
11fa63f976522bd4faf19249e8c9ac4d3edda498d9Tom Stellard// register, which is to tell the hardware which interpolation parameters to
12fa63f976522bd4faf19249e8c9ac4d3edda498d9Tom Stellard// load.
13a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//
14a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard//===----------------------------------------------------------------------===//
15a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
16a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
17a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard#ifndef _SIMACHINEFUNCTIONINFO_H_
18a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard#define _SIMACHINEFUNCTIONINFO_H_
19a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
2030f2a38cef4d4a75776fbd822ff4ad716302b888Tom Stellard#include "llvm/CodeGen/MachineFunction.h"
21a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
22a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellardnamespace llvm {
23a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
2430f2a38cef4d4a75776fbd822ff4ad716302b888Tom Stellardclass SIMachineFunctionInfo : public MachineFunctionInfo {
25a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
26a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard  private:
27a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
28a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard  public:
2930f2a38cef4d4a75776fbd822ff4ad716302b888Tom Stellard    SIMachineFunctionInfo(const MachineFunction &MF);
30a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard    unsigned spi_ps_input_addr;
31a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
32a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard};
33a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
34a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard} // End namespace llvm
35a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
36a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard
37a75c6163e605f35b14f26930dd9227e4f337ec9eTom Stellard#endif //_SIMACHINEFUNCTIONINFO_H_
38