mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-09-03 02:30:00 +00:00
The logic in SIInsertWaits::getHwCounts() only really made sense for SMRD instructions, and trying to shoehorn it into handling DS_WRITE_B32 caused it to corrupt the encoding of that by clobbering the first operand with the second one. Undo that damage and only apply the SMRD logic to that. Fixes some derivates related piglit regressions with radeonsi. Reviewed-by: Tom Stellard <thomas.stellard@amd.com> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188558 91177308-0d34-0410-b5e6-96231b3b80d8
34 lines
1.4 KiB
C++
34 lines
1.4 KiB
C++
//===-- SIDefines.h - SI Helper Macros ----------------------*- C++ -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
/// \file
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef SIDEFINES_H_
|
|
#define SIDEFINES_H_
|
|
|
|
namespace SIInstrFlags {
|
|
enum {
|
|
MIMG = 1 << 3,
|
|
SMRD = 1 << 4
|
|
};
|
|
}
|
|
|
|
#define R_00B028_SPI_SHADER_PGM_RSRC1_PS 0x00B028
|
|
#define R_00B02C_SPI_SHADER_PGM_RSRC2_PS 0x00B02C
|
|
#define S_00B02C_EXTRA_LDS_SIZE(x) (((x) & 0xFF) << 8)
|
|
#define R_00B128_SPI_SHADER_PGM_RSRC1_VS 0x00B128
|
|
#define R_00B228_SPI_SHADER_PGM_RSRC1_GS 0x00B228
|
|
#define R_00B848_COMPUTE_PGM_RSRC1 0x00B848
|
|
#define S_00B028_VGPRS(x) (((x) & 0x3F) << 0)
|
|
#define S_00B028_SGPRS(x) (((x) & 0x0F) << 6)
|
|
#define R_00B84C_COMPUTE_PGM_RSRC2 0x00B84C
|
|
#define S_00B84C_LDS_SIZE(x) (((x) & 0x1FF) << 15)
|
|
#define R_0286CC_SPI_PS_INPUT_ENA 0x0286CC
|
|
|
|
#endif // SIDEFINES_H_
|