diff --git a/src/dxbc/dxbc_chunk_isgn.cpp b/src/dxbc/dxbc_chunk_isgn.cpp index 45285014f..bd67f4ca8 100644 --- a/src/dxbc/dxbc_chunk_isgn.cpp +++ b/src/dxbc/dxbc_chunk_isgn.cpp @@ -76,6 +76,14 @@ namespace dxvk { } + uint32_t DxbcIsgn::maxRegisterCount() const { + uint32_t result = 0; + for (auto e = this->begin(); e != this->end(); e++) + result = std::max(result, e->registerId + 1); + return result; + } + + bool DxbcIsgn::compareSemanticNames( const std::string& a, const std::string& b) const { if (a.size() != b.size()) diff --git a/src/dxbc/dxbc_chunk_isgn.h b/src/dxbc/dxbc_chunk_isgn.h index 44c4f6669..baf4aa5ec 100644 --- a/src/dxbc/dxbc_chunk_isgn.h +++ b/src/dxbc/dxbc_chunk_isgn.h @@ -52,6 +52,8 @@ namespace dxvk { DxbcRegMask regMask( uint32_t registerId) const; + uint32_t maxRegisterCount() const; + private: std::vector m_entries;