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

Issue 1217943004: Vector ICs: Introduce an InstanceType for the type feedback vector. (Closed)

Created:
5 years, 5 months ago by mvstanton
Modified:
5 years, 5 months ago
CC:
v8-dev, Paweł Hajdan Jr.
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Vector ICs: Introduce an InstanceType for the type feedback vector. For better validation, printing, and other future enhancements. Printouts look like this: DebugPrint: 0x5dc0d2ad: [TypeFeedbackVector] - length: 12 - ics with type info: 3 - generic ics: 0 ICSlot 0 CALL_IC MONOMORPHIC [4]: 0x5dc0d365 WeakCell for 0x5dc0cd69 <JS Function foo (SharedFunctionInfo 0x5dc0cb0d)> [5]: 0x4203c4c1 <Code: HANDLER> ICSlot 1 LOAD_IC MONOMORPHIC [6]: 0x5dc0d1f5 WeakCell for 0x3a710481 <Map(FAST_HOLEY_SMI_ELEMENTS)> [7]: 0x4203a1c1 <Code: HANDLER> ICSlot 2 LOAD_IC UNINITIALIZED [8]: 0x3060d045 <Symbol: 711234650 <String[20]: uninitialized_symbol>> [9]: 0x3060d045 <Symbol: 711234650 <String[20]: uninitialized_symbol>> ICSlot 3 LOAD_IC MONOMORPHIC [10]: 0x5dc0d3b5 WeakCell for 0x3a710d71 <Map(FAST_HOLEY_ELEMENTS)> [11]: 0x4202af01 <Code: HANDLER> * DECIDED NOT TO DO THIS * BUG=

Patch Set 1 #

Patch Set 2 : Improved printer. #

Total comments: 4

Patch Set 3 : Code comments. #

Patch Set 4 : Fix for failing test. #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+270 lines, -46 lines) Patch
M include/v8.h View 1 chunk +1 line, -1 line 0 comments Download
M src/factory.h View 1 chunk +3 lines, -0 lines 0 comments Download
M src/factory.cc View 4 chunks +15 lines, -4 lines 0 comments Download
M src/heap/heap.h View 5 chunks +14 lines, -0 lines 0 comments Download
M src/heap/heap.cc View 1 2 7 chunks +90 lines, -0 lines 0 comments Download
M src/heap/heap-inl.h View 2 chunks +7 lines, -0 lines 0 comments Download
M src/heap/objects-visiting.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/heap/objects-visiting.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M src/heap/objects-visiting-inl.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/objects.h View 2 chunks +2 lines, -0 lines 1 comment Download
M src/objects.cc View 1 chunk +1 line, -0 lines 0 comments Download
M src/objects-debug.cc View 2 chunks +11 lines, -0 lines 0 comments Download
M src/objects-inl.h View 1 2 3 5 chunks +6 lines, -6 lines 0 comments Download
M src/objects-printer.cc View 1 3 chunks +52 lines, -1 line 0 comments Download
M src/runtime/runtime-array.cc View 1 2 3 1 chunk +11 lines, -4 lines 1 comment Download
M src/type-feedback-vector.h View 1 2 3 2 chunks +8 lines, -3 lines 0 comments Download
M src/type-feedback-vector.cc View 1 2 3 1 chunk +38 lines, -24 lines 0 comments Download
M src/types.cc View 1 chunk +1 line, -0 lines 0 comments Download
M test/cctest/test-feedback-vector.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M test/mjsunit/compiler/stubs/floor-stub.js View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 13 (4 generated)
mvstanton
Hi Benedikt, hi Hannes, Benedikt, could you review the CL generally, and Hannes, the heap ...
5 years, 5 months ago (2015-06-30 09:03:00 UTC) #2
Benedikt Meurer
LGTM with nit. Nice! https://codereview.chromium.org/1217943004/diff/20001/src/type-feedback-vector.h File src/type-feedback-vector.h (right): https://codereview.chromium.org/1217943004/diff/20001/src/type-feedback-vector.h#newcode12 src/type-feedback-vector.h:12: // #include "src/heap/heap.h" Nit: Nuke ...
5 years, 5 months ago (2015-06-30 09:43:44 UTC) #3
Hannes Payer (out of office)
https://codereview.chromium.org/1217943004/diff/20001/src/heap/heap.cc File src/heap/heap.cc (right): https://codereview.chromium.org/1217943004/diff/20001/src/heap/heap.cc#newcode4726 src/heap/heap.cc:4726: // object = EnsureDoubleAligned(this, object, size); Do you have ...
5 years, 5 months ago (2015-06-30 13:59:11 UTC) #4
Hannes Payer (out of office)
lgtm when line is removed
5 years, 5 months ago (2015-06-30 14:54:31 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1217943004/40001
5 years, 5 months ago (2015-06-30 14:58:25 UTC) #8
mvstanton
Okay, thanks! Landing... https://codereview.chromium.org/1217943004/diff/20001/src/heap/heap.cc File src/heap/heap.cc (right): https://codereview.chromium.org/1217943004/diff/20001/src/heap/heap.cc#newcode4726 src/heap/heap.cc:4726: // object = EnsureDoubleAligned(this, object, size); ...
5 years, 5 months ago (2015-06-30 15:00:46 UTC) #9
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_nodcheck_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_nodcheck_rel/builds/4143)
5 years, 5 months ago (2015-06-30 15:06:18 UTC) #11
Hannes Payer (out of office)
https://codereview.chromium.org/1217943004/diff/60001/src/objects.h File src/objects.h (right): https://codereview.chromium.org/1217943004/diff/60001/src/objects.h#newcode75 src/objects.h:75: // - ByteArray Add your type here.
5 years, 5 months ago (2015-07-01 09:30:40 UTC) #12
Hannes Payer (out of office)
5 years, 5 months ago (2015-07-01 09:44:36 UTC) #13
https://codereview.chromium.org/1217943004/diff/60001/src/runtime/runtime-arr...
File src/runtime/runtime-array.cc (right):

https://codereview.chromium.org/1217943004/diff/60001/src/runtime/runtime-arr...
src/runtime/runtime-array.cc:64: return
TypeFeedbackVector::cast(object)->get(index);
The type feedback vector should actually have to separate assessors to avoid the
ugly conditionals.

Powered by Google App Engine
This is Rietveld 408576698