aboutsummaryrefslogtreecommitdiffhomepage
path: root/ptx/src/pass/emit_spirv.rs
diff options
context:
space:
mode:
authorAndrzej Janik <[email protected]>2024-09-23 16:33:46 +0200
committerGitHub <[email protected]>2024-09-23 16:33:46 +0200
commitc92abba2bb884a4dba8ca5e3df4d46a30878f27e (patch)
tree89bab98e3071aedd12f755bfde8a7c7382138ed7 /ptx/src/pass/emit_spirv.rs
parent46def3e7e09dbf4d3e7287a72bfecb73e6e429c5 (diff)
downloadZLUDA-c92abba2bb884a4dba8ca5e3df4d46a30878f27e.tar.gz
ZLUDA-c92abba2bb884a4dba8ca5e3df4d46a30878f27e.zip
Refactor compilation passes (#270)
The overarching goal is to refactor all passes so they are module-scoped and not function-scoped. Additionally, make improvements to the most egregiously buggy/unfit passes (so the code is ready for the next major features: linking, ftz handling) and continue adding more code to the LLVM backend
Diffstat (limited to 'ptx/src/pass/emit_spirv.rs')
-rw-r--r--ptx/src/pass/emit_spirv.rs3
1 files changed, 1 insertions, 2 deletions
diff --git a/ptx/src/pass/emit_spirv.rs b/ptx/src/pass/emit_spirv.rs
index 5147b79..120a477 100644
--- a/ptx/src/pass/emit_spirv.rs
+++ b/ptx/src/pass/emit_spirv.rs
@@ -469,7 +469,6 @@ fn space_to_spirv(this: ast::StateSpace) -> spirv::StorageClass {
ast::StateSpace::Shared => spirv::StorageClass::Workgroup,
ast::StateSpace::Param => spirv::StorageClass::Function,
ast::StateSpace::Reg => spirv::StorageClass::Function,
- ast::StateSpace::Sreg => spirv::StorageClass::Input,
ast::StateSpace::ParamEntry
| ast::StateSpace::ParamFunc
| ast::StateSpace::SharedCluster
@@ -693,7 +692,6 @@ fn emit_variable<'input>(
ast::StateSpace::Shared => (false, spirv::StorageClass::Workgroup),
ast::StateSpace::Const => (false, spirv::StorageClass::UniformConstant),
ast::StateSpace::Generic => todo!(),
- ast::StateSpace::Sreg => todo!(),
ast::StateSpace::ParamEntry
| ast::StateSpace::ParamFunc
| ast::StateSpace::SharedCluster
@@ -1563,6 +1561,7 @@ fn emit_function_body_ops<'input>(
builder.copy_object(vector_type.0, Some(repack.packed.0), temp_vec)?;
}
}
+ Statement::VectorAccess(vector_access) => todo!(),
}
}
Ok(())