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

Issue 7089002: Implement core support for FixedDoubleArrays. (Closed)

Created:
9 years, 6 months ago by danno
Modified:
9 years, 6 months ago
CC:
v8-dev, Jakob Kummerow
Visibility:
Public.

Description

Implement core support for FixedDoubleArrays. Under a flag without IC or Crankshaft support. BUG=none TEST=none Committed: http://code.google.com/p/v8/source/detail?r=8229

Patch Set 1 #

Patch Set 2 : merge with latest #

Patch Set 3 : latest changes #

Patch Set 4 : get working, add test #

Patch Set 5 : merge with latest #

Patch Set 6 : fix gc bugs #

Patch Set 7 : tweaks #

Total comments: 36

Patch Set 8 : review feedback #

Total comments: 14

Patch Set 9 : final version before commit #

Unified diffs Side-by-side diffs Delta from patch set Stats (+757 lines, -60 lines) Patch
M include/v8.h View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M src/factory.h View 1 2 3 4 5 6 7 8 3 chunks +7 lines, -2 lines 0 comments Download
M src/factory.cc View 1 2 3 4 5 6 7 2 chunks +11 lines, -1 line 0 comments Download
M src/flag-definitions.h View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M src/heap.h View 1 2 3 4 5 6 7 4 chunks +16 lines, -0 lines 0 comments Download
M src/heap.cc View 1 2 3 4 5 6 7 8 4 chunks +75 lines, -0 lines 0 comments Download
M src/mark-compact.cc View 1 2 3 4 5 6 7 1 chunk +2 lines, -0 lines 0 comments Download
M src/objects.h View 1 2 3 4 5 6 7 8 13 chunks +118 lines, -13 lines 0 comments Download
M src/objects.cc View 1 2 3 4 5 6 7 8 19 chunks +282 lines, -29 lines 0 comments Download
M src/objects-debug.cc View 1 2 3 4 5 6 7 8 3 chunks +17 lines, -1 line 0 comments Download
M src/objects-inl.h View 1 2 3 4 5 6 7 8 12 chunks +130 lines, -8 lines 0 comments Download
M src/objects-visiting.h View 1 2 3 4 5 6 7 8 4 chunks +9 lines, -1 line 0 comments Download
M src/objects-visiting.cc View 1 2 3 2 chunks +4 lines, -1 line 0 comments Download
M src/spaces.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M src/v8-counters.h View 1 2 1 chunk +3 lines, -2 lines 0 comments Download
A test/mjsunit/unbox-double-arrays.js View 1 2 3 4 5 6 7 1 chunk +78 lines, -0 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
danno
Please review.
9 years, 6 months ago (2011-06-03 13:42:17 UTC) #1
Mads Ager (chromium)
First round of comments. Only minor things. This is looking good! :-) http://codereview.chromium.org/7089002/diff/5002/src/heap.cc File src/heap.cc ...
9 years, 6 months ago (2011-06-06 07:58:23 UTC) #2
danno
please take another look http://codereview.chromium.org/7089002/diff/5002/src/heap.cc File src/heap.cc (right): http://codereview.chromium.org/7089002/diff/5002/src/heap.cc#newcode3854 src/heap.cc:3854: reinterpret_cast<FixedDoubleArray*>(obj)->set_map(fixed_double_array_map()); On 2011/06/06 07:58:23, Mads ...
9 years, 6 months ago (2011-06-08 12:09:42 UTC) #3
Vyacheslav Egorov (Chromium)
GC DBC http://codereview.chromium.org/7089002/diff/17001/src/heap.cc File src/heap.cc (right): http://codereview.chromium.org/7089002/diff/17001/src/heap.cc#newcode1310 src/heap.cc:1310: table_.Register(kVisitByteArray, &EvacuateByteArray); If FixedDoubleArray can be in ...
9 years, 6 months ago (2011-06-08 12:31:16 UTC) #4
Mads Ager (chromium)
This is looking good. Once Slava's comments are addressed I think you can land this ...
9 years, 6 months ago (2011-06-08 13:13:13 UTC) #5
danno
9 years, 6 months ago (2011-06-09 09:45:39 UTC) #6
feedback addressed, landing...

http://codereview.chromium.org/7089002/diff/17001/src/factory.h
File src/factory.h (right):

http://codereview.chromium.org/7089002/diff/17001/src/factory.h#newcode52
src/factory.h:52: // Allocate a new fixed double array with undefined entries.
On 2011/06/08 13:13:13, Mads Ager wrote:
> Nit: Could you update the comment to use the wording: uninitialized fixed
double
> array? And do the same for NewFixedArray above? I get confused by the use of
> undefined here (not sure if it means the 'undefined' value).

Done.

http://codereview.chromium.org/7089002/diff/17001/src/heap.cc
File src/heap.cc (right):

http://codereview.chromium.org/7089002/diff/17001/src/heap.cc#newcode1310
src/heap.cc:1310: table_.Register(kVisitByteArray, &EvacuateByteArray);
On 2011/06/08 12:31:16, Vyacheslav Egorov wrote:
> If FixedDoubleArray can be in the new space you need to register
specialization
> here.

Done.

http://codereview.chromium.org/7089002/diff/17001/src/objects-inl.h
File src/objects-inl.h (right):

http://codereview.chromium.org/7089002/diff/17001/src/objects-inl.h#newcode1627
src/objects-inl.h:1627: ASSERT(map() != HEAP->fixed_cow_array_map());
On 2011/06/08 13:13:13, Mads Ager wrote:
> If you assert for fixed_cow_array_map should you assert for normal
> fixed_array_map too?

Done.

http://codereview.chromium.org/7089002/diff/17001/src/objects-inl.h#newcode1635
src/objects-inl.h:1635: ASSERT(map() != HEAP->fixed_cow_array_map());
On 2011/06/08 13:13:13, Mads Ager wrote:
> Ditto?

Done.

http://codereview.chromium.org/7089002/diff/17001/src/objects-visiting.h
File src/objects-visiting.h (right):

http://codereview.chromium.org/7089002/diff/17001/src/objects-visiting.h#newc...
src/objects-visiting.h:294: table_.Register(kVisitByteArray, &VisitByteArray);
On 2011/06/08 12:31:16, Vyacheslav Egorov wrote:
> If FixedDoubleArray can be in a new space you need to register specialization
> here.

Done.

http://codereview.chromium.org/7089002/diff/17001/src/objects.cc
File src/objects.cc (right):

http://codereview.chromium.org/7089002/diff/17001/src/objects.cc#newcode8051
src/objects.cc:8051: // Check whether there is extra space in the fixed array..
On 2011/06/08 13:13:13, Mads Ager wrote:
> .. -> .

Done.

http://codereview.chromium.org/7089002/diff/17001/src/objects.cc#newcode8452
src/objects.cc:8452: return GetHeap()->AllocateHeapNumber(double_value);
On 2011/06/08 13:13:13, Mads Ager wrote:
> Use NumberFromDouble?

Done.

Powered by Google App Engine
This is Rietveld 408576698