• Home
  • Raw
  • Download

Lines Matching full:instructions

15 //! For more information about SPIR-V modules, instructions and types, see the
35 instructions: Vec<Instruction>, field
69 let instructions = { in new() localVariable
99 // It is impossible for a valid SPIR-V file to contain more Ids than instructions, so put in new()
102 let mut ids = HashMap::with_capacity(instructions.len().min(bound as usize)); in new()
131 for (index, instruction) in instructions.iter().enumerate() { in new()
254 instructions, in new()
277 match &spirv.instructions[index] { in new()
292 match &spirv.instructions[index] { in new()
318 match &spirv.instructions[index] { in new()
327 spirv.instructions[data.index], in new()
352 spirv.instructions[data.index], in new()
373 /// Returns a reference to the instructions in the module.
375 pub fn instructions(&self) -> &[Instruction] { in instructions() method
376 &self.instructions in instructions()
402 instructions: &self.instructions, in id()
406 /// Returns an iterator over all `Capability` instructions.
409 self.instructions[self.range_capability.clone()].iter() in iter_capability()
412 /// Returns an iterator over all `Extension` instructions.
415 self.instructions[self.range_extension.clone()].iter() in iter_extension()
418 /// Returns an iterator over all `ExtInstImport` instructions.
421 self.instructions[self.range_ext_inst_import.clone()].iter() in iter_ext_inst_import()
427 &self.instructions[self.memory_model] in memory_model()
430 /// Returns an iterator over all `EntryPoint` instructions.
433 self.instructions[self.range_entry_point.clone()].iter() in iter_entry_point()
436 /// Returns an iterator over all execution mode instructions.
439 self.instructions[self.range_execution_mode.clone()].iter() in iter_execution_mode()
442 /// Returns an iterator over all name debug instructions.
445 self.instructions[self.range_name.clone()].iter() in iter_name()
448 /// Returns an iterator over all decoration instructions.
451 self.instructions[self.range_decoration.clone()].iter() in iter_decoration()
454 /// Returns an iterator over all global declaration instructions: types,
457 /// Note: This can also include `Line` and `NoLine` instructions.
460 self.instructions[self.range_global.clone()].iter() in iter_global()
482 instructions: &'a [Instruction], field
489 &self.instructions[self.data_indices.index] in instruction()
492 /// Returns an iterator over all name debug instructions that target this `Id`.
495 let instructions = self.instructions; in iter_name() localVariable
499 .map(move |&index| &instructions[index]) in iter_name()
502 /// Returns an iterator over all decorate instructions, that target this `Id`. This includes any
503 /// decorate instructions that target this `Id` indirectly via a `DecorationGroup`.
506 let instructions = self.instructions; in iter_decoration() localVariable
510 .map(move |&index| &instructions[index]) in iter_decoration()
517 let instructions = self.instructions; in iter_members() localVariable
523 instructions, in iter_members()
532 instructions: &'a [Instruction], field
536 /// Returns an iterator over all name debug instructions that target this struct member.
539 let instructions = self.instructions; in iter_name() localVariable
543 .map(move |&index| &instructions[index]) in iter_name()
546 /// Returns an iterator over all decorate instructions that target this struct member. This
547 /// includes any decorate instructions that target this member indirectly via a
551 let instructions = self.instructions; in iter_decoration() localVariable
555 .map(move |&index| &instructions[index]) in iter_decoration()
699 "id {} is assigned more than once, by instructions {} and {}", in fmt()
737 /// Error that can happen when parsing SPIR-V instructions into Rust data structures.