yangguo@chromium.org
6e953d51af
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
2012-12-17 14:00:50 +00:00
yangguo@chromium.org
4de32c951d
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
2012-12-17 10:50:19 +00:00
ulan@chromium.org
6e12a16aac
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
2012-12-17 10:23:52 +00:00
peter.rybin@gmail.com
133957e743
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
2012-12-14 18:36:51 +00:00
rossberg@chromium.org
6380b81524
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
2012-12-14 14:39:18 +00:00
rossberg@chromium.org
9fc844b760
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
2012-12-14 14:27:06 +00:00
rossberg@chromium.org
1080d2aade
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
2012-12-14 14:19:18 +00:00
mstarzinger@chromium.org
1aed997ad6
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
2012-12-14 12:45:28 +00:00
yangguo@chromium.org
e24b98312b
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
2012-12-13 17:21:15 +00:00
yangguo@chromium.org
4cd41edcd9
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
2012-12-13 16:38:49 +00:00
yangguo@chromium.org
a1265a15cf
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
2012-12-13 15:39:01 +00:00
mstarzinger@chromium.org
f94184c2b7
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
2012-12-13 10:17:37 +00:00
rossberg@chromium.org
fb5a5e22ec
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
2012-12-13 09:31:44 +00:00
svenpanne@chromium.org
23d681c50b
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
2012-12-12 15:26:04 +00:00
danno@chromium.org
facad070e9
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
2012-12-12 15:20:45 +00:00
jkummerow@chromium.org
13a0b6bfa8
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
2012-12-12 15:06:50 +00:00
yangguo@chromium.org
9e8fc0e820
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
2012-12-12 14:54:35 +00:00
jkummerow@chromium.org
e318155c6e
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
2012-12-12 12:51:47 +00:00
rossberg@chromium.org
76375de29d
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
2012-12-12 11:38:24 +00:00
mstarzinger@chromium.org
04adf4c792
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
2012-12-12 10:46:01 +00:00
yurys@chromium.org
bc37b9be27
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
2012-12-12 09:49:46 +00:00
peter.rybin@gmail.com
6eef2f0682
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
2012-12-11 23:27:38 +00:00
danno@chromium.org
e797e5a489
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
2012-12-11 23:27:15 +00:00
danno@chromium.org
3f83e10f44
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
2012-12-11 20:33:44 +00:00
hpayer@chromium.org
9a0c9a5cf8
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
2012-12-11 20:19:37 +00:00
hpayer@chromium.org
f6f55dcd97
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
2012-12-11 17:45:01 +00:00
mstarzinger@chromium.org
4e42a3295a
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
2012-12-11 17:28:40 +00:00
yangguo@chromium.org
da3e153e63
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
2012-12-11 14:55:23 +00:00
mmassi@chromium.org
ae54f9cfe0
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
2012-12-11 14:23:04 +00:00
mstarzinger@chromium.org
ca3ea142be
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
2012-12-11 12:19:19 +00:00
yangguo@chromium.org
32103ca870
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
2012-12-11 10:42:10 +00:00
mstarzinger@chromium.org
07077798af
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
2012-12-11 10:33:04 +00:00
yangguo@chromium.org
f02af74575
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
2012-12-11 10:22:15 +00:00
yangguo@chromium.org
72dfb27909
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
2012-12-11 10:14:01 +00:00
peter.rybin@gmail.com
0b5359bf87
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
2012-12-10 22:02:26 +00:00
jkummerow@chromium.org
8bf5878453
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
2012-12-10 18:58:32 +00:00
mstarzinger@chromium.org
067a820eb4
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
2012-12-10 15:14:20 +00:00
mmassi@chromium.org
3b0ee64664
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
2012-12-10 12:55:50 +00:00
jkummerow@chromium.org
d1cbd1a98c
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
2012-12-10 12:18:54 +00:00
jkummerow@chromium.org
35cd58365d
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
2012-12-10 12:10:23 +00:00
danno@chromium.org
64fc1f99cb
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
2012-12-10 11:09:12 +00:00
yangguo@chromium.org
c70a0f9334
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
2012-12-10 11:02:22 +00:00
rossberg@chromium.org
9a0623f296
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
2012-12-10 10:53:57 +00:00
mmassi@chromium.org
1aa2891ca4
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
2012-12-10 08:56:24 +00:00
ulan@chromium.org
a1d10c69a1
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
2012-12-07 15:28:40 +00:00
svenpanne@chromium.org
608bce5023
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
2012-12-07 13:47:42 +00:00
svenpanne@chromium.org
6770c02fc4
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
2012-12-07 13:09:39 +00:00
mstarzinger@chromium.org
d11558c9b8
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
2012-12-07 13:01:38 +00:00
rossberg@chromium.org
4d73627313
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
2012-12-07 12:58:09 +00:00
jkummerow@chromium.org
125b1c29cd
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
2012-12-07 12:51:33 +00:00