Chromium Code Reviews

Issue 1162993006: Add support for Embedded Constant Pools for PPC and Arm (Closed)

Created:
5 years, 6 months ago by MTBrandyberry
Modified:
5 years, 6 months ago
Reviewers:
Benedikt Meurer, michael_dawson, jochen (gone - plz use gerrit), rmcilroy
CC:
Michael Hablich, Paweł Hajdan Jr., v8-dev, Yang
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Add support for Embedded Constant Pools for PPC and Arm Embed constant pools within their corresponding Code objects. This removes support for out-of-line constant pools in favor of the new approach -- the main advantage being that it eliminates the need to allocate and manage separate constant pool array objects. Currently supported on PPC and ARM. Enabled by default on PPC only. This yields a 6% improvment in Octane on PPC64. R=bmeurer@chromium.org, rmcilroy@chromium.org, michael_dawson@ca.ibm.com BUG=chromium:478811 LOG=Y Committed: https://crrev.com/eac7f04669208cb15132d03ca15c8acd1a2be869 Cr-Commit-Position: refs/heads/master@{#28801}

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Stats (+1829 lines, -2494 lines)
M include/v8.h View 1 chunk +1 line, -1 line 0 comments
M src/arm/assembler-arm.h View 12 chunks +44 lines, -92 lines 0 comments
M src/arm/assembler-arm.cc View 25 chunks +193 lines, -357 lines 0 comments
M src/arm/assembler-arm-inl.h View 6 chunks +10 lines, -12 lines 0 comments
M src/arm/builtins-arm.cc View 4 chunks +6 lines, -6 lines 0 comments
M src/arm/code-stubs-arm.cc View 3 chunks +6 lines, -6 lines 0 comments
M src/arm/constants-arm.h View 1 chunk +5 lines, -0 lines 0 comments
M src/arm/debug-arm.cc View 1 chunk +1 line, -1 line 0 comments
M src/arm/deoptimizer-arm.cc View 1 chunk +1 line, -1 line 0 comments
M src/arm/frames-arm.h View 1 chunk +4 lines, -4 lines 0 comments
M src/arm/frames-arm.cc View 2 chunks +2 lines, -9 lines 0 comments
M src/arm/full-codegen-arm.cc View 4 chunks +5 lines, -6 lines 0 comments
M src/arm/lithium-codegen-arm.cc View 2 chunks +1 line, -5 lines 0 comments
M src/arm/macro-assembler-arm.h View 3 chunks +6 lines, -4 lines 0 comments
M src/arm/macro-assembler-arm.cc View 11 chunks +31 lines, -28 lines 0 comments
M src/arm64/assembler-arm64.h View 3 chunks +12 lines, -12 lines 0 comments
M src/arm64/assembler-arm64.cc View 1 chunk +0 lines, -14 lines 0 comments
M src/arm64/assembler-arm64-inl.h View 3 chunks +4 lines, -6 lines 0 comments
M src/arm64/deoptimizer-arm64.cc View 1 chunk +1 line, -1 line 0 comments
M src/arm64/frames-arm64.cc View 1 chunk +0 lines, -6 lines 0 comments
M src/assembler.h View 7 chunks +130 lines, -27 lines 0 comments
M src/assembler.cc View 2 chunks +203 lines, -1 line 0 comments
M src/compiler/arm/code-generator-arm.cc View 1 chunk +1 line, -1 line 0 comments
M src/compiler/ppc/code-generator-ppc.cc View 2 chunks +13 lines, -2 lines 0 comments
M src/debug.cc View 1 chunk +1 line, -1 line 0 comments
M src/deoptimizer.cc View 11 chunks +11 lines, -11 lines 0 comments
M src/factory.h View 2 chunks +0 lines, -10 lines 0 comments
M src/factory.cc View 5 chunks +3 lines, -35 lines 0 comments
M src/flag-definitions.h View 1 chunk +2 lines, -2 lines 0 comments
M src/frames.h View 4 chunks +19 lines, -21 lines 0 comments
M src/frames.cc View 11 chunks +17 lines, -18 lines 0 comments
M src/globals.h View 3 chunks +16 lines, -8 lines 0 comments
M src/heap-snapshot-generator.cc View 1 chunk +0 lines, -3 lines 0 comments
M src/heap/heap.h View 7 chunks +0 lines, -24 lines 0 comments
M src/heap/heap.cc View 11 chunks +2 lines, -137 lines 0 comments
M src/heap/heap-inl.h View 1 chunk +0 lines, -6 lines 0 comments
M src/heap/mark-compact.h View 2 chunks +3 lines, -0 lines 0 comments
M src/heap/mark-compact.cc View 4 chunks +16 lines, -34 lines 0 comments
M src/heap/objects-visiting.h View 2 chunks +0 lines, -2 lines 0 comments
M src/heap/objects-visiting.cc View 1 chunk +0 lines, -3 lines 0 comments
M src/heap/objects-visiting-inl.h View 4 chunks +0 lines, -33 lines 0 comments
M src/heap/spaces.cc View 1 chunk +1 line, -2 lines 0 comments
M src/ia32/assembler-ia32.h View 5 chunks +15 lines, -14 lines 0 comments
M src/ia32/assembler-ia32.cc View 2 chunks +6 lines, -14 lines 0 comments
M src/ia32/assembler-ia32-inl.h View 2 chunks +8 lines, -4 lines 0 comments
M src/ia32/deoptimizer-ia32.cc View 1 chunk +1 line, -1 line 0 comments
M src/ia32/frames-ia32.cc View 1 chunk +0 lines, -6 lines 0 comments
M src/ic/ic.h View 10 chunks +16 lines, -18 lines 0 comments
M src/ic/ic.cc View 8 chunks +14 lines, -18 lines 0 comments
M src/ic/ic-inl.h View 2 chunks +11 lines, -12 lines 0 comments
M src/ic/ic-state.h View 1 chunk +1 line, -2 lines 0 comments
M src/ic/ic-state.cc View 1 chunk +1 line, -1 line 0 comments
M src/ic/ppc/handler-compiler-ppc.cc View 3 chunks +3 lines, -3 lines 0 comments
M src/lithium.cc View 1 chunk +0 lines, -4 lines 0 comments
M src/macro-assembler.h View 3 chunks +12 lines, -12 lines 0 comments
M src/mips/assembler-mips.h View 4 chunks +14 lines, -14 lines 0 comments
M src/mips/assembler-mips.cc View 2 chunks +7 lines, -14 lines 0 comments
M src/mips/deoptimizer-mips.cc View 1 chunk +1 line, -1 line 0 comments
M src/mips/frames-mips.cc View 1 chunk +0 lines, -6 lines 0 comments
M src/mips64/assembler-mips64.h View 4 chunks +14 lines, -14 lines 0 comments
M src/mips64/assembler-mips64.cc View 2 chunks +7 lines, -14 lines 0 comments
M src/mips64/deoptimizer-mips64.cc View 1 chunk +1 line, -1 line 0 comments
M src/mips64/frames-mips64.cc View 1 chunk +0 lines, -6 lines 0 comments
M src/objects.h View 8 chunks +11 lines, -315 lines 1 comment
M src/objects.cc View 4 chunks +26 lines, -66 lines 0 comments
M src/objects-debug.cc View 2 chunks +0 lines, -17 lines 0 comments
M src/objects-inl.h View 10 chunks +13 lines, -402 lines 0 comments
M src/objects-printer.cc View 2 chunks +0 lines, -40 lines 0 comments
M src/ppc/assembler-ppc.h View 16 chunks +111 lines, -19 lines 0 comments
M src/ppc/assembler-ppc.cc View 15 chunks +112 lines, -53 lines 0 comments
M src/ppc/assembler-ppc-inl.h View 7 chunks +176 lines, -8 lines 0 comments
M src/ppc/builtins-ppc.cc View 15 chunks +23 lines, -14 lines 0 comments
M src/ppc/code-stubs-ppc.cc View 9 chunks +15 lines, -7 lines 0 comments
M src/ppc/constants-ppc.h View 1 chunk +5 lines, -0 lines 0 comments
M src/ppc/debug-ppc.cc View 1 chunk +1 line, -1 line 0 comments
M src/ppc/deoptimizer-ppc.cc View 1 chunk +2 lines, -2 lines 0 comments
M src/ppc/frames-ppc.h View 1 chunk +5 lines, -2 lines 0 comments
M src/ppc/frames-ppc.cc View 1 chunk +4 lines, -10 lines 0 comments
M src/ppc/full-codegen-ppc.cc View 4 chunks +10 lines, -1 line 0 comments
M src/ppc/lithium-codegen-ppc.cc View 1 chunk +6 lines, -2 lines 0 comments
M src/ppc/macro-assembler-ppc.h View 3 chunks +17 lines, -2 lines 0 comments
M src/ppc/macro-assembler-ppc.cc View 11 chunks +120 lines, -10 lines 0 comments
M src/runtime/runtime-generator.cc View 1 chunk +1 line, -1 line 0 comments
M src/snapshot/serialize.cc View 6 chunks +4 lines, -15 lines 0 comments
M src/x64/assembler-x64.h View 3 chunks +14 lines, -14 lines 0 comments
M src/x64/assembler-x64.cc View 2 chunks +6 lines, -14 lines 0 comments
M src/x64/assembler-x64-inl.h View 1 chunk +2 lines, -4 lines 0 comments
M src/x64/deoptimizer-x64.cc View 1 chunk +1 line, -1 line 0 comments
M src/x64/frames-x64.cc View 1 chunk +0 lines, -6 lines 0 comments
M src/x87/assembler-x87.h View 5 chunks +15 lines, -14 lines 0 comments
M src/x87/assembler-x87.cc View 2 chunks +6 lines, -14 lines 0 comments
M src/x87/assembler-x87-inl.h View 2 chunks +8 lines, -4 lines 0 comments
M src/x87/deoptimizer-x87.cc View 1 chunk +1 line, -1 line 0 comments
M src/x87/frames-x87.cc View 1 chunk +0 lines, -6 lines 0 comments
M test/cctest/test-compiler.cc View 1 chunk +3 lines, -0 lines 0 comments
M test/cctest/test-constantpool.cc View 1 chunk +206 lines, -296 lines 0 comments
M test/cctest/test-reloc-info.cc View 1 chunk +2 lines, -2 lines 0 comments

