mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-19 16:24:18 +08:00
fix: change SamplerState IndirectStatePointer functions
- set and get ExtendedIndirectStatePointer Related-To: NEO-7063 Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
a230c762e0
commit
4b4d21a5e6
@@ -3132,15 +3132,15 @@ typedef struct tagSAMPLER_STATE {
|
||||
INDIRECTSTATEPOINTER_ALIGN_SIZE = 0x40,
|
||||
} INDIRECTSTATEPOINTER;
|
||||
inline void setIndirectStatePointer(const uint32_t value) {
|
||||
UNRECOVERABLE_IF(value > 0xffffff);
|
||||
TheStructure.Common.IndirectStatePointer = static_cast<uint32_t>(value) >> INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
}
|
||||
inline uint32_t getIndirectStatePointer() const {
|
||||
return TheStructure.Common.IndirectStatePointer << INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
UNRECOVERABLE_IF(value & 0x3f);
|
||||
TheStructure.Common.IndirectStatePointer = static_cast<uint32_t>(value & 0xffffc0) >> INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
setExtendedIndirectStatePointer(value);
|
||||
}
|
||||
inline void setExtendedIndirectStatePointer(const uint32_t value) {
|
||||
UNRECOVERABLE_IF(value > 0xff);
|
||||
TheStructure.Common.ExtendedIndirectStatePointer = value;
|
||||
TheStructure.Common.ExtendedIndirectStatePointer = static_cast<uint32_t>(value & 0xff000000) >> 24;
|
||||
}
|
||||
inline uint64_t getIndirectStatePointer() const {
|
||||
return (TheStructure.Common.ExtendedIndirectStatePointer << 24) | (TheStructure.Common.IndirectStatePointer << INDIRECTSTATEPOINTER_BIT_SHIFT);
|
||||
}
|
||||
inline uint32_t getExtendedIndirectStatePointer() const {
|
||||
return TheStructure.Common.ExtendedIndirectStatePointer;
|
||||
|
||||
@@ -2782,12 +2782,16 @@ typedef struct tagSAMPLER_STATE {
|
||||
INDIRECTSTATEPOINTER_BIT_SHIFT = 0x6,
|
||||
INDIRECTSTATEPOINTER_ALIGN_SIZE = 0x40,
|
||||
} INDIRECTSTATEPOINTER;
|
||||
inline void setIndirectStatePointer(const uint64_t value) {
|
||||
UNRECOVERABLE_IF(value > 0xffffc0L);
|
||||
TheStructure.Common.IndirectStatePointer = static_cast<uint32_t>(value) >> INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
inline void setIndirectStatePointer(const uint32_t value) {
|
||||
UNRECOVERABLE_IF(value & 0x3f);
|
||||
TheStructure.Common.IndirectStatePointer = static_cast<uint32_t>(value & 0xffffc0) >> INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
setExtendedIndirectStatePointer(value);
|
||||
}
|
||||
inline void setExtendedIndirectStatePointer(const uint32_t value) {
|
||||
TheStructure.Common.ExtendedIndirectStatePointer = static_cast<uint32_t>(value & 0xff000000) >> 24;
|
||||
}
|
||||
inline uint64_t getIndirectStatePointer() const {
|
||||
return TheStructure.Common.IndirectStatePointer << INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
return (TheStructure.Common.ExtendedIndirectStatePointer << 24) | (TheStructure.Common.IndirectStatePointer << INDIRECTSTATEPOINTER_BIT_SHIFT);
|
||||
}
|
||||
inline void setTczAddressControlMode(const TEXTURE_COORDINATE_MODE value) {
|
||||
TheStructure.Common.TczAddressControlMode = value;
|
||||
|
||||
@@ -2239,7 +2239,7 @@ typedef struct tagSAMPLER_STATE {
|
||||
uint32_t ReturnFilterWeightForBorderTexels : BITFIELD_RANGE(3, 3);
|
||||
uint32_t Reserved_68 : BITFIELD_RANGE(4, 5);
|
||||
uint32_t IndirectStatePointer : BITFIELD_RANGE(6, 23);
|
||||
uint32_t Reserved_88 : BITFIELD_RANGE(24, 31);
|
||||
uint32_t ExtendedIndirectStatePointer : BITFIELD_RANGE(24, 31);
|
||||
uint32_t TczAddressControlMode : BITFIELD_RANGE(0, 2);
|
||||
uint32_t TcyAddressControlMode : BITFIELD_RANGE(3, 5);
|
||||
uint32_t TcxAddressControlMode : BITFIELD_RANGE(6, 8);
|
||||
@@ -2531,11 +2531,15 @@ typedef struct tagSAMPLER_STATE {
|
||||
INDIRECTSTATEPOINTER_ALIGN_SIZE = 0x40,
|
||||
} INDIRECTSTATEPOINTER;
|
||||
inline void setIndirectStatePointer(const uint32_t value) {
|
||||
DEBUG_BREAK_IF(value > 0xffffc0);
|
||||
TheStructure.Common.IndirectStatePointer = static_cast<uint32_t>(value) >> INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
UNRECOVERABLE_IF(value & 0x3f);
|
||||
TheStructure.Common.IndirectStatePointer = static_cast<uint32_t>(value & 0xffffc0) >> INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
setExtendedIndirectStatePointer(value);
|
||||
}
|
||||
inline uint32_t getIndirectStatePointer() const {
|
||||
return TheStructure.Common.IndirectStatePointer << INDIRECTSTATEPOINTER_BIT_SHIFT;
|
||||
inline void setExtendedIndirectStatePointer(const uint32_t value) {
|
||||
TheStructure.Common.ExtendedIndirectStatePointer = static_cast<uint32_t>(value & 0xff000000) >> 24;
|
||||
}
|
||||
inline uint64_t getIndirectStatePointer() const {
|
||||
return (TheStructure.Common.ExtendedIndirectStatePointer << 24) | (TheStructure.Common.IndirectStatePointer << INDIRECTSTATEPOINTER_BIT_SHIFT);
|
||||
}
|
||||
inline void setTczAddressControlMode(const TEXTURE_COORDINATE_MODE value) {
|
||||
TheStructure.Common.TczAddressControlMode = value;
|
||||
|
||||
Reference in New Issue
Block a user