Просмотр исходного кода

shader read optimization (#2109)

Currently `const char * str` gets converted to a StringView when its passed to `bx::strFindNl`, incurring a strlen. We have the data to calculate the strlen and fully construct the StringView.
James Fulop 5 лет назад
Родитель
Сommit
ea4bbbfcb7
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      tools/shaderc/shaderc.h

+ 1 - 1
tools/shaderc/shaderc.h

@@ -87,7 +87,7 @@ namespace bgfx
 
 
 			uint32_t pos = m_pos;
 			uint32_t pos = m_pos;
 			const char* str = &m_str[pos];
 			const char* str = &m_str[pos];
-			const char* nl = bx::strFindNl(str).getPtr();
+			const char* nl = bx::strFindNl(bx::StringView(str, str + (m_size - pos))).getPtr();
 			pos += (uint32_t)(nl - str);
 			pos += (uint32_t)(nl - str);
 
 
 			const char* eol = &m_str[pos];
 			const char* eol = &m_str[pos];