olivf@chromium.org [Thu, 10 Oct 2013 13:32:00 +0000 (13:32 +0000)]
Fixing tagged binary operation input type feedback.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
26710002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17143
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 10 Oct 2013 13:15:47 +0000 (13:15 +0000)]
Add column getter to CpuProfileNode
CpuProfileNode currently exposes only line number which is not enough for the cases when there is more than one function on the same line. This change exposes column number on CpuProfileNode.
BUG=302537
R=jkummerow@chromium.org, loislo@chromium.org
Review URL: https://codereview.chromium.org/
25541003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17142
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 10 Oct 2013 13:14:37 +0000 (13:14 +0000)]
Enable weak embedded objects in optimized code with a fix for heap verifier.
BUG=v8:2073
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25702008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17141
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 10 Oct 2013 13:03:41 +0000 (13:03 +0000)]
Unflake cctest/test-cpu-profiler/JsNativeJsRuntimeJsSample on Win32 Debug
Profiler is now started from JavaScript. Since we always capture stack trace when starting profiler there should always be at least one expected sample in the profile.
Also changed ProfilerEventsProcessor::AddCurrentStack to make sure it call TickSample::Init to instead of custom initialization code.
BUG=v8:2920
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
25686011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17140
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 10 Oct 2013 12:30:06 +0000 (12:30 +0000)]
More precise type lub for numbers
R=jkummerow@chromium.org
BUG=v8:2910
Review URL: https://codereview.chromium.org/
25722002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17139
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 10 Oct 2013 12:28:52 +0000 (12:28 +0000)]
Revert "Load/Store cannot handle double representation."
This reverts r17135 -- test crashes on x64.
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
26653004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17138
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 10 Oct 2013 11:58:16 +0000 (11:58 +0000)]
Unify and fix checkers for duplicate object literal properties.
R=ulan@chromium.org
TEST=preparser/duplicate-property,mjsunit/regress/regress-parse-object-literal
Review URL: https://codereview.chromium.org/
26375004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17136
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 10 Oct 2013 11:42:00 +0000 (11:42 +0000)]
Load/Store cannot handle double representation.
Assert that the representation for Load/Store in the X64 MacroAssembler
is never Double. Also add missing test case for the Load/Store macros.
TEST=cctest/test-macro-assembler-x64
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25990002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17135
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 10 Oct 2013 11:37:48 +0000 (11:37 +0000)]
Add myself to a watchlist for the public API.
See https://groups.google.com/d/msg/v8-users/jq8k9s4xEu8/N-es0or3uz4J
BUG=none
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
26574009
Patch from Paweł Hajdan Jr. <phajdan.jr@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17134
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 10 Oct 2013 10:59:02 +0000 (10:59 +0000)]
Fix windows shared library build.
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
26814002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17131
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Thu, 10 Oct 2013 10:37:18 +0000 (10:37 +0000)]
Only crosscompile binary op stubs if we compile a snapshot.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
26266005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17130
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 10 Oct 2013 09:35:35 +0000 (09:35 +0000)]
Use the new introduced block's reachable flag.
BUG=
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
26459002
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17129
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 10 Oct 2013 09:23:28 +0000 (09:23 +0000)]
Prepare push to trunk. Now working on version 3.22.10.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
26698003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17126
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 10 Oct 2013 09:05:28 +0000 (09:05 +0000)]
Revert "Debug: Allow stepping into on a given call frame."
This reverts commit r17095.
There were test failures (flaky).
BUG=chromium:296963
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
26703009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17125
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 10 Oct 2013 08:50:44 +0000 (08:50 +0000)]
Simplify redundant phi elimination and use during canonicalization too.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
25896006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17124
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Thu, 10 Oct 2013 08:45:40 +0000 (08:45 +0000)]
Ensure only whitelisted stubs have sse2 versions in the snapshot.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
26680002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17123
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 10 Oct 2013 08:45:19 +0000 (08:45 +0000)]
Revert "Unify and fix checkers for duplicate object literal properties."
This reverts commit
12c68518bd2c74dc4e44d928c84c17f98ca63359.
(r17114)
R=mstarzinger@chromium.org
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
26732006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17122
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 10 Oct 2013 08:36:44 +0000 (08:36 +0000)]
Implement ArrayBuffer.isView.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
25700010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17121
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 4 Oct 2013 19:04:34 +0000 (19:04 +0000)]
Get rid of the HInstanceSize instruction.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
25666006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17116
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 4 Oct 2013 16:58:01 +0000 (16:58 +0000)]
Unify and fix checkers for duplicate object literal properties.
R=ulan@chromium.org
TEST=preparser/duplicate-property
Review URL: https://codereview.chromium.org/
25755002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17114
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 4 Oct 2013 16:21:23 +0000 (16:21 +0000)]
Remove obsolete preparser binary.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
25277003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17113
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 4 Oct 2013 15:31:39 +0000 (15:31 +0000)]
Prepare push to trunk. Now working on version 3.22.9.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25579003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17110
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 4 Oct 2013 14:53:16 +0000 (14:53 +0000)]
Fix shared_library build after r17107
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/
26004003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17109
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 4 Oct 2013 12:31:57 +0000 (12:31 +0000)]
MIPS: Hydrogenisation of binops
Port r17104.
R=olivf@chromium.org
Review URL: https://codereview.chromium.org/
26002002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17108
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 4 Oct 2013 11:57:42 +0000 (11:57 +0000)]
Explicitly include defaults.cc in the shared_library gyp target.
Explicitly include defaults.cc in the shared_library gyp target, otherwise
the whole compilation unit is stripped by the Windows linker, since none of it's
symbols are referenced by any other compilation unit in V8.
BUG=None
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
25994002
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17107
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Fri, 4 Oct 2013 11:25:30 +0000 (11:25 +0000)]
Calm down GCMole after r17104.
TBR=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25409003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17106
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Fri, 4 Oct 2013 11:11:50 +0000 (11:11 +0000)]
Bump code space size for cctest/DeserializeFromSecondSerialization.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25996002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17105
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Fri, 4 Oct 2013 08:17:11 +0000 (08:17 +0000)]
Reland "Hydrogenisation of binops"
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
25494007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17104
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 4 Oct 2013 07:50:36 +0000 (07:50 +0000)]
Disable weak embedded objects in optimized code because of failing test.
BUG=test/mjsunit/json.js fails
R=bmeurer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25982002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17103
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 4 Oct 2013 07:25:24 +0000 (07:25 +0000)]
Make objects embedded in optimized code weak.
This introduces a global weak hash table that maps objects embedded in
optimized code to dependent code lists. Using this table we can deoptimize
optimized code whenever a weak object embedded in the code dies.
BUG=v8:2073
R=hpayer@chromium.org, mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23477061
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17102
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 4 Oct 2013 07:21:31 +0000 (07:21 +0000)]
Fix SmiMove unit test.
TEST=cctest/test-macro-assembler-x64.cc
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
25426006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17101
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 4 Oct 2013 07:13:43 +0000 (07:13 +0000)]
Add support to load/store byte fields.
This adds a new Byte representation and support for zero-extended
loads in HLoadNamedField and truncated stores in HStoreNamedField.
R=mvstanton@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=17079
Review URL: https://codereview.chromium.org/
25696004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17100
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 4 Oct 2013 05:47:35 +0000 (05:47 +0000)]
Revert "Add support to load/store byte fields." and "MIPS: Add support to load/store byte fields.".
This reverts commit r17079 and r17085. Will reland after fix.
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
25679008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17099
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 3 Oct 2013 12:13:01 +0000 (12:13 +0000)]
Prepare push to trunk. Now working on version 3.22.8.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
25674012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17096
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 3 Oct 2013 07:42:44 +0000 (07:42 +0000)]
Debug: Allow stepping into on a given call frame.
BUG=chromium:296963
R=yangguo@chromium.org, yurys
Review URL: https://codereview.chromium.org/
25605005
Patch from Andrey Adaikin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17095
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 3 Oct 2013 01:22:25 +0000 (01:22 +0000)]
Use StackArgumenstAccessor and kPCOnStackSize/kFPOnStackSize to compute stack address/operand for X64
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
22267005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17094
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 3 Oct 2013 00:33:23 +0000 (00:33 +0000)]
Use StackArgumentsAccessor for PropertyCallback and FunctionCallback for X64
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
25682002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17093
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Wed, 2 Oct 2013 18:19:44 +0000 (18:19 +0000)]
MIPS: Fix test262 failures and x64 compile failure.
Port r17082 (fc909df)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
25560006
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17092
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Wed, 2 Oct 2013 18:15:57 +0000 (18:15 +0000)]
Inline some more compare operations.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
25009003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17091
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Wed, 2 Oct 2013 18:06:20 +0000 (18:06 +0000)]
Avoid allocations in Object.observe access check tests
BUG=v8:2907
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
24999007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17090
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 2 Oct 2013 17:23:30 +0000 (17:23 +0000)]
Don't use StubType to probe the code caches.
There is only one stub-type in the cache at all times. By ignoring the type up-front, we can in a later phase move cache probing before even computing the type.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25520003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17089
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 2 Oct 2013 17:20:58 +0000 (17:20 +0000)]
Use PatchCache for call ICs.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25464004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17088
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 2 Oct 2013 17:18:13 +0000 (17:18 +0000)]
Cleanup map deprecation handling in the ICs
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25529002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17087
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 2 Oct 2013 17:17:00 +0000 (17:17 +0000)]
Rename ComputeLoadStoreField to just handle ComputeStoreField.
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25683005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17086
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Wed, 2 Oct 2013 17:16:27 +0000 (17:16 +0000)]
MIPS: Add support to load/store byte fields.
Port r17079 (0885ac2)
Original commit message:
This adds a new Byte representation and support for zero-extended
loads in HLoadNamedField and truncated stores in HStoreNamedField.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
25460003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17085
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Wed, 2 Oct 2013 16:58:37 +0000 (16:58 +0000)]
MIPS: Improve and simplify removal of unreachable code.
Port r17073 (ba68149)
Original commit message:
- Detect unreachable basic blocks of code either following an unconditional deopt or after a provably untaken branch of HBranch or HCompareObjectEqAndBranch instructions.
- Emit dummy uses in unreachable blocks during Hydrogen -> Lithium translation.
BUG=chromium:258519
R=mstarzinger@chromium.org, plind44@gmail.com
Review URL: https://codereview.chromium.org/
25708004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17084
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 2 Oct 2013 16:13:49 +0000 (16:13 +0000)]
Fix failure in unit tests
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
25665006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17083
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 2 Oct 2013 15:27:51 +0000 (15:27 +0000)]
Fix test262 failures and x64 compile failure.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
25604008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17082
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 2 Oct 2013 13:36:38 +0000 (13:36 +0000)]
Tweak default max heap size constants for platforms with swap.
Configure platforms with swap memory with larger heap size by default. Also
introduce an additional "bucket" between 1GB-2GBs.
BUG=None
R=hpayer@chromium.org, jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
24978006
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17081
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 2 Oct 2013 13:30:31 +0000 (13:30 +0000)]
Always use timeGetTime() for TimeTicks::Now() on Windows.
This way, we also ensure that timeGetTime() is used for Time::Now(),
and thereby Date.now() even if GetTickCount64() is available.
Also add test coverage for Time::Now(), TimeTicks::Now() and
TimeTicks::HighResNow().
BUG=chromium:288924
TEST=cctest/test-timer
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
25468003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17080
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 2 Oct 2013 13:27:53 +0000 (13:27 +0000)]
Add support to load/store byte fields.
This adds a new Byte representation and support for zero-extended
loads in HLoadNamedField and truncated stores in HStoreNamedField.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25696004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17079
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 2 Oct 2013 13:24:08 +0000 (13:24 +0000)]
Only fold polymorphic into monomorphic load if all load from either receiver or same prototype.
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25718002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17078
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 2 Oct 2013 12:16:57 +0000 (12:16 +0000)]
Fix improper usage of V8_OVERRIDE.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
25715002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17077
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 2 Oct 2013 11:46:01 +0000 (11:46 +0000)]
Tweak SmiAdd for X64
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
24754002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17074
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 2 Oct 2013 11:43:41 +0000 (11:43 +0000)]
Improve and simplify removal of unreachable code
- Detect unreachable basic blocks of code either following an unconditional deopt or after a provably untaken branch of HBranch or HCompareObjectEqAndBranch instructions.
- Emit dummy uses in unreachable blocks during Hydrogen -> Lithium translation.
BUG=chromium:258519
R=jkummerow@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22876009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17073
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Wed, 2 Oct 2013 11:32:19 +0000 (11:32 +0000)]
Add flag for printing the time it took to deserialize the snapshot.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
25695002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17072
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Wed, 2 Oct 2013 11:27:37 +0000 (11:27 +0000)]
Add a flag to print the time it takes to compile HydrogenCodeStubs.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
25693003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17071
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 2 Oct 2013 11:25:06 +0000 (11:25 +0000)]
MIPS: Allow function inlining with context change.
Port r17019 (
cd4b69cd)
BUG=
R=jkummerow@chromium.org, plind44@gmail.com
Review URL: https://codereview.chromium.org/
25622003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17070
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 2 Oct 2013 11:04:54 +0000 (11:04 +0000)]
Print out how many AllocationMementos were found during mark-sweep.
Moreover use the right memory boundary for AllocationMemento lookup during gc.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25655004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17069
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 2 Oct 2013 10:51:10 +0000 (10:51 +0000)]
Correctly handlify CopyContextLocalsToScopeObject.
Handlified functions that expect allocation must be static, i.e. not allow to
use 'this', since 'this' is not relocated by potential GC.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25704002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17068
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 2 Oct 2013 09:54:36 +0000 (09:54 +0000)]
Prepare push to trunk. Now working on version 3.22.7.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25657005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17067
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 2 Oct 2013 09:01:40 +0000 (09:01 +0000)]
Revert "lazy instantiation of the default isolate" and "build fix for 17049".
This reverts r17049 and r17060.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
25697002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17066
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 2 Oct 2013 08:54:25 +0000 (08:54 +0000)]
Cancel push to trunk. Working on version 3.22.6 again.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25666003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17065
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 2 Oct 2013 08:40:15 +0000 (08:40 +0000)]
Fix compile error.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25674004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17064
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 2 Oct 2013 08:32:04 +0000 (08:32 +0000)]
Prepare push to trunk. Now working on version 3.22.7.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25658003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17063
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 2 Oct 2013 08:29:34 +0000 (08:29 +0000)]
Handlify Runtime_GetPrototype and Runtime_GetOwnProperty.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25478003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17062
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 2 Oct 2013 08:27:33 +0000 (08:27 +0000)]
Remove deprecated JSObject::GetLocalPropertyType method.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
25453003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17061
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Wed, 2 Oct 2013 07:55:52 +0000 (07:55 +0000)]
build fix for 17049
instantiate default isolate on v8::Isolate::GetCurrent()
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25611003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17060
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 1 Oct 2013 21:01:25 +0000 (21:01 +0000)]
MIPS: Let the register allocator handle the context register.
Port r16993 (
afba553d)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
25420002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17059
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 1 Oct 2013 19:32:20 +0000 (19:32 +0000)]
MIPS: Tweak LoadKeyed.
Port r17042 (9ade336)
Original commit message:
Avoid corrupting its input.
BUG=none
TEST=none
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
25563002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17058
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 1 Oct 2013 19:03:47 +0000 (19:03 +0000)]
MIPS: Lazily save double registers for HCallRuntime instructions within Hydrogen code stubs.
Port r17044 (94843cc)
Original commit message:
Right now we eagerly save all allocatable double registers upon
entry to every Hydrogen code stub that uses HCallRuntime, and
restore them when we return. Since the HCallRuntime is on the
fallback path for code stubs, this is both a waste of time and
stack space in almost every case.
This patch adds a flag to the HCallRuntime, which controls whether
the instruction saves the double register itself (using the save
doubles flag for the CEntryStub), or whether its up the surrounding
code to handle the clobbering of double registers.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
25567002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17057
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 1 Oct 2013 18:54:08 +0000 (18:54 +0000)]
MIPS: Refactor PropertyCallbackInfo & FunctionCallbackInfo, part 3.
Port r17032 (3bdce1d)
Original commit message:
This CL starts using positive array indices instead of negative array indices
for the PropertyCallbackInfo and FunctionCallbackInfo fields. Also, the indices
match now, so they can be unified in the next step.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
25549002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17056
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Tue, 1 Oct 2013 18:00:02 +0000 (18:00 +0000)]
Revert "Hydrogenisation of binops"
This reverts r17052-17054 for various build breaks.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25571002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17055
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Tue, 1 Oct 2013 16:57:39 +0000 (16:57 +0000)]
Remove incorrect assertion.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25478004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17054
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Tue, 1 Oct 2013 16:11:41 +0000 (16:11 +0000)]
Bump old pointer space size.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25479003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17053
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Tue, 1 Oct 2013 15:24:56 +0000 (15:24 +0000)]
Hydrogenisation of binops
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
24072013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17052
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 1 Oct 2013 15:06:59 +0000 (15:06 +0000)]
Turn Heap::AllowedToBeMigrated checks into asserts.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
25544002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17051
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 1 Oct 2013 14:53:45 +0000 (14:53 +0000)]
Remove obsolete AssertNoContextChangeWithHandleScope.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
25513002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17050
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 1 Oct 2013 14:26:53 +0000 (14:26 +0000)]
lazy instantiation of the default isolate
this cl also moves all accesses to the default isolate behind EnsureDefaultIsolate
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
24999002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17049
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 1 Oct 2013 14:26:15 +0000 (14:26 +0000)]
Handlify JSObject::LookupAccessor method.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
25508002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17048
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 1 Oct 2013 13:54:53 +0000 (13:54 +0000)]
Fix threading problems in test-api when running on simulator
Sampler can retrieve current simulator for profiled isolate from its ThreadLocalTop without calls to Isolate::FindPerThreadDataForThread which sometimes leads to acquring same mutex second time.
BUG=v8:2874
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
25053002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17047
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 13:17:04 +0000 (13:17 +0000)]
Encapsulate extra_ic_state in CallICs.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25263002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17046
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 13:13:39 +0000 (13:13 +0000)]
Allow code to be cached in shared maps.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25486002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17045
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 1 Oct 2013 11:56:42 +0000 (11:56 +0000)]
Lazily save double registers for HCallRuntime instructions within Hydrogen code stubs.
Right now we eagerly save all allocatable double registers upon
entry to every Hydrogen code stub that uses HCallRuntime, and
restore them when we return. Since the HCallRuntime is on the
fallback path for code stubs, this is both a waste of time and
stack space in almost every case.
This patch adds a flag to the HCallRuntime, which controls whether
the instruction saves the double register itself (using the save
doubles flag for the CEntryStub), or whether its up the surrounding
code to handle the clobbering of double registers.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
23530066
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17044
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 1 Oct 2013 11:18:30 +0000 (11:18 +0000)]
Refactor translation opcode a little in the deoptimization
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
25480003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17043
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@gmail.com [Tue, 1 Oct 2013 10:44:00 +0000 (10:44 +0000)]
ARM: Tweak LoadKeyed.
Avoid corrupting its input.
BUG=none
TEST=none
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
25231005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17042
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 1 Oct 2013 09:56:04 +0000 (09:56 +0000)]
remove Isolate::Current from ScriptData and Script
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25037002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17041
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 09:55:15 +0000 (09:55 +0000)]
Move TryRemoveInvalidPrototypeDependentStub onto the IC class.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25253002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17040
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 09:52:24 +0000 (09:52 +0000)]
Encapsulate IC::State into the IC.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25228005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17039
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 1 Oct 2013 09:47:37 +0000 (09:47 +0000)]
Defer allocation of native function literals.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
25473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17038
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 09:47:18 +0000 (09:47 +0000)]
Always cache the original target in a handle on the IC.
This requires us to always open a handle-scope in the miss handlers.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25238002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17037
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 09:44:35 +0000 (09:44 +0000)]
Cleanup in IC patching.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25001005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17036
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 09:36:34 +0000 (09:36 +0000)]
Make strict_mode a flag on StoreIC.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25090002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17035
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Oct 2013 09:30:07 +0000 (09:30 +0000)]
Reduce code duplication in IC updating.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
25033003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17034
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 1 Oct 2013 09:27:03 +0000 (09:27 +0000)]
Limit entry points into the parser API.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
24104006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17033
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Tue, 1 Oct 2013 09:24:13 +0000 (09:24 +0000)]
Refactor PropertyCallbackInfo & FunctionCallbackInfo, part 3.
This CL starts using positive array indices instead of negative array indices
for the PropertyCallbackInfo and FunctionCallbackInfo fields. Also, the indices
match now, so they can be unified in the next step.
BUG=
R=dcarney@chromium.org, mstarzinger@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=17015
Review URL: https://codereview.chromium.org/
24488006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17032
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 1 Oct 2013 08:40:33 +0000 (08:40 +0000)]
Initialize flag before usage.
This fixes a crash when running with --concurrent-osr.
R=ulan@chromium.org, dslomov@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
25279002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17031
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 1 Oct 2013 08:22:01 +0000 (08:22 +0000)]
In crankshafted code, we were creating allocation mementos for shallow
SMI array literals when we shouldn't. The idea is that we should have learned
by this point what type of array we'll end up with.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
25146007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17028
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 1 Oct 2013 08:14:38 +0000 (08:14 +0000)]
Print out how many AllocationMementos were found on a scavenge of new
space. This is useful because the unrooted mementos affect heap
decisions like pretenuring mode, and helps to gauge the effectiveness
of allocation-site feedback.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
25273002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17027
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 1 Oct 2013 08:09:05 +0000 (08:09 +0000)]
Prepare push to trunk. Now working on version 3.22.6.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
25462003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17026
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00