Eliminate a branch in FastBitVector setAndCheck, make it vectorizable.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 Oct 2013 20:34:30 +0000 (20:34 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 Oct 2013 20:34:30 +0000 (20:34 +0000)
commit98e2d8b2349d678e831b59f33d62b6bf87f86a3a
tree46a0663922501c80226dd6792234b1cdd4f6c439
parent71a951151c9ee0fc993513b693e2c63527e8f453
Eliminate a branch in FastBitVector setAndCheck, make it vectorizable.
https://bugs.webkit.org/show_bug.cgi?id=122229

Patch by Nadav Rotem <nrotem@apple.com> on 2013-10-02
Reviewed by Geoffrey Garen.

The CPU is unlikely to predict the branch in setAndCheck. I changed the code to use conditional instructions.

* wtf/FastBitVector.h:
(WTF::FastBitVector::setAndCheck):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@156792 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WTF/ChangeLog
Source/WTF/wtf/FastBitVector.h