blob: 7fdaee59a570ffc8c3b4718968186e6e85124843 [file] [log] [blame]
Tom Stellardcb97e3a2013-04-15 17:51:35 +00001//===-- SIDefines.h - SI Helper Macros ----------------------*- 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/// \file
9//===----------------------------------------------------------------------===//
10
11#ifndef SIDEFINES_H_
12#define SIDEFINES_H_
13
Tom Stellard16a9a202013-08-14 23:24:17 +000014namespace SIInstrFlags {
15enum {
Michel Danzer20680b12013-08-16 16:19:24 +000016 MIMG = 1 << 3,
Tom Stellard93fabce2013-10-10 17:11:55 +000017 SMRD = 1 << 4,
18 VOP1 = 1 << 5,
19 VOP2 = 1 << 6,
20 VOP3 = 1 << 7,
21 VOPC = 1 << 8
Tom Stellard16a9a202013-08-14 23:24:17 +000022};
23}
24
Tom Stellardcb97e3a2013-04-15 17:51:35 +000025#define R_00B028_SPI_SHADER_PGM_RSRC1_PS 0x00B028
Michel Danzer49812b52013-07-10 16:37:07 +000026#define R_00B02C_SPI_SHADER_PGM_RSRC2_PS 0x00B02C
27#define S_00B02C_EXTRA_LDS_SIZE(x) (((x) & 0xFF) << 8)
Tom Stellardcb97e3a2013-04-15 17:51:35 +000028#define R_00B128_SPI_SHADER_PGM_RSRC1_VS 0x00B128
29#define R_00B228_SPI_SHADER_PGM_RSRC1_GS 0x00B228
30#define R_00B848_COMPUTE_PGM_RSRC1 0x00B848
31#define S_00B028_VGPRS(x) (((x) & 0x3F) << 0)
32#define S_00B028_SGPRS(x) (((x) & 0x0F) << 6)
Michel Danzer49812b52013-07-10 16:37:07 +000033#define R_00B84C_COMPUTE_PGM_RSRC2 0x00B84C
34#define S_00B84C_LDS_SIZE(x) (((x) & 0x1FF) << 15)
Tom Stellardcb97e3a2013-04-15 17:51:35 +000035#define R_0286CC_SPI_PS_INPUT_ENA 0x0286CC
36
37#endif // SIDEFINES_H_