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

Issue 304143002: Add support for extended constant pool arrays. (Closed)

Created:
6 years, 6 months ago by rmcilroy
Modified:
6 years, 6 months ago
Reviewers:
mvstanton, ulan
CC:
v8-dev, mvstanton
Visibility:
Public.

Description

Add support for extended constant pool arrays. This CL adds support for ConstantPoolArrays which contain an extended section. This will be used to enable larger constant pools than can be addressed by a single ldr with immediate offset instruction (which has a limit of a 4KB range). Extended constant pools will have a small section, which is addressable via a single ldr instruction, and an extended section, which will require a multi- instruction sequence to load from. Currently, no code uses the extended ConstantPoolArray's - this change will be made in a followup CL. A number of changes are made to the ConstantPoolArray object in order to support this: - Small section layout is now entirely defined by the small layout bitmaps. - The ConstantPoolArray no longer extends FixedArrayBase since the length field is not useful for extended layouts. - Enums are used to represent the type of an entry and the layout section. - An iterator can be used to iterate through all elements of a given type. - A number of tests were added for these features. R=ulan@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=21653

Patch Set 1 #

Patch Set 2 : #

Total comments: 10

Patch Set 3 : Address Ulan's comments. #

Patch Set 4 : Revert globals.h change. #

Patch Set 5 : Sync #

Unified diffs Side-by-side diffs Delta from patch set Stats (+798 lines, -266 lines) Patch
M src/arm/assembler-arm.cc View 1 2 3 4 3 chunks +24 lines, -14 lines 0 comments Download
M src/factory.h View 1 2 3 4 1 chunk +5 lines, -4 lines 0 comments Download
M src/factory.cc View 1 2 3 4 1 chunk +15 lines, -10 lines 0 comments Download
M src/heap.h View 1 2 3 4 1 chunk +5 lines, -4 lines 0 comments Download
M src/heap.cc View 1 2 3 4 4 chunks +51 lines, -50 lines 0 comments Download
M src/mark-compact.cc View 1 2 3 4 1 chunk +4 lines, -3 lines 0 comments Download
M src/objects.h View 1 2 3 4 5 chunks +238 lines, -69 lines 0 comments Download
M src/objects.cc View 1 2 3 4 1 chunk +29 lines, -6 lines 0 comments Download
M src/objects-debug.cc View 1 2 3 4 1 chunk +6 lines, -4 lines 0 comments Download
M src/objects-inl.h View 1 2 3 4 2 chunks +194 lines, -69 lines 0 comments Download
M src/objects-printer.cc View 1 2 3 4 1 chunk +22 lines, -5 lines 0 comments Download
M src/objects-visiting-inl.h View 1 2 3 4 1 chunk +11 lines, -10 lines 0 comments Download
M test/cctest/test-constantpool.cc View 1 2 3 4 5 chunks +194 lines, -18 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
rmcilroy
Ulan, could you please take a look. Sorry about the large CL, but I had ...
6 years, 6 months ago (2014-05-29 11:06:48 UTC) #1
ulan
I like the heap pointer iterator! Looks good overall, small suggestions below. https://codereview.chromium.org/304143002/diff/20001/src/factory.cc File src/factory.cc ...
6 years, 6 months ago (2014-06-02 12:32:57 UTC) #2
mvstanton
Just as a DBC: this is great. I'm thinking to be able to use these ...
6 years, 6 months ago (2014-06-02 13:14:00 UTC) #3
rmcilroy
Thanks for the review Ulan, PTAL. https://codereview.chromium.org/304143002/diff/20001/src/factory.cc File src/factory.cc (right): https://codereview.chromium.org/304143002/diff/20001/src/factory.cc#newcode134 src/factory.cc:134: Handle<ConstantPoolArray> Factory::NewExtendedConstantPoolArray( On ...
6 years, 6 months ago (2014-06-03 12:32:27 UTC) #4
rmcilroy
On 2014/06/02 13:14:00, mvstanton wrote: > Just as a DBC: this is great. I'm thinking ...
6 years, 6 months ago (2014-06-03 12:35:15 UTC) #5
ulan
LGTM > Done. I'm not convinced this is clearer though. This seems slightly more readable ...
6 years, 6 months ago (2014-06-03 14:54:21 UTC) #6
rmcilroy
6 years, 6 months ago (2014-06-03 16:22:22 UTC) #7
Message was sent while issue was closed.
Committed patchset #5 manually as r21653 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698