Changeset 74829 in webkit for trunk/JavaScriptCore
- Timestamp:
- Dec 31, 2010, 4:43:34 AM (14 years ago)
- Location:
- trunk/JavaScriptCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/ChangeLog
r74815 r74829 1 2010-12-31 Patrick Gansterer <[email protected]> 2 3 Reviewed by Darin Adler. 4 5 Add a fast case for ASCII strings in HashAndUTF8CharactersTranslator::equal 6 https://bugs.webkit.org/show_bug.cgi?id=50517 7 8 This change shows about 2% performance win on the xml-parser benchmark. 9 10 * wtf/text/AtomicString.cpp: 11 (WTF::HashAndUTF8CharactersTranslator::equal): 12 1 13 2010-12-30 Patrick Gansterer <[email protected]> 2 14 -
trunk/JavaScriptCore/wtf/text/AtomicString.cpp
r73201 r74829 226 226 static bool equal(StringImpl* const& string, const HashAndUTF8Characters& buffer) 227 227 { 228 return equalUTF16WithUTF8(string->characters(), string->characters() + string->length(), buffer.characters, buffer.characters + buffer.length); 228 if (buffer.utf16Length != string->length()) 229 return false; 230 231 const UChar* stringCharacters = string->characters(); 232 233 // If buffer contains only ASCII characters UTF-8 and UTF16 length are the same. 234 if (buffer.utf16Length != buffer.length) 235 return equalUTF16WithUTF8(stringCharacters, stringCharacters + string->length(), buffer.characters, buffer.characters + buffer.length); 236 237 for (unsigned i = 0; i < buffer.length; ++i) { 238 ASSERT(isASCII(buffer.characters[i])); 239 if (stringCharacters[i] != buffer.characters[i]) 240 return false; 241 } 242 243 return true; 229 244 } 230 245
Note:
See TracChangeset
for help on using the changeset viewer.