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

Issue 546087: Implement inline string compare on ARM. (Closed)

Created:
10 years, 11 months ago by Lasse Reichstein
Modified:
9 years, 6 months ago
CC:
v8-dev
Visibility:
Public.

Description

Implement inline string compare on ARM. Backport optimizations from x64 version to ia32.

Patch Set 1 #

Total comments: 26

Patch Set 2 : Addressed review comments. Made ARM version work. #

Total comments: 8

Patch Set 3 : Further optimization of ARM version #

Unified diffs Side-by-side diffs Delta from patch set Stats (+336 lines, -123 lines) Patch
M src/arm/codegen-arm.h View 1 2 1 chunk +22 lines, -0 lines 0 comments Download
M src/arm/codegen-arm.cc View 1 2 6 chunks +120 lines, -5 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 1 1 chunk +19 lines, -0 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 1 1 chunk +40 lines, -0 lines 0 comments Download
M src/ia32/assembler-ia32.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/ia32/assembler-ia32.cc View 1 1 chunk +18 lines, -0 lines 0 comments Download
M src/ia32/codegen-ia32.cc View 1 2 3 chunks +57 lines, -105 lines 0 comments Download
M src/ia32/disasm-ia32.cc View 1 chunk +8 lines, -6 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 1 chunk +11 lines, -0 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 1 chunk +32 lines, -0 lines 0 comments Download
M src/list.h View 1 chunk +2 lines, -1 line 0 comments Download
M src/x64/codegen-x64.cc View 2 3 chunks +1 line, -3 lines 0 comments Download
M src/x64/macro-assembler-x64.cc View 2 chunks +2 lines, -3 lines 0 comments Download
M test/cctest/test-disasm-ia32.cc View 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
Lasse Reichstein
Please review. Erik, please check the ARM version.
10 years, 11 months ago (2010-01-20 11:34:15 UTC) #1
Erik Corry
LGTM with comments. http://codereview.chromium.org/546087/diff/1/2 File src/arm/codegen-arm.cc (right): http://codereview.chromium.org/546087/diff/1/2#newcode6776 src/arm/codegen-arm.cc:6776: { If there are a lot ...
10 years, 11 months ago (2010-01-20 12:02:33 UTC) #2
antonm
Minor nit. http://codereview.chromium.org/546087/diff/1/3 File src/arm/codegen-arm.h (right): http://codereview.chromium.org/546087/diff/1/3#newcode517 src/arm/codegen-arm.h:517: explicit StringCompareStub() { nit: explicit is not ...
10 years, 11 months ago (2010-01-20 12:13:17 UTC) #3
Søren Thygesen Gjesse
LGTM http://codereview.chromium.org/546087/diff/1/2 File src/arm/codegen-arm.cc (right): http://codereview.chromium.org/546087/diff/1/2#newcode6762 src/arm/codegen-arm.cc:6762: // in the loop. Does using a PostIndex ...
10 years, 11 months ago (2010-01-20 12:30:18 UTC) #4
Lasse Reichstein
Addressed comments. Made ARM version actually work. http://codereview.chromium.org/546087/diff/1/2 File src/arm/codegen-arm.cc (right): http://codereview.chromium.org/546087/diff/1/2#newcode6762 src/arm/codegen-arm.cc:6762: // in ...
10 years, 11 months ago (2010-01-21 09:40:50 UTC) #5
Erik Corry
LGTM http://codereview.chromium.org/546087/diff/6001/7001 File src/arm/codegen-arm.cc (right): http://codereview.chromium.org/546087/diff/6001/7001#newcode5209 src/arm/codegen-arm.cc:5209: // Both the builtin and the StringCompareStub code ...
10 years, 11 months ago (2010-01-21 10:23:19 UTC) #6
Søren Thygesen Gjesse
http://codereview.chromium.org/546087/diff/6001/7007 File src/ia32/codegen-ia32.cc (right): http://codereview.chromium.org/546087/diff/6001/7007#newcode9683 src/ia32/codegen-ia32.cc:9683: // which doesn't need an additional compare. Doesn't these ...
10 years, 11 months ago (2010-01-21 10:26:27 UTC) #7
Lasse Reichstein
How about this then, Erik? http://codereview.chromium.org/546087/diff/6001/7001 File src/arm/codegen-arm.cc (right): http://codereview.chromium.org/546087/diff/6001/7001#newcode5209 src/arm/codegen-arm.cc:5209: // Both the builtin ...
10 years, 11 months ago (2010-01-21 12:03:03 UTC) #8
Erik Corry
LGTM (you sick puppy!)
10 years, 11 months ago (2010-01-21 12:07:23 UTC) #9
Søren Thygesen Gjesse
10 years, 11 months ago (2010-01-21 12:30:34 UTC) #10
http://codereview.chromium.org/546087/diff/6001/7007
File src/ia32/codegen-ia32.cc (right):

http://codereview.chromium.org/546087/diff/6001/7007#newcode9683
src/ia32/codegen-ia32.cc:9683: // which doesn't need an additional compare.
On 2010/01/21 10:26:27, Søren Gjesse wrote:
> Doesn't these two lea's have the kHeapObjectTag == 1 asumption?

Ignore that I just noticed that FieldOperand is used and it fits with the rest.

Powered by Google App Engine
This is Rietveld 408576698