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

Issue 503079: Add fast case stub for BIT_NOT. (Closed)

Created:
11 years ago by Kasper Lund
Modified:
9 years, 7 months ago
Reviewers:
Erik Corry
CC:
v8-dev
Visibility:
Public.

Description

Add fast case stub for BIT_NOT. Committed: http://code.google.com/p/v8/source/detail?r=3513

Patch Set 1 #

Total comments: 5

Patch Set 2 : '' #

Patch Set 3 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+233 lines, -73 lines) Patch
M bleeding_edge/src/arm/codegen-arm.cc View 2 chunks +4 lines, -2 lines 0 comments Download
M bleeding_edge/src/code-stubs.h View 1 chunk +1 line, -1 line 0 comments Download
M bleeding_edge/src/codegen.h View 1 2 1 chunk +14 lines, -8 lines 0 comments Download
M bleeding_edge/src/codegen.cc View 1 chunk +17 lines, -0 lines 0 comments Download
M bleeding_edge/src/ia32/codegen-ia32.cc View 1 2 4 chunks +118 lines, -60 lines 0 comments Download
M bleeding_edge/src/x64/codegen-x64.cc View 2 chunks +4 lines, -2 lines 0 comments Download
A bleeding_edge/test/mjsunit/bit-not.js View 1 2 1 chunk +75 lines, -0 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
Kasper Lund
11 years ago (2009-12-22 09:25:37 UTC) #1
Erik Corry
11 years ago (2009-12-22 09:49:07 UTC) #2
LGTM

http://codereview.chromium.org/503079/diff/1/4
File bleeding_edge/src/codegen.h (right):

http://codereview.chromium.org/503079/diff/1/4#newcode311
bleeding_edge/src/codegen.h:311: return OpField::encode(op_) |
OverwriteField::encode(overwrite_);
Bingo!

http://codereview.chromium.org/503079/diff/1/4#newcode319
bleeding_edge/src/codegen.h:319: : "GenericUnaryOpStub_Alloc";
This is annoying in profiles.  Please make it produce a more informative name. 
See the GenericBinaryOpstub for one way to do it.

http://codereview.chromium.org/503079/diff/1/3
File bleeding_edge/src/ia32/codegen-ia32.cc (right):

http://codereview.chromium.org/503079/diff/1/3#newcode7702
bleeding_edge/src/ia32/codegen-ia32.cc:7702: if (op_ == Token::SUB) {
If I were doing this I would divide this function into two.  It's too big.

http://codereview.chromium.org/503079/diff/1/3#newcode7781
bleeding_edge/src/ia32/codegen-ia32.cc:7781: __ cvtsi2sd(xmm0, Operand(ecx));
This is good, so we should do it for SHR too (search for fstp_d).

http://codereview.chromium.org/503079/diff/1/2
File bleeding_edge/test/mjsunit/bit-not.js (right):

http://codereview.chromium.org/503079/diff/1/2#newcode45
bleeding_edge/test/mjsunit/bit-not.js:45: testBitNot(100);
We should have a loop so we can test the case where the allocation fails.

Powered by Google App Engine
This is Rietveld 408576698