nak: Clean up bindless cbuf handles

Take an SSARef instead of an SSAValue because they need to be vec2s.
Also, rename BindlessGPR to BindlessUGPR because that's what it is.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29591>
This commit is contained in:
Faith Ekstrand 2024-05-23 13:35:53 -05:00 committed by Marge Bot
parent 35b445ba27
commit e0b051da39
2 changed files with 9 additions and 9 deletions

View file

@ -226,7 +226,7 @@ impl SM70Instr {
assert!(self.sm >= 75);
let mut v = BitMutView::new_subset(self, range);
if let CBuf::BindlessGPR(reg) = cb.buf {
if let CBuf::BindlessUGPR(reg) = cb.buf {
assert!(reg.base_idx() <= 63);
assert!(reg.file() == RegFile::UGPR);
v.set_field(0..8, reg.base_idx());

View file

@ -755,10 +755,10 @@ pub enum CBuf {
Binding(u8),
#[allow(dead_code)]
BindlessSSA(SSAValue),
BindlessSSA(SSARef),
#[allow(dead_code)]
BindlessGPR(RegRef),
BindlessUGPR(RegRef),
}
impl fmt::Display for CBuf {
@ -766,7 +766,7 @@ impl fmt::Display for CBuf {
match self {
CBuf::Binding(idx) => write!(f, "c[{:#x}]", idx),
CBuf::BindlessSSA(v) => write!(f, "cx[{}]", v),
CBuf::BindlessGPR(r) => write!(f, "cx[{}]", r),
CBuf::BindlessUGPR(r) => write!(f, "cx[{}]", r),
}
}
}
@ -855,7 +855,7 @@ impl SrcRef {
| SrcRef::SSA(_) => None,
SrcRef::CBuf(cb) => match &cb.buf {
CBuf::Binding(_) | CBuf::BindlessSSA(_) => None,
CBuf::BindlessGPR(reg) => Some(reg),
CBuf::BindlessUGPR(reg) => Some(reg),
},
SrcRef::Reg(reg) => Some(reg),
}
@ -869,8 +869,8 @@ impl SrcRef {
| SrcRef::Imm32(_)
| SrcRef::Reg(_) => &[],
SrcRef::CBuf(cb) => match &cb.buf {
CBuf::Binding(_) | CBuf::BindlessGPR(_) => &[],
CBuf::BindlessSSA(ssa) => slice::from_ref(ssa),
CBuf::Binding(_) | CBuf::BindlessUGPR(_) => &[],
CBuf::BindlessSSA(ssa) => ssa.deref(),
},
SrcRef::SSA(ssa) => ssa.deref(),
}
@ -885,8 +885,8 @@ impl SrcRef {
| SrcRef::Imm32(_)
| SrcRef::Reg(_) => &mut [],
SrcRef::CBuf(cb) => match &mut cb.buf {
CBuf::Binding(_) | CBuf::BindlessGPR(_) => &mut [],
CBuf::BindlessSSA(ssa) => slice::from_mut(ssa),
CBuf::Binding(_) | CBuf::BindlessUGPR(_) => &mut [],
CBuf::BindlessSSA(ssa) => ssa.deref_mut(),
},
SrcRef::SSA(ssa) => ssa.deref_mut(),
}