mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-23 17:40:11 +01:00
nak: Plumb the SM through to nak::Shader
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24998>
This commit is contained in:
parent
611ed96557
commit
5daff0876f
3 changed files with 9 additions and 6 deletions
|
|
@ -261,8 +261,9 @@ pub extern "C" fn nak_compile_shader(
|
|||
) -> *mut nak_shader_bin {
|
||||
unsafe { nak_postprocess_nir(nir, nak) };
|
||||
let nir = unsafe { &*nir };
|
||||
let nak = unsafe { &*nak };
|
||||
|
||||
let mut s = nak_shader_from_nir(nir);
|
||||
let mut s = nak_shader_from_nir(nir, nak.sm);
|
||||
|
||||
println!("NAK IR:\n{}", &s);
|
||||
|
||||
|
|
|
|||
|
|
@ -363,8 +363,8 @@ impl<'a> ShaderFromNir<'a> {
|
|||
self.func.take().unwrap()
|
||||
}
|
||||
|
||||
pub fn parse_shader(&mut self) -> Shader {
|
||||
let mut s = Shader::new();
|
||||
pub fn parse_shader(&mut self, sm: u8) -> Shader {
|
||||
let mut s = Shader::new(sm);
|
||||
for nf in self.nir.iter_functions() {
|
||||
if let Some(nfi) = nf.get_impl() {
|
||||
let f = self.parse_function_impl(nfi);
|
||||
|
|
@ -375,6 +375,6 @@ impl<'a> ShaderFromNir<'a> {
|
|||
}
|
||||
}
|
||||
|
||||
pub fn nak_shader_from_nir(ns: &nir_shader) -> Shader {
|
||||
ShaderFromNir::new(ns).parse_shader()
|
||||
pub fn nak_shader_from_nir(ns: &nir_shader, sm: u8) -> Shader {
|
||||
ShaderFromNir::new(ns).parse_shader(sm)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1149,12 +1149,14 @@ impl fmt::Display for Function {
|
|||
}
|
||||
|
||||
pub struct Shader {
|
||||
pub sm: u8,
|
||||
pub functions: Vec<Function>,
|
||||
}
|
||||
|
||||
impl Shader {
|
||||
pub fn new() -> Shader {
|
||||
pub fn new(sm: u8) -> Shader {
|
||||
Shader {
|
||||
sm: sm,
|
||||
functions: Vec::new(),
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue