Add OpExtension

This commit is contained in:
ReinUsesLisp 2019-03-08 21:09:11 -03:00
parent 2b0a59d890
commit b23716087a
2 changed files with 16 additions and 1 deletions

View file

@ -38,10 +38,16 @@ std::vector<u8> Module::Assemble() const {
op.Add(static_cast<u32>(capability));
op.Write(stream);
}
for (const auto& extension_name : extensions) {
Op op(spv::Op::OpExtension);
op.Add(extension_name);
op.Write(stream);
}
if (glsl_std_450) {
glsl_std_450->Write(stream);
}
// TODO write ext inst imports
Op memory_model_ref{spv::Op::OpMemoryModel};
memory_model_ref.Add(static_cast<u32>(addressing_model));
@ -59,6 +65,10 @@ std::vector<u8> Module::Assemble() const {
return bytes;
}
void Module::AddExtension(const std::string& extension_name) {
extensions.insert(extension_name);
}
void Module::AddCapability(spv::Capability capability) {
capabilities.insert(capability);
}