Changeset 208815 in webkit
- Timestamp:
- Nov 16, 2016 2:53:48 PM (7 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r208814 r208815 1 2016-11-16 Alex Christensen <achristensen@webkit.org> 2 3 REGRESSION (r207162): [debug] loader/stateobjects LayoutTests timing out 4 https://bugs.webkit.org/show_bug.cgi?id=163307 5 6 Reviewed by Alexey Proskuryakov. 7 8 * platform/ios-simulator/TestExpectations: 9 * platform/mac/TestExpectations: 10 1 11 2016-11-16 Alex Christensen <achristensen@webkit.org> 2 12 -
trunk/LayoutTests/platform/ios-simulator/TestExpectations
r208814 r208815 2727 2727 webkit.org/b/163291 media/video-play-require-user-gesture.html 2728 2728 2729 webkit.org/b/163307 [ Debug ] loader/stateobjects/pushstate-size-iframe.html [ Skip ]2730 webkit.org/b/163307 [ Debug ] loader/stateobjects/pushstate-size.html [ Skip ]2731 webkit.org/b/163307 [ Debug ] loader/stateobjects/replacestate-size-iframe.html [ Skip ]2732 webkit.org/b/163307 [ Debug ] loader/stateobjects/replacestate-size.html [ Skip ]2733 2734 2729 webkit.org/b/163755 imported/w3c/csswg-test/css-shapes-1 [ Skip ] 2735 2730 -
trunk/LayoutTests/platform/mac/TestExpectations
r208792 r208815 1443 1443 webkit.org/b/116621 fast/replaced/preferred-widths.html [ Pass Failure ] 1444 1444 1445 webkit.org/b/163307 [ Debug ] loader/stateobjects/pushstate-size-iframe.html [ Skip ]1446 webkit.org/b/163307 [ Debug ] loader/stateobjects/pushstate-size.html [ Skip ]1447 webkit.org/b/163307 [ Debug ] loader/stateobjects/replacestate-size-iframe.html [ Skip ]1448 webkit.org/b/163307 [ Debug ] loader/stateobjects/replacestate-size.html [ Skip ]1449 1450 1445 webkit.org/b/164088 [ Yosemite ] media/modern-media-controls/scrubber-support/scrubber-support-click.html [ Skip ] 1451 1446 webkit.org/b/164088 [ Yosemite ] media/modern-media-controls/scrubber-support/scrubber-support-drag.html [ Skip ] -
trunk/Source/WebCore/ChangeLog
r208813 r208815 1 2016-11-16 Alex Christensen <achristensen@webkit.org> 2 3 REGRESSION (r207162): [debug] loader/stateobjects LayoutTests timing out 4 https://bugs.webkit.org/show_bug.cgi?id=163307 5 6 Reviewed by Alexey Proskuryakov. 7 8 * platform/URLParser.cpp: 9 Removed some unnecessary and redundant assertions in iterators, which are inside inner loops. 10 (WebCore::URLParser::parsedDataView): 11 (WebCore::URLParser::parse): 12 Add a parsedDataView that just returns a UChar instead of a StringView for 1-length views. 13 This speeds up debug builds considerably, which spent most of the time parsing the path 14 making and destroying these 1-length StringViews. It can't hurt release builds. 15 * platform/URLParser.h: 16 1 17 2016-11-16 Chris Dumez <cdumez@apple.com> 2 18 -
trunk/Source/WebCore/platform/URLParser.cpp
r208508 r208815 108 108 ALWAYS_INLINE auto CodePointIterator<LChar>::operator++() -> CodePointIterator& 109 109 { 110 ASSERT(!atEnd());111 110 m_begin++; 112 111 return *this; … … 125 124 ALWAYS_INLINE auto CodePointIterator<UChar>::operator++() -> CodePointIterator& 126 125 { 127 ASSERT(!atEnd());128 126 unsigned i = 0; 129 127 size_t length = m_end - m_begin; … … 1069 1067 } 1070 1068 1069 ALWAYS_INLINE UChar URLParser::parsedDataView(size_t position) 1070 { 1071 if (UNLIKELY(m_didSeeSyntaxViolation)) 1072 return m_asciiBuffer[position]; 1073 return m_inputString[position]; 1074 } 1075 1071 1076 template<typename CharacterType> 1072 1077 ALWAYS_INLINE size_t URLParser::currentPosition(const CodePointIterator<CharacterType>& iterator) … … 1313 1318 authorityOrHostBegin = c; 1314 1319 } else { 1315 ASSERT(parsedDataView(currentPosition(c) - 1 , 1) == "/");1320 ASSERT(parsedDataView(currentPosition(c) - 1) == '/'); 1316 1321 m_url.m_userStart = currentPosition(c) - 1; 1317 1322 m_url.m_userEnd = m_url.m_userStart; … … 1601 1606 } 1602 1607 if (windowsQuirk || authorityOrHostBegin == c) { 1603 ASSERT(windowsQuirk || parsedDataView(currentPosition(c) - 1 , 1) == "/");1608 ASSERT(windowsQuirk || parsedDataView(currentPosition(c) - 1) == '/'); 1604 1609 if (UNLIKELY(*c == '?')) { 1605 1610 syntaxViolation(c); … … 1664 1669 break; 1665 1670 } 1666 if (UNLIKELY(currentPosition(c) && parsedDataView(currentPosition(c) - 1 , 1) == "/")) {1671 if (UNLIKELY(currentPosition(c) && parsedDataView(currentPosition(c) - 1) == '/')) { 1667 1672 if (UNLIKELY(isDoubleDotPathSegment(c))) { 1668 1673 syntaxViolation(c); … … 1785 1790 ASSERT(m_url.m_userStart); 1786 1791 ASSERT(m_url.m_userStart == currentPosition(c)); 1787 ASSERT(parsedDataView(currentPosition(c) - 1 , 1) == "/");1792 ASSERT(parsedDataView(currentPosition(c) - 1) == '/'); 1788 1793 m_url.m_userStart--; 1789 1794 m_url.m_userEnd = m_url.m_userStart; -
trunk/Source/WebCore/platform/URLParser.h
r208407 r208815 103 103 void copyASCIIStringUntil(const String&, size_t length); 104 104 StringView parsedDataView(size_t start, size_t length); 105 UChar parsedDataView(size_t position); 105 106 106 107 using IPv4Address = uint32_t;
Note: See TracChangeset
for help on using the changeset viewer.