LLVM  3.7.0
AMDGPUMachineFunction.h
Go to the documentation of this file.
1 //===-- 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 LLVM_LIB_TARGET_R600_AMDGPUMACHINEFUNCTION_H
14 #define LLVM_LIB_TARGET_R600_AMDGPUMACHINEFUNCTION_H
15 
17 #include <map>
18 
19 namespace llvm {
20 
22  virtual void anchor();
23  unsigned ShaderType;
24 
25 public:
27  /// A map to keep track of local memory objects and their offsets within
28  /// the local memory space.
29  std::map<const GlobalValue *, unsigned> LocalMemoryObjects;
30  /// Number of bytes in the LDS that are being used.
31  unsigned LDSSize;
32 
33  /// Start of implicit kernel args
34  unsigned ABIArgOffset;
35 
36  unsigned getShaderType() const {
37  return ShaderType;
38  }
39 
40  unsigned ScratchSize;
41  bool IsKernel;
42 };
43 
44 }
45 #endif
AMDGPUMachineFunction(const MachineFunction &MF)
MachineFunctionInfo - This class can be derived from and used by targets to hold private target-speci...
unsigned LDSSize
Number of bytes in the LDS that are being used.
std::map< const GlobalValue *, unsigned > LocalMemoryObjects
A map to keep track of local memory objects and their offsets within the local memory space...
unsigned ABIArgOffset
Start of implicit kernel args.