Speed up ElementData::getAttributeItem(), which is hot.
<http://webkit.org/b/115031>

Reviewed by Antti Koivisto.

From Blink r148622 by <cevans@chromium.org>.

The previous version had a couple of issues:
- Incurred new WTF::Vector::operator[] checks.
- Had a branch in _every_ loop iteration that checked whether the storage was Vector or array[] backed.

Both these issues are fixed, and CloneNodes.html seems reliably at +2%.
I also believe GetElement.html is maybe +1%.

For WebKit, also applied the same optimization to getAttributeItemIndex().

* dom/Element.h:
(WebCore::ElementData::attributeBase):
(WebCore::ElementData::getAttributeItemIndex):
(WebCore::ElementData::getAttributeItem):
(WebCore::ElementData::attributeItem):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148961 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add Benjamin Poulain's @apple.com address to his entry. Unreviewed.


* Scripts/webkitpy/common/config/contributors.json:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148962 268f45cc-cd09-0410-ab3c-d52691b4dbfc