From f0cf6a677290ea827e29067e3e30f08b614f1d75 Mon Sep 17 00:00:00 2001 From: Dzmitry Malyshau Date: Thu, 22 Apr 2021 14:43:14 -0400 Subject: [PATCH] [spv-in] support OpModuleProcessed (#753) --- src/front/spv/mod.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/front/spv/mod.rs b/src/front/spv/mod.rs index 4da603895f..9011e5f19f 100644 --- a/src/front/spv/mod.rs +++ b/src/front/spv/mod.rs @@ -2034,6 +2034,7 @@ impl> Parser { Op::SourceExtension => self.parse_source_extension(inst), Op::Name => self.parse_name(inst), Op::MemberName => self.parse_member_name(inst), + Op::ModuleProcessed => self.parse_module_processed(inst), Op::Decorate => self.parse_decorate(inst), Op::MemberDecorate => self.parse_member_decorate(inst), Op::TypeVoid => self.parse_type_void(inst), @@ -2295,6 +2296,17 @@ impl> Parser { Ok(()) } + fn parse_module_processed(&mut self, inst: Instruction) -> Result<(), Error> { + self.switch(ModuleState::Name, inst.op)?; + inst.expect_at_least(2)?; + let (_info, left) = self.next_string(inst.wc - 1)?; + //Note: string is ignored + if left != 0 { + return Err(Error::InvalidOperand); + } + Ok(()) + } + fn parse_decorate(&mut self, inst: Instruction) -> Result<(), Error> { self.switch(ModuleState::Annotation, inst.op)?; inst.expect_at_least(3)?;