• Home
  • Raw
  • Download

Lines Matching full:module

34 // A struct for containing the module header information.
43 // A SPIR-V module. It contains all the information for a SPIR-V module and
45 class Module {
52 // Creates an empty module with zero'd header.
53 Module() : header_({}), contains_debug_info_(false) {} in Module() function
75 // Appends a capability instruction to this module.
78 // Appends an extension instruction to this module.
81 // Appends an extended instruction set instruction to this module.
84 // Set the memory model for this module.
87 // Set the sampled image addressing mode for this module.
90 // Appends an entry point instruction to this module.
93 // Appends an execution mode instruction to this module.
96 // Appends a debug 1 instruction (excluding OpLine & OpNoLine) to this module.
98 // 2.4 Logical Layout of a Module from the SPIR-V specification.
101 // Appends a debug 2 instruction (excluding OpLine & OpNoLine) to this module.
103 // 2.4 Logical Layout of a Module from the SPIR-V specification.
106 // Appends a debug 3 instruction (OpModuleProcessed) to this module.
111 // NonSemantic.Shader.DebugInfo.100, or DebugInfo) instruction to this module.
114 // Appends an annotation instruction to this module.
117 // Appends a type-declaration instruction to this module.
120 // Appends a constant, global variable, or OpUndef instruction to this module.
123 // Prepends a function declaration to this module.
126 // Appends a function to this module.
134 // module.
138 // module.
156 // Iterators for capabilities instructions contained in this module.
162 // Iterators for ext_inst_imports instructions contained in this module.
168 // Return the memory model instruction contained in this module.
174 // Return the sampled image address mode instruction contained in this module.
183 // appear in the logical layout of a module:
191 // in this module. These are for layout section 7a.
198 // in this module. These are for layout section 7b.
205 // in this module. These are for layout section 7c.
212 // contained in this module. These are OpExtInst for DebugInfo extension
219 // Iterators for entry point instructions contained in this module
223 // Iterators for execution_modes instructions contained in this module.
229 // Iterators for annotation instructions contained in this module.
235 // Iterators for extension instructions contained in this module.
247 // Iterators for functions contained in this module.
255 // Invokes function |f| on all instructions in this module, and optionally on
266 // Returns 1 more than the maximum Id value mentioned in the module.
269 // Returns true if module has capability |cap|
276 // Sets the associated context for this module
279 // Gets the associated context for this module
296 ModuleHeader header_; // Module header
298 // The following fields respect the "Logical Layout of a Module" in
304 // A module only has one memory model instruction.
306 // A module can only have one optional sampled image addressing mode
319 // If the module ends with Op*Line instruction, they will not be attached to
323 // This module contains DebugScope/DebugNoScope or OpLine/OpNoLine.
327 // Pretty-prints |module| to |str|. Returns |str|.
328 std::ostream& operator<<(std::ostream& str, const Module& module);
330 inline void Module::AddCapability(std::unique_ptr<Instruction> c) { in AddCapability()
334 inline void Module::AddExtension(std::unique_ptr<Instruction> e) { in AddExtension()
338 inline void Module::AddExtInstImport(std::unique_ptr<Instruction> e) { in AddExtInstImport()
342 inline void Module::SetMemoryModel(std::unique_ptr<Instruction> m) { in SetMemoryModel()
346 inline void Module::SetSampledImageAddressMode(std::unique_ptr<Instruction> m) { in SetSampledImageAddressMode()
350 inline void Module::AddEntryPoint(std::unique_ptr<Instruction> e) { in AddEntryPoint()
354 inline void Module::AddExecutionMode(std::unique_ptr<Instruction> e) { in AddExecutionMode()
358 inline void Module::AddDebug1Inst(std::unique_ptr<Instruction> d) { in AddDebug1Inst()
362 inline void Module::AddDebug2Inst(std::unique_ptr<Instruction> d) { in AddDebug2Inst()
366 inline void Module::AddDebug3Inst(std::unique_ptr<Instruction> d) { in AddDebug3Inst()
370 inline void Module::AddExtInstDebugInfo(std::unique_ptr<Instruction> d) { in AddExtInstDebugInfo()
374 inline void Module::AddAnnotationInst(std::unique_ptr<Instruction> a) { in AddAnnotationInst()
378 inline void Module::AddType(std::unique_ptr<Instruction> t) { in AddType()
382 inline void Module::AddGlobalValue(std::unique_ptr<Instruction> v) { in AddGlobalValue()
386 inline void Module::AddFunctionDeclaration(std::unique_ptr<Function> f) { in AddFunctionDeclaration()
391 inline void Module::AddFunction(std::unique_ptr<Function> f) { in AddFunction()
395 inline void Module::SetContainsDebugInfo() { contains_debug_info_ = true; } in SetContainsDebugInfo()
397 inline Module::inst_iterator Module::capability_begin() { in capability_begin()
400 inline Module::inst_iterator Module::capability_end() { in capability_end()
404 inline IteratorRange<Module::inst_iterator> Module::capabilities() { in capabilities()
408 inline IteratorRange<Module::const_inst_iterator> Module::capabilities() const { in capabilities()
412 inline Module::inst_iterator Module::ext_inst_import_begin() { in ext_inst_import_begin()
415 inline Module::inst_iterator Module::ext_inst_import_end() { in ext_inst_import_end()
419 inline IteratorRange<Module::inst_iterator> Module::ext_inst_imports() { in ext_inst_imports()
423 inline IteratorRange<Module::const_inst_iterator> Module::ext_inst_imports() in ext_inst_imports()
428 inline Module::inst_iterator Module::debug1_begin() { return debugs1_.begin(); } in debug1_begin()
429 inline Module::inst_iterator Module::debug1_end() { return debugs1_.end(); } in debug1_end()
431 inline IteratorRange<Module::inst_iterator> Module::debugs1() { in debugs1()
435 inline IteratorRange<Module::const_inst_iterator> Module::debugs1() const { in debugs1()
439 inline Module::inst_iterator Module::debug2_begin() { return debugs2_.begin(); } in debug2_begin()
440 inline Module::inst_iterator Module::debug2_end() { return debugs2_.end(); } in debug2_end()
442 inline IteratorRange<Module::inst_iterator> Module::debugs2() { in debugs2()
446 inline IteratorRange<Module::const_inst_iterator> Module::debugs2() const { in debugs2()
450 inline Module::inst_iterator Module::debug3_begin() { return debugs3_.begin(); } in debug3_begin()
451 inline Module::inst_iterator Module::debug3_end() { return debugs3_.end(); } in debug3_end()
453 inline IteratorRange<Module::inst_iterator> Module::debugs3() { in debugs3()
457 inline IteratorRange<Module::const_inst_iterator> Module::debugs3() const { in debugs3()
461 inline Module::inst_iterator Module::ext_inst_debuginfo_begin() { in ext_inst_debuginfo_begin()
464 inline Module::inst_iterator Module::ext_inst_debuginfo_end() { in ext_inst_debuginfo_end()
468 inline IteratorRange<Module::inst_iterator> Module::ext_inst_debuginfo() { in ext_inst_debuginfo()
472 inline IteratorRange<Module::const_inst_iterator> Module::ext_inst_debuginfo() in ext_inst_debuginfo()
477 inline IteratorRange<Module::inst_iterator> Module::entry_points() { in entry_points()
481 inline IteratorRange<Module::const_inst_iterator> Module::entry_points() const { in entry_points()
485 inline Module::inst_iterator Module::execution_mode_begin() { in execution_mode_begin()
488 inline Module::inst_iterator Module::execution_mode_end() { in execution_mode_end()
492 inline IteratorRange<Module::inst_iterator> Module::execution_modes() { in execution_modes()
496 inline IteratorRange<Module::const_inst_iterator> Module::execution_modes() in execution_modes()
501 inline Module::inst_iterator Module::annotation_begin() { in annotation_begin()
504 inline Module::inst_iterator Module::annotation_end() { in annotation_end()
508 inline IteratorRange<Module::inst_iterator> Module::annotations() { in annotations()
512 inline IteratorRange<Module::const_inst_iterator> Module::annotations() const { in annotations()
516 inline Module::inst_iterator Module::extension_begin() { in extension_begin()
519 inline Module::inst_iterator Module::extension_end() { in extension_end()
523 inline IteratorRange<Module::inst_iterator> Module::extensions() { in extensions()
527 inline IteratorRange<Module::const_inst_iterator> Module::extensions() const { in extensions()
531 inline Module::inst_iterator Module::types_values_begin() { in types_values_begin()
535 inline Module::inst_iterator Module::types_values_end() { in types_values_end()
539 inline IteratorRange<Module::inst_iterator> Module::types_values() { in types_values()
543 inline IteratorRange<Module::const_inst_iterator> Module::types_values() const { in types_values()
547 inline Module::const_iterator Module::cbegin() const { in cbegin()
551 inline Module::const_iterator Module::cend() const { in cend()