Lines Matching defs:spv
53 namespace spv {
67 namespace spv {
87 void setSource(spv::SourceLanguage lang, int version)
92 spv::Id getStringId(const std::string& str)
97 spv::Id strId = getUniqueId();
106 spv::Id getSourceFile() const
149 spv::Id incId = getStringId(name);
153 void setMemoryModel(spv::AddressingModel addr, spv::MemoryModel mem)
159 void addCapability(spv::Capability cap) { capabilities.insert(cap); }
209 Id makeGenericType(spv::Op opcode, std::vector<spv::IdImmediate>& operands);
385 // Turn the array of constants into a proper spv constant of the requested type.
399 void addLinkageDecoration(Id id, const char* name, spv::LinkageType linkType);
445 void makeStatementTerminator(spv::Op opcode, const char *name);
449 void makeStatementTerminator(spv::Op opcode, const std::vector<Id>& operands, const char* name);
459 void createStore(Id rValue, Id lValue, spv::MemoryAccessMask memoryAccess = spv::MemoryAccessMaskNone,
460 spv::Scope scope = spv::ScopeMax, unsigned int alignment = 0);
463 Id createLoad(Id lValue, spv::Decoration precision,
464 spv::MemoryAccessMask memoryAccess = spv::MemoryAccessMaskNone,
465 spv::Scope scope = spv::ScopeMax, unsigned int alignment = 0);
498 Id createFunctionCall(spv::Function*, const std::vector<spv::Id>&);
499 Id createSpecConstantOp(Op, Id typeId, const std::vector<spv::Id>& operands, const std::vector<unsigned>& literals);
813 spv::MemoryAccessMask memoryAccess = spv::MemoryAccessMaskNone,
814 spv::Scope scope = spv::ScopeMax, unsigned int alignment = 0);
818 spv::MemoryAccessMask memoryAccess = spv::MemoryAccessMaskNone, spv::Scope scope = spv::ScopeMax,
845 void postProcessType(const Instruction&, spv::Id typeId);
875 void dumpSourceInstructions(const spv::Id fileId, const std::string& text, std::vector<unsigned int>&) const;
878 spv::MemoryAccessMask sanitizeMemoryAccessForStorageClass(spv::MemoryAccessMask memoryAccess, StorageClass sc)
884 spv::Id sourceFileStringId;
885 spv::Id nonSemanticShaderCompilationUnitId {0};
886 spv::Id nonSemanticShaderDebugInfo {0};
887 spv::Id debugInfoNone {0};
888 spv::Id debugExpression {0}; // Debug expression with zero operations.
892 spv::Id currentFileId;
893 std::stack<spv::Id> currentDebugScopeId;
894 spv::Id lastDebugScopeId;
904 std::set<spv::Capability> capabilities;
944 std::unordered_map<std::string, spv::Id> stringIds;
947 std::map<spv::Id, const std::string*> includeFiles;
950 std::map <spv::Id, spv::Id> debugId;
953 std::unordered_map<spv::Id, spv::Id> debugSourceId;
959 }; // end spv namespace