Messages

Total messages: 10 (2 generated)
MTBrandyberry
Let's try this again.
5 years, 6 months ago (2015-06-04 13:54:00 UTC) #1
rmcilroy
On 2015/06/04 13:54:00, mtbrandyberry wrote: > Let's try this again. I Assume this has no ...
5 years, 6 months ago (2015-06-04 13:56:15 UTC) #2
MTBrandyberry
On 2015/06/04 13:56:15, rmcilroy wrote: > On 2015/06/04 13:54:00, mtbrandyberry wrote: > > Let's try ...
5 years, 6 months ago (2015-06-04 13:58:35 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1162993006/1
5 years, 6 months ago (2015-06-04 13:58:58 UTC) #5
commit-bot: I haz the power
Committed patchset #1 (id:1)
5 years, 6 months ago (2015-06-04 14:44:09 UTC) #6
commit-bot: I haz the power
Patchset 1 (id:??) landed as https://crrev.com/eac7f04669208cb15132d03ca15c8acd1a2be869 Cr-Commit-Position: refs/heads/master@{#28801}
5 years, 6 months ago (2015-06-04 14:44:26 UTC) #7
jochen (gone - plz use gerrit)
https://codereview.chromium.org/1162993006/diff/1/src/objects.h File src/objects.h (left): https://codereview.chromium.org/1162993006/diff/1/src/objects.h#oldcode743 src/objects.h:743: CONSTANT_POOL_ARRAY_TYPE, the constants in tools/v8heapconst.py are now incorrect, could ...
5 years, 6 months ago (2015-06-08 12:54:29 UTC) #9
MTBrandyberry
5 years, 6 months ago (2015-06-08 14:45:59 UTC) #10
Message was sent while issue was closed.
On 2015/06/08 12:54:29, jochen wrote:
> https://codereview.chromium.org/1162993006/diff/1/src/objects.h
> File src/objects.h (left):
> 
> https://codereview.chromium.org/1162993006/diff/1/src/objects.h#oldcode743
> src/objects.h:743: CONSTANT_POOL_ARRAY_TYPE,
> the constants in tools/v8heapconst.py are now incorrect, could you update them
> plz?

https://codereview.chromium.org/1165453009

Powered by Google App Engine