diff --git a/renderdoc/driver/shaders/spirv/spirv_editor.cpp b/renderdoc/driver/shaders/spirv/spirv_editor.cpp index 4f03039cf..e536a426e 100644 --- a/renderdoc/driver/shaders/spirv/spirv_editor.cpp +++ b/renderdoc/driver/shaders/spirv/spirv_editor.cpp @@ -280,6 +280,17 @@ void Editor::AddExecutionMode(const Operation &mode) addWords(offset, mode.size()); } +Id Editor::HasExtInst(const char *setname) +{ + for(auto it = extSets.begin(); it != extSets.end(); ++it) + { + if(it->second == setname) + return it->first; + } + + return Id(); +} + Id Editor::ImportExtInst(const char *setname) { for(auto it = extSets.begin(); it != extSets.end(); ++it) diff --git a/renderdoc/driver/shaders/spirv/spirv_editor.h b/renderdoc/driver/shaders/spirv/spirv_editor.h index 376c930f3..81c420020 100644 --- a/renderdoc/driver/shaders/spirv/spirv_editor.h +++ b/renderdoc/driver/shaders/spirv/spirv_editor.h @@ -99,6 +99,7 @@ public: void AddCapability(Capability cap); void AddExtension(const rdcstr &extension); void AddExecutionMode(const Operation &mode); + Id HasExtInst(const char *setname); Id ImportExtInst(const char *setname); Id AddType(const Operation &op); Id AddVariable(const Operation &op);