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

Issue 6928007: Reapply 7763, including arm and x64 variants. (Closed)

Created:
9 years, 7 months ago by Rico
Modified:
9 years, 6 months ago
CC:
v8-dev
Visibility:
Public.

Description

Reapply 7763, including arm and x64 variants. The only difference to revision 7763 is the implementation in the builtins file for arm and x64, plus a move of Array.prototype.toString and Array.prototype.toLocaleString from should throw on null or undefined to the non generic test cases in the function-call test (due to us not currently supporting generic cases with these to functions) Committed: http://code.google.com/p/v8/source/detail?r=7786

Patch Set 1 #

Total comments: 15

Patch Set 2 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+606 lines, -57 lines) Patch
M src/arm/builtins-arm.cc View 1 3 chunks +28 lines, -8 lines 0 comments Download
M src/array.js View 19 chunks +95 lines, -0 lines 0 comments Download
M src/date.js View 2 chunks +2 lines, -2 lines 0 comments Download
M src/ia32/builtins-ia32.cc View 2 chunks +20 lines, -1 line 0 comments Download
M src/messages.js View 2 chunks +5 lines, -0 lines 0 comments Download
M src/string.js View 14 chunks +79 lines, -0 lines 0 comments Download
M src/v8natives.js View 1 7 chunks +29 lines, -0 lines 0 comments Download
M src/x64/builtins-x64.cc View 1 2 chunks +18 lines, -0 lines 0 comments Download
M test/es5conform/es5conform.status View 2 chunks +0 lines, -12 lines 0 comments Download
M test/mjsunit/function-call.js View 1 1 chunk +326 lines, -0 lines 0 comments Download
M test/mjsunit/regress/regress-485.js View 1 chunk +0 lines, -13 lines 0 comments Download
M test/mozilla/mozilla.status View 1 chunk +3 lines, -0 lines 0 comments Download
M test/sputnik/sputnik.status View 3 chunks +1 line, -21 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Rico
Karl: Could you take a look at the arm specific changes Lasse: Please take a ...
9 years, 7 months ago (2011-05-04 06:48:25 UTC) #1
Lasse Reichstein
X64 LGTM http://codereview.chromium.org/6928007/diff/1/src/x64/builtins-x64.cc File src/x64/builtins-x64.cc (right): http://codereview.chromium.org/6928007/diff/1/src/x64/builtins-x64.cc#newcode661 src/x64/builtins-x64.cc:661: // Do not transform the receiver for ...
9 years, 7 months ago (2011-05-04 07:34:07 UTC) #2
Karl Klose
http://codereview.chromium.org/6928007/diff/1/src/arm/builtins-arm.cc File src/arm/builtins-arm.cc (right): http://codereview.chromium.org/6928007/diff/1/src/arm/builtins-arm.cc#newcode1268 src/arm/builtins-arm.cc:1268: __ LoadRoot(r3, Heap::kUndefinedValueRootIndex); Can you reuse the undefined value ...
9 years, 7 months ago (2011-05-04 07:44:14 UTC) #3
Rico
9 years, 7 months ago (2011-05-04 08:42:18 UTC) #4
http://codereview.chromium.org/6928007/diff/1/src/arm/builtins-arm.cc
File src/arm/builtins-arm.cc (right):

http://codereview.chromium.org/6928007/diff/1/src/arm/builtins-arm.cc#newcode...
src/arm/builtins-arm.cc:1268: __ LoadRoot(r3, Heap::kUndefinedValueRootIndex);
On 2011/05/04 07:44:14, Karl Klose wrote:
> Can you reuse the undefined value from L. 1248 here?

Yes, if I change the order, will do

http://codereview.chromium.org/6928007/diff/1/src/x64/builtins-x64.cc
File src/x64/builtins-x64.cc (right):

http://codereview.chromium.org/6928007/diff/1/src/x64/builtins-x64.cc#newcode663
src/x64/builtins-x64.cc:663: __ CompareRoot(rbx,
Heap::kUndefinedValueRootIndex);
On 2011/05/04 07:34:08, Lasse Reichstein wrote:
> Create a bug for handling non-native functions with undefined script.

Don issue 1366

http://codereview.chromium.org/6928007/diff/1/src/x64/builtins-x64.cc#newcode666
src/x64/builtins-x64.cc:666: __ SmiToInteger32(rbx, rbx);
On 2011/05/04 07:34:08, Lasse Reichstein wrote:
> Use 
>  __ SmiToInteger32(rbx, FieldOperand(rbx, Script::kTypeOffset))
> to load an integer32 from a smi memory location.
> 
> Or better yet, use
>  SmiCompare(FieldOperand(rbx, Script::kTypeOffset),
> Smi::FromInt(Script::TYPE_NATIVE));
> to compare directly with memory.

Done.

http://codereview.chromium.org/6928007/diff/1/src/x64/builtins-x64.cc#newcode667
src/x64/builtins-x64.cc:667: __ cmpq(rbx, Immediate(Script::TYPE_NATIVE));
On 2011/05/04 07:34:08, Lasse Reichstein wrote:
> Should have been cmpl.

Using SmiCompare instead

http://codereview.chromium.org/6928007/diff/1/test/mjsunit/function-call.js
File test/mjsunit/function-call.js (right):

http://codereview.chromium.org/6928007/diff/1/test/mjsunit/function-call.js#n...
test/mjsunit/function-call.js:74: // Non generic natives does not work on any
input other than the specific
On 2011/05/04 07:44:14, Karl Klose wrote:
> does -> do

Done.

http://codereview.chromium.org/6928007/diff/1/test/mjsunit/function-call.js#n...
test/mjsunit/function-call.js:153: // Test that all natives using the ToObject
call throws the right exception.
On 2011/05/04 07:44:14, Karl Klose wrote:
> throws -> throw

Done.

http://codereview.chromium.org/6928007/diff/1/test/mjsunit/function-call.js#n...
test/mjsunit/function-call.js:197: // Test that all natives that are non generic
throws on null and undefined.
On 2011/05/04 07:44:14, Karl Klose wrote:
> throws -> throw

Done.

Powered by Google App Engine
This is Rietveld 408576698