ulan@chromium.org [Tue, 18 Dec 2012 12:37:57 +0000 (12:37 +0000)]
Correctly handle negative codes in String.fromCharCode()
BUG=166553
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
11576069
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13235
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 18 Dec 2012 12:00:50 +0000 (12:00 +0000)]
Simplify implementation of assignment-to-const checks.
Also, add test that assignment to function name is a syntax error with harmony scoping.
Does not fix issue 2243 directly, but with ES6, the required behaviour will change to what is implemented already anyway.
R=yangguo@chromium.org
BUG=v8:2243
Review URL: https://codereview.chromium.org/
11607016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13234
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 18 Dec 2012 10:54:15 +0000 (10:54 +0000)]
Made store buffer compaction more predictable.
Review URL: https://codereview.chromium.org/
11593026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13233
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 18 Dec 2012 09:48:51 +0000 (09:48 +0000)]
Hardfloat does not imply VFPv3, only VFPv2.
Raspberry Pi is an example.
BUG=v8:2393
Review URL: https://chromiumcodereview.appspot.com/
11570061
Patch from Chi-Thanh Christopher Nguyen <nguyenchithanh@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 18 Dec 2012 09:22:25 +0000 (09:22 +0000)]
include: fix String::New() comment
Review URL: https://chromiumcodereview.appspot.com/
11446035
Patch from Ben Noordhuis <ben@c9.io>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 18 Dec 2012 09:21:05 +0000 (09:21 +0000)]
MIPS: Improve array to string conversion.
Port r13144 (
71c45300)
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
11573017
Patch from Akos Palfi <palfia@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13230
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 17 Dec 2012 15:56:16 +0000 (15:56 +0000)]
Rename LookupSymbol calls to use Utf8 or OneByte in names.
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11597007
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 17 Dec 2012 14:00:50 +0000 (14:00 +0000)]
Make sure error message formatting does not have side effects.
R=vegorov@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11598011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 17 Dec 2012 10:50:19 +0000 (10:50 +0000)]
Implement OS::DumpBacktrace() on FreeBSD.
Review URL: https://chromiumcodereview.appspot.com/
11595004
Patch from Ben Noordhuis <ben@c9.io>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13227
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 17 Dec 2012 10:23:52 +0000 (10:23 +0000)]
Use a filter instead of a visitor to deoptimize selected functions in a context.
This makes the DeoptimizeAll function O(n) instead of O(n^2) where n in the number of optimized functions.
Before this change, DeoptimizeAll iterated over the optimized function list and called DeoptimizingVisitor for each function. The visitor iterated over the optimized function list again to remove the functions that share the same optimized code.
This change partitions the optimized function list into one or more lists of related functions in one pass over the optimized function list.
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
11547015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13226
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
peter.rybin@gmail.com [Fri, 14 Dec 2012 18:36:51 +0000 (18:36 +0000)]
Fix set variable value bug: a function argument must be updated in 2 places
Review URL: https://codereview.chromium.org/
11519020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13225
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 14 Dec 2012 14:39:18 +0000 (14:39 +0000)]
Attempt to fix build.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
11565035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13223
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 14 Dec 2012 14:27:06 +0000 (14:27 +0000)]
V8_Fatal now prints C++ stack trace in debug mode.
Currently only supported on Linux. When compiled with GCC, also demangles C++ identifier names.
Should make debugging those flaky crashes on buildbots easier... :)
R=mstarzinger@chromium.org,ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
11577019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13222
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 14 Dec 2012 14:19:18 +0000 (14:19 +0000)]
Object.oberve: assertions to narrow down flaky crashes with array length mutation.
R=mstarzinger@chromium.org
BUG=v8:2409
Review URL: https://codereview.chromium.org/
11566027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13221
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 14 Dec 2012 12:45:28 +0000 (12:45 +0000)]
Make string test resilient against GC stress.
R=dcarney@chromium.org
TEST=cctest/test-strings/StringCharacterStreamRandom
Review URL: https://codereview.chromium.org/
11565031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13220
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 13 Dec 2012 17:21:15 +0000 (17:21 +0000)]
Revert r13218 due to windows test failures.
R=verwaest@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11568014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13219
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 13 Dec 2012 16:38:49 +0000 (16:38 +0000)]
Add methods to allow resuming execution after calling TerminateExecution().
Two new methods are added to allow embedders to determine that execution
should be resumed at a particular point in the stack without being forced
to unwind all JS frames.
* V8::ResumeExecution() -- When execution is terminated via a call to
V8::TerminateExecution(), this method can be called to clear the
termination exception so that the engine can continue to be used.
* TryCatch::HasTerminated() -- When a TryCatch has caught a termination
exception, HasTerminated() will return true to indicate it is valid to
call V8::ResumeExecution() if desired.
A test case is added to cctest/test-thread-termination.cc.
BUG=v8:2361
Patch from Andrew Paprocki <andrew@ishiboo.com>.
Review URL: https://chromiumcodereview.appspot.com/
11142013
Patch from Andrew Paprocki <andrew@ishiboo.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13218
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 13 Dec 2012 15:39:01 +0000 (15:39 +0000)]
Cleanup tests for StringCharacterStream
Edge case tests now cover all branches.
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11548023
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13217
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 13 Dec 2012 10:17:37 +0000 (10:17 +0000)]
Cleanup object printer declaration.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
11567007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13214
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 13 Dec 2012 09:31:44 +0000 (09:31 +0000)]
Object.observe: Make array length and other magic data properties work correctly.
Also, disable TestFastElementsLength test for now, since it flakes on buildbots for yet unknown reasons.
R=mstarzinger@chromium.org
BUG=v8:2409
Review URL: https://codereview.chromium.org/
11554019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13213
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 12 Dec 2012 15:26:04 +0000 (15:26 +0000)]
Removed RuntimeProfilerRateLimiter class and RuntimeProfiler::IsSomeIsolateInJS.
Removing the former was basically a consequence of removing the latter. The net
effect is, apart from less code, that the signal sender thread is much more
explicit about its logic now.
Review URL: https://codereview.chromium.org/
11543020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13212
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 12 Dec 2012 15:20:45 +0000 (15:20 +0000)]
Remove over-zealous hole checking in Array.slice()
R=jkummerow@chromium.org
BUG=chromium:165637
TEST=regress-165637.js
Review URL: https://codereview.chromium.org/
11442054
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13211
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 12 Dec 2012 15:06:50 +0000 (15:06 +0000)]
Add HTML-based tick processor
Review URL: https://codereview.chromium.org/
11442055
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13208
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 12 Dec 2012 14:54:35 +0000 (14:54 +0000)]
Find plot range with only sampling ticks (profiling with only --prof).
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11543019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13207
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 12 Dec 2012 12:51:47 +0000 (12:51 +0000)]
Revert "Remove redundant loads in DoCheckMaps"
This reverts r13200.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
11552017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13206
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 12 Dec 2012 11:38:24 +0000 (11:38 +0000)]
Object.observe: prevent observed objects from using fast elements.
This is necessary because polymorphic stores generally
do not perform a map check but only an instance type check,
which misses out on changes in the observation status.
Unfortunately, there currently is no efficient way in V8
to maintain that optimisation in the presence of Object.observe.
R=mstarzinger@chromium.org
BUG=v8:2409
Review URL: https://codereview.chromium.org/
11477006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13205
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 12 Dec 2012 10:46:01 +0000 (10:46 +0000)]
Add regression test for r13195.
This is a regression test for the fix in r13195 which made sure that we
correctly clear the optimized code map even when incremental marking is
running.
R=ulan@chromium.org,jkummerow@chromium.org
BUG=chromium:165495
TEST=cctest/test-heap/Regress165495
Review URL: https://codereview.chromium.org/
11543015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13204
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Wed, 12 Dec 2012 09:49:46 +0000 (09:49 +0000)]
Do not read document and URL properties on global objects while taking heap snapshot
This unsafe mechanism was replaced with a user provided callback in r13137 and now we should remove old code.
Review URL: https://codereview.chromium.org/
11519029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13203
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
peter.rybin@gmail.com [Tue, 11 Dec 2012 23:27:38 +0000 (23:27 +0000)]
Issue 2399 part 2: In debugger allow modifying local variable values
Review URL: https://codereview.chromium.org/
11412310
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13202
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 11 Dec 2012 23:27:15 +0000 (23:27 +0000)]
Fix crashes in debug output of generated stubs
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
11464027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13201
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 11 Dec 2012 20:33:44 +0000 (20:33 +0000)]
Remove redundant loads in DoCheckMaps
Hoist the loop-invariant load out of the loop and call the other CheckMap function
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/
11369014
Patch from Rajeev Krithivasan <rkrithiv@codeaurora.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 11 Dec 2012 20:19:37 +0000 (20:19 +0000)]
Fixed compilation error on Win64.
BUG=
Review URL: https://codereview.chromium.org/
11538010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13199
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 11 Dec 2012 17:45:01 +0000 (17:45 +0000)]
Prepare FreeList for parallel and concurrent sweeping.
BUG=
Review URL: https://codereview.chromium.org/
11348174
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13198
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 11 Dec 2012 17:28:40 +0000 (17:28 +0000)]
Clear optimized code map during incremental marking.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
11458011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13195
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 11 Dec 2012 14:55:23 +0000 (14:55 +0000)]
Avoid object layout changes during GC.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11530011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Tue, 11 Dec 2012 14:23:04 +0000 (14:23 +0000)]
Fix for when array bounds check elimination tries to modify a phi index.
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11486007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 11 Dec 2012 12:19:19 +0000 (12:19 +0000)]
Fix missing printing of deoptimizer input data.
R=rossberg@chromium.org
TEST=mjsunit/compiler/inline-arguments --print-all-code
Review URL: https://codereview.chromium.org/
11537005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13192
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 11 Dec 2012 10:42:10 +0000 (10:42 +0000)]
Fix windows build.
R=dcarney@google.com
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11538003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13191
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 11 Dec 2012 10:33:04 +0000 (10:33 +0000)]
Disable GC stress for mjsunit/fast-prototype.
R=yangguo@chromium.org
TEST=mjsunit/fast-prototype --gc-interval=500 --stress-compaction
Review URL: https://codereview.chromium.org/
11534004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 11 Dec 2012 10:22:15 +0000 (10:22 +0000)]
Cleanup StringCharacterStream and add initial test cases.
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11438046
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13189
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 11 Dec 2012 10:14:01 +0000 (10:14 +0000)]
Fire 'stack' getter of error objects after GC.
BUG=v8:2340
Review URL: https://chromiumcodereview.appspot.com/
11377158
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
peter.rybin@gmail.com [Mon, 10 Dec 2012 22:02:26 +0000 (22:02 +0000)]
Allow all value types in evaluate additional context
Review URL: https://codereview.chromium.org/
11448030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 10 Dec 2012 18:58:32 +0000 (18:58 +0000)]
Prepare push to trunk. Now working on version 3.15.12.
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
11514002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13184
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 10 Dec 2012 15:14:20 +0000 (15:14 +0000)]
Make unit tests resilient against GC Stress.
R=yangguo@chromium.org
TEST=cctest --gc-interval=500 --stress-compaction
Review URL: https://codereview.chromium.org/
11498012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13183
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Mon, 10 Dec 2012 12:55:50 +0000 (12:55 +0000)]
Revert r13176.
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11503011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13182
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 10 Dec 2012 12:18:54 +0000 (12:18 +0000)]
Flush out potential leaks of Failure objects
Review URL: https://codereview.chromium.org/
11475027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13181
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 10 Dec 2012 12:10:23 +0000 (12:10 +0000)]
Make sure HMathMinMax always has a supported representation
Review URL: https://codereview.chromium.org/
11467021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13180
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 10 Dec 2012 11:09:12 +0000 (11:09 +0000)]
Revert 13157, 13145 and 13140: Crankshaft code stubs.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
11498006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13179
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 10 Dec 2012 11:02:22 +0000 (11:02 +0000)]
Improve integer division on IA32 and X64
If the divisor is a Power-of-2 constant, we could use shifts instead of the
expensive idiv instructions, which also loose the register constraints.
Review URL: https://chromiumcodereview.appspot.com/
11478043
Patch from Yuqiang Xian <yuqiang.xian@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13178
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 10 Dec 2012 10:53:57 +0000 (10:53 +0000)]
Object.observe support for Function 'prototype' property
BUG=v8:2409
Review URL: https://codereview.chromium.org/
11416353
Patch from Adam Klein <adamk@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13177
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Mon, 10 Dec 2012 08:56:24 +0000 (08:56 +0000)]
Make keyed operations use the unchecked index but still depend on the checked one.
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11445016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13176
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 7 Dec 2012 15:28:40 +0000 (15:28 +0000)]
Define CAN_USE_VFP2/3_INSTRUCTIONS based on arm_neon and arm_fpu flags.
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
11472023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13175
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Dec 2012 13:47:42 +0000 (13:47 +0000)]
Remove SlidingStateWindow and related code.
Review URL: https://codereview.chromium.org/
11441034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Dec 2012 13:09:39 +0000 (13:09 +0000)]
Removed dead InterruptFlag enum value.
Review URL: https://codereview.chromium.org/
11446064
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 7 Dec 2012 13:01:38 +0000 (13:01 +0000)]
Make test-heap resilient against GC stress.
R=yangguo@chromium.org
TEST=cctest/test-heap --stress-compaction
Review URL: https://codereview.chromium.org/
11464021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13170
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 7 Dec 2012 12:58:09 +0000 (12:58 +0000)]
Handlify JSObject::SetDictionaryElement, which may call back into JS.
Fixes flaky crasher in proxies.js test.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
11471028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13169
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 7 Dec 2012 12:51:33 +0000 (12:51 +0000)]
llprof improvements
Review URL: https://codereview.chromium.org/
11444031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13168
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Dec 2012 12:49:27 +0000 (12:49 +0000)]
Fix mozilla test expectations.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11482003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13167
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 7 Dec 2012 12:38:22 +0000 (12:38 +0000)]
Prepare push to trunk. Now working on version 3.15.11.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
11465023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13164
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Dec 2012 12:18:50 +0000 (12:18 +0000)]
Fix mozilla test failures and expectations.
Follow-up for r13160.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11446063
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13163
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 7 Dec 2012 11:29:27 +0000 (11:29 +0000)]
Improve double to integer truncation on ARM.
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/
11412272
Patch from Rodolph Perfetta <rodolph.perfetta@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13162
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 7 Dec 2012 10:35:50 +0000 (10:35 +0000)]
Allow lazy compilation (and thus optimisation) of functions inside eval.
For strict-mode eval, this requires _disabling_ lazy parsing of inner functions,
because we need to collect their free variables to do allocation for the
eval scope properly.
R=mstarzinger@chromium.org
BUG=v8:2315
Review URL: https://codereview.chromium.org/
11438042
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13161
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Dec 2012 10:20:35 +0000 (10:20 +0000)]
Fix spec violations in methods of Number.prototype.
R=svenpanne@chromium.org
BUG=v8:2443
Review URL: https://chromiumcodereview.appspot.com/
11465005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13160
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 7 Dec 2012 09:44:10 +0000 (09:44 +0000)]
Add GCTracer metrics for a scavenger GC for DOM wrappers
This patch adds the following three metrics for the --trace_gc_nvp option.
nodes_died_in_new_space_; // Number of died nodes in the new space.
nodes_copied_in_new_space_; // Number of copied nodes to the new space.
nodes_promoted; // Number of promoted nodes to the old space.
BUG=
TEST=Manually confirmed that the "--trace_gc --trace_gc_nvp" option prints the metrics
Review URL: https://codereview.chromium.org/
11365146
Patch from Kentaro Hara <haraken@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13159
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Dec 2012 08:55:06 +0000 (08:55 +0000)]
Use count-based profiling exclusively.
Review URL: https://codereview.chromium.org/
11437016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13158
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 7 Dec 2012 07:09:57 +0000 (07:09 +0000)]
Fix nosse2 tests
R=jkummerow@chromoum.org
Review URL: https://chromiumcodereview.appspot.com/
11439028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13157
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 6 Dec 2012 17:27:53 +0000 (17:27 +0000)]
Prepare push to trunk. Now working on version 3.15.10.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
11469003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13154
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 6 Dec 2012 16:27:32 +0000 (16:27 +0000)]
Fix candidate eviction in code flusher.
This fixes a corner case where a code flushing candidate was evicted
from the candidate list without being revisited by the incremental
marker. An explicit write-barrier makes sure it gets revisited.
R=ulan@chromium.org
BUG=chromium:159140
TEST=cctest/test-heap/Regress159140
Review URL: https://codereview.chromium.org/
11451038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13153
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 6 Dec 2012 15:51:42 +0000 (15:51 +0000)]
Let marking speed depend on the actual incremental write barrier count.
Review URL: https://chromiumcodereview.appspot.com/
11441011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13152
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 6 Dec 2012 13:13:38 +0000 (13:13 +0000)]
Iterate through all arguments for side effects in Math.min/max.
R=svenpanne@chromium.org
BUG=v8:2444
Review URL: https://chromiumcodereview.appspot.com/
11444030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13150
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 6 Dec 2012 13:13:01 +0000 (13:13 +0000)]
Update test expectations.
Test failure has been fixed in r13050.
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11450004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13149
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 6 Dec 2012 12:43:05 +0000 (12:43 +0000)]
Report deoptimization error in release mode.
This makes sure that we crash and burn in release mode in cases where
the deoptimizer is unable to find the PC offset into unoptimized code
during deoptimization. So far this failure got swallowed in production.
R=ulan@chromium.org
BUG=chromium:159140
Review URL: https://codereview.chromium.org/
11451033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13148
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 6 Dec 2012 11:49:15 +0000 (11:49 +0000)]
Add StringBufferStream
add a class StringBufferStream which will replace
StringInputBuffer and SafeStringInputBuffer and requires no
ascii/two byte encoding scheme
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11428106
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13147
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 5 Dec 2012 16:22:14 +0000 (16:22 +0000)]
Take instrumentation overhead into account when plotting.
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11348298
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13146
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 5 Dec 2012 16:16:32 +0000 (16:16 +0000)]
Fix isolate bug introduced by generated code stubs
Review URL: https://codereview.chromium.org/
11441013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13145
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 5 Dec 2012 15:49:22 +0000 (15:49 +0000)]
Improve array to string conversion.
BUG=v8:2435
Review URL: https://chromiumcodereview.appspot.com/
11348349
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13144
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 5 Dec 2012 12:32:25 +0000 (12:32 +0000)]
Fix spec violations related to regexp.lastIndex
BUG=v8:2437, v8:2438
Review URL: https://chromiumcodereview.appspot.com/
11451005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13143
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 5 Dec 2012 12:03:57 +0000 (12:03 +0000)]
Make Object.observe on the global object functional
The approach in this change is to handle the unwrapping/wrapping of the global object transparently with respect to the JS implementation of Object.observe. An alternate approach would be to add a runtime method like %IsJSGlobalProxy and %UnwrapJSGlobalProxy, but it seems ugly to give JS (even implementation JS) access to the unwrapped global.
BUG=v8:2409
Review URL: https://codereview.chromium.org/
11414094
Patch from Adam Klein <adamk@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13142
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 5 Dec 2012 11:47:45 +0000 (11:47 +0000)]
Object.observe: notify of __proto__ changes
BUG=v8:2409
Review URL: https://codereview.chromium.org/
11299260
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13141
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 5 Dec 2012 11:04:10 +0000 (11:04 +0000)]
Enable stub generation using Hydrogen/Lithium (again)
This initial implementation generates only KeyedLoadICs using the new Hydrogen stub infrastructure.
Committed: https://code.google.com/p/v8/source/detail?r=13105
Committed: https://code.google.com/p/v8/source/detail?r=13117
Review URL: https://codereview.chromium.org/
10701054
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13140
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 5 Dec 2012 10:14:10 +0000 (10:14 +0000)]
Pass Isolate to MakeWeak(), IsWeak(), and AddObjectGroup().
BUG=
TEST=cctest/test-api/ApiObjectGroupsCycle
Review URL: https://codereview.chromium.org/
11360082
Patch from Kentaro Hara <haraken@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13139
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 5 Dec 2012 09:13:53 +0000 (09:13 +0000)]
Pass Isolate to Local<T>::New()
Our profiling revealed that Local<T>::New() is one of bottlenecks of DOM bindings.
BUG=
TEST=cctest/test-api/LocalHandle
Review URL: https://codereview.chromium.org/
11316331
Patch from Kentaro Hara <haraken@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13138
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 4 Dec 2012 17:17:55 +0000 (17:17 +0000)]
Introduce callback for resolving global object name while taking heap snapshot
Heap profiler currently gets "document" of global objects while taking snapshot (to later retrieve its "URL"). This is unsafe as there may be no current v8 context when the property is requested while corresponding property accessor may make some assumptions about the context stack during its invokation. Several crashes were reported due to this problem:
https://bugs.webkit.org/show_bug.cgi?id=103076
https://crbug.com/162121
https://crbug.com/132727
This patch adds a callback for resolving global object names and avoid the crashes.
Review URL: https://codereview.chromium.org/
11415203
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13137
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 4 Dec 2012 15:30:22 +0000 (15:30 +0000)]
Remove some dead code.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11412322
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13136
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 4 Dec 2012 13:54:22 +0000 (13:54 +0000)]
Force inlining for hot interface functions.
Review URL: https://codereview.chromium.org/
11411355
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13135
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Tue, 4 Dec 2012 13:49:22 +0000 (13:49 +0000)]
Prepare push to trunk. Now working on version 3.15.9.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
11348378
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13132
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 4 Dec 2012 13:45:48 +0000 (13:45 +0000)]
Change deprecated semantics of function template signatures.
This changes how FunctionTemplate interprets a Signature that specifies
compatible receivers and arguments. Only the hidden prototype chain will
be considered when searching for compatible receivers. This prevents
JavaScript from modifying the inheritance relationship set up by the
embedder.
R=rossberg@chromium.org
BUG=v8:2268
TEST=cctest/test-api
Review URL: https://codereview.chromium.org/
11308197
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13131
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 4 Dec 2012 12:14:19 +0000 (12:14 +0000)]
Enforce stack allocation of TryCatch blocks.
R=svenpanne@chromium.org
BUG=v8:2166,chromium:152389
Review URL: https://codereview.chromium.org/
11411353
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13130
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 4 Dec 2012 10:45:59 +0000 (10:45 +0000)]
Fix external exceptions in external try-catch handlers.
This tries to propagate exceptions which are externally thrown into
external try-catch handlers before scheduling them. This also allows
embedders to nest external try-catch handlers.
This just relands r11834.
R=svenpanne@chromium.org
BUG=v8:2166
TEST=cctest/test-api/TryCatchNested
Review URL: https://codereview.chromium.org/
11299329
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13129
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 4 Dec 2012 10:23:43 +0000 (10:23 +0000)]
Unify object groups iteration in global handles.
This unifies the iteration logic of objects groups iteration in global
handles. The scavenger as well as mark-and-compact now rely on the same
underlying logic.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
11299248
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13128
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 4 Dec 2012 10:15:19 +0000 (10:15 +0000)]
Fix gcmole offenders.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11419309
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13127
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 4 Dec 2012 09:51:52 +0000 (09:51 +0000)]
Remove bogus test and add check for OOM in TryCall.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11412318
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13126
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 4 Dec 2012 08:58:59 +0000 (08:58 +0000)]
Remove extraneous forced rejuvenations in code aging
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
11421219
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13125
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 4 Dec 2012 08:16:24 +0000 (08:16 +0000)]
Deactive code aging due to regressions
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
11415282
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13124
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
peter.rybin@gmail.com [Mon, 3 Dec 2012 21:47:39 +0000 (21:47 +0000)]
Issue 2429, core implementation and the protocol change
Review URL: https://codereview.chromium.org/
11421100
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13123
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
peter.rybin@gmail.com [Mon, 3 Dec 2012 20:29:29 +0000 (20:29 +0000)]
Issue 2399 part 1: In debugger allow modifying local variable values
Review URL: https://codereview.chromium.org/
11415042
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13122
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 3 Dec 2012 17:57:17 +0000 (17:57 +0000)]
Fix null dereference after OOM.
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11414295
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13121
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 3 Dec 2012 17:16:51 +0000 (17:16 +0000)]
Revert 13117: "Enable stub generation using Hydrogen/Lithium (again)"
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
11415261
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13120
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 3 Dec 2012 16:48:17 +0000 (16:48 +0000)]
Optimize non-ASCII string splitting with single-character search pattern
Review URL: https://chromiumcodereview.appspot.com/
11299163
Patch from Ben Noordhuis <ben@c9.io>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13119
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 3 Dec 2012 16:23:30 +0000 (16:23 +0000)]
Fix JSON stringify.
R=verwaest@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
11421200
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13118
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00