nak: Add MemOrder::Constant

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24998>
This commit is contained in:
M Henning 2023-10-20 22:38:19 -04:00 committed by Marge Bot
parent 2a02a0d0b3
commit 1d7e051a7f
2 changed files with 5 additions and 1 deletions

View file

@ -1140,6 +1140,7 @@ impl SM75Instr {
fn set_mem_order(&mut self, order: &MemOrder) {
if self.sm < 80 {
let scope = match order {
MemOrder::Constant => MemScope::System,
MemOrder::Weak => MemScope::CTA,
MemOrder::Strong(s) => *s,
};
@ -1155,7 +1156,7 @@ impl SM75Instr {
self.set_field(
79..81,
match order {
/* Constant => 0_u8, */
MemOrder::Constant => 0_u8,
MemOrder::Weak => 1_u8,
MemOrder::Strong(_) => 2_u8,
/* MMIO => 3_u8, */
@ -1165,6 +1166,7 @@ impl SM75Instr {
self.set_field(
77..81,
match order {
MemOrder::Constant => 0x4_u8,
MemOrder::Weak => 0x0_u8,
MemOrder::Strong(MemScope::CTA) => 0x5_u8,
MemOrder::Strong(MemScope::GPU) => 0x7_u8,

View file

@ -1748,6 +1748,7 @@ impl fmt::Display for MemType {
#[allow(dead_code)]
#[derive(Clone, Copy, Eq, Hash, PartialEq)]
pub enum MemOrder {
Constant,
Weak,
Strong(MemScope),
}
@ -1755,6 +1756,7 @@ pub enum MemOrder {
impl fmt::Display for MemOrder {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
MemOrder::Constant => write!(f, "CONSTANT"),
MemOrder::Weak => write!(f, "WEAK"),
MemOrder::Strong(scope) => write!(f, "STRONG.{}", scope),
}