Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(386)

Issue 6928020: Faster string equals in generated code. (Closed)

Created:
9 years, 7 months ago by Vitaly Repeshko
Modified:
7 years, 5 months ago
CC:
v8-dev
Visibility:
Public.

Description

Faster string equals in generated code. In my previous change I mixed up "compare" and "equals". This made us miss the fast length check before comparing strings for equality. Now we have a separate helper for "equals". It shares some of the inner loop details with "compare". I'll see if this can be cleaned up without making it unreadable.

Patch Set 1 #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+245 lines, -31 lines) Patch
M src/arm/code-stubs-arm.h View 2 chunks +10 lines, -2 lines 0 comments Download
M src/arm/code-stubs-arm.cc View 3 chunks +72 lines, -6 lines 0 comments Download
M src/ia32/code-stubs-ia32.h View 2 chunks +10 lines, -4 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 6 chunks +69 lines, -7 lines 2 comments Download
M src/x64/code-stubs-x64.h View 2 chunks +10 lines, -3 lines 0 comments Download
M src/x64/code-stubs-x64.cc View 7 chunks +74 lines, -9 lines 2 comments Download

Messages

Total messages: 3 (0 generated)
Vitaly Repeshko
9 years, 7 months ago (2011-05-05 00:03:05 UTC) #1
Mads Ager (chromium)
LGTM http://codereview.chromium.org/6928020/diff/1/src/ia32/code-stubs-ia32.cc File src/ia32/code-stubs-ia32.cc (right): http://codereview.chromium.org/6928020/diff/1/src/ia32/code-stubs-ia32.cc#newcode5655 src/ia32/code-stubs-ia32.cc:5655: __ mov_b(scratch2, Operand(left, index, times_1, 0)); Do you ...
9 years, 7 months ago (2011-05-05 07:42:24 UTC) #2
Vitaly Repeshko
9 years, 7 months ago (2011-05-05 11:40:16 UTC) #3
http://codereview.chromium.org/6928020/diff/1/src/ia32/code-stubs-ia32.cc
File src/ia32/code-stubs-ia32.cc (right):

http://codereview.chromium.org/6928020/diff/1/src/ia32/code-stubs-ia32.cc#new...
src/ia32/code-stubs-ia32.cc:5655: __ mov_b(scratch2, Operand(left, index,
times_1, 0));
On 2011/05/05 07:42:24, Mads Ager wrote:
> Do you need "times_1, 0" here?

There's no Operand(reg, reg), only Operand(reg, imm).

http://codereview.chromium.org/6928020/diff/1/src/x64/code-stubs-x64.cc
File src/x64/code-stubs-x64.cc (right):

http://codereview.chromium.org/6928020/diff/1/src/x64/code-stubs-x64.cc#newco...
src/x64/code-stubs-x64.cc:4541: __ movb(scratch2, Operand(left, index, times_1,
0));
On 2011/05/05 07:42:24, Mads Ager wrote:
> Do you need "times_1, 0" here?

Same here.

Powered by Google App Engine
This is Rietveld 408576698