hpayer@chromium.org [Mon, 19 May 2014 16:07:20 +0000 (16:07 +0000)]
Add allocation sites to scratchpad only if a significant amount of mementos was found.
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
284223007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21370
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Mon, 19 May 2014 15:30:23 +0000 (15:30 +0000)]
MIPS: Allow comparison in UINT32 mode.
Port r21355 (932c5de)
Original commit message:
Shamelessly based on parts of https://codereview.chromium.org/
288853003/. :-)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
296453003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21369
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 19 May 2014 15:29:29 +0000 (15:29 +0000)]
Sync change log file with trunk.
BUG=
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
291803005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21368
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 19 May 2014 13:45:45 +0000 (13:45 +0000)]
filter out .caller from other worlds
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
261103002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21366
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Mon, 19 May 2014 12:31:36 +0000 (12:31 +0000)]
Fix GCMole warning when creating generator arguments poison pill
R=jkummerow@chromium.org
TBR=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
289323005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21365
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Mon, 19 May 2014 10:47:00 +0000 (10:47 +0000)]
Poison .arguments and .caller for generator functions
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
270133003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21362
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 19 May 2014 09:58:46 +0000 (09:58 +0000)]
Update BUILD.gn and properly disable it on android
BUG=none
R=dcarney@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
294613002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21361
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 19 May 2014 09:48:35 +0000 (09:48 +0000)]
Further improve old space allocation write barrier elimination.
Stores to old space allocations require no write barriers if the
object is the new space dominator and the value is not in new space.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
290173003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21360
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Mon, 19 May 2014 08:36:56 +0000 (08:36 +0000)]
Comment out %RunMicrotasks assert that triggers in mjsunit tests
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
290313004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21359
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 19 May 2014 08:36:53 +0000 (08:36 +0000)]
Let test driver export json results.
BUG=374134
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
285193009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21358
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Mon, 19 May 2014 08:19:54 +0000 (08:19 +0000)]
Fix fuzzable JS function count after r21356
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
294523006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21357
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Mon, 19 May 2014 07:57:04 +0000 (07:57 +0000)]
Move microtask queueing logic from JavaScript to C++
This avoids the appearence of a leak due to storing a JSObject
as the microtask_state in the strong root list, and allows callers
to call Isolate::RunMicrotasks() without having any v8::Context
available (as at least Blink has interest in doing).
The queue is now a strong root, represented as a FixedArray of JSFunctions
(or empty_fixed_array, if it's empty); it doubles in size when it needs to grow.
The number of elements in the queue is stored in Isolate::pending_microtask_count().
LOG=Y
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
290633010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21356
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 19 May 2014 07:47:09 +0000 (07:47 +0000)]
Allow comparison in UINT32 mode.
Shamelessly based on parts of https://codereview.chromium.org/
288853003/. :-)
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
288383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21355
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 19 May 2014 07:26:33 +0000 (07:26 +0000)]
Drop redundant FullCodeGenerator::prepared_bailout_ids_.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
294543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21354
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 19 May 2014 07:24:24 +0000 (07:24 +0000)]
Perform block ordering in-place.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
295543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21353
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 19 May 2014 07:08:47 +0000 (07:08 +0000)]
Partial revert of "Next bunch of fixes for check elimination".
This reverts the part of r21154 that introduced the CHECK()s to verify
state of objects with stable maps during code generation. The CHECK()s
seem to trigger a non-critical hidden bug in the map stability
mechanism. We will re-add these CHECK()s once the bug is found and
fixed.
BUG=372173
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
287363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21352
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 19 May 2014 07:06:44 +0000 (07:06 +0000)]
Revert "Simplify debugger state."
This reverts r21346, it broke the layout tests.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
292713002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21351
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 16 May 2014 15:42:00 +0000 (15:42 +0000)]
Fix performance regression in regular expressions after Array.push() optimizations
R=yangguo@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
281953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21348
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 16 May 2014 15:18:24 +0000 (15:18 +0000)]
Decouple CpuFeatures from serializer state.
Traditionally, we cross compile a snapshot iff the serializer is enabled.
This will change in the future.
Changes:
- CpuFeatures probing is done once per process, depending on whether we
cross compile.
- CpuFeatures are consolidated into the platform-independent assembler.h
as much as possible.
- FLAG_enable_<feature> will only be checked at probing time (already the
case for ARM).
- The serializer state is cached by the MacroAssembler.
- PlatformFeatureScope is no longer necessary.
- CPUFeature enum values no longer map to CPUID bit fields.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
285233010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21347
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 16 May 2014 14:58:03 +0000 (14:58 +0000)]
Simplify debugger state.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
287873005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21346
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Fri, 16 May 2014 14:49:11 +0000 (14:49 +0000)]
Fix MacroAssembler::Prologue for Arm when FLAG_out_off_line_constant_pool is enabled.
The prologue update in r21329 changed the scoping of the PredictableCodeSizeScope.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
284303003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21345
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 16 May 2014 14:42:02 +0000 (14:42 +0000)]
Stage ES6 symbols
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
286133002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21344
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 16 May 2014 13:43:19 +0000 (13:43 +0000)]
Harden builtins BuildResultFromMatchInfo and URIDecodeOctets
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
286203010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21343
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 16 May 2014 13:23:32 +0000 (13:23 +0000)]
Add builtin detector to generate-runtime-tests.py
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
283403002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21342
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 16 May 2014 13:18:13 +0000 (13:18 +0000)]
Move check for existence of generated tests from run-tests.py to presubmit.py
Inspired by https://codereview.chromium.org/
275143002#msg3
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
290023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21341
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 16 May 2014 13:16:08 +0000 (13:16 +0000)]
Expand C++ macros in tools/generate-runtime-tests.py to increase coverage
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
290513002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21340
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 16 May 2014 13:06:20 +0000 (13:06 +0000)]
Use %DebugGetProperty in debug mirror to check for Promise.
R=aandrey@chromium.org, amikhaylova@google.com
Review URL: https://codereview.chromium.org/
283373003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21339
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 16 May 2014 13:04:45 +0000 (13:04 +0000)]
Make plot shell script nicer.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
284283005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21338
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Fri, 16 May 2014 12:09:42 +0000 (12:09 +0000)]
ARM64: Fix native cctest
CPUFeatures::Probe has been modified such that it can be called only once, but
the cctests make two calls in native builds: once in VM init, and once in each
test setup. This patch removes the call in the test setup.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
285273003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21337
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 15 May 2014 15:01:27 +0000 (15:01 +0000)]
Fix keyboard interrupt in test driver.
Drain the queues to prevent failures when queues are garbage collected. Fails when interrupting test262 otherwise.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
286973004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21334
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 15 May 2014 14:13:59 +0000 (14:13 +0000)]
Ensure that collection iterators' maps have constructors
This fixes JSObject::GetCreationContext() for such iterators.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
288233002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21333
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 15 May 2014 13:03:14 +0000 (13:03 +0000)]
Fix builtin/runtime name clashes generated by macros
Specifically: DataView{S,G}et* and a few more Math functions.
Also change indentation in typedarray.js for easier future builtins parsing.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
286073004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21332
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 15 May 2014 12:46:32 +0000 (12:46 +0000)]
Adapt test expectations in webkit.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
288163003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21331
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 15 May 2014 12:40:40 +0000 (12:40 +0000)]
Fix deopt fuzzer after test runner changes.
Use the same keyboard interrupt logic as run-tests.
Close the perf database explicitly after one run, as it has two runs on the same architecture. Currently the first run closes on garbage collection, which might corrupt the second run.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
284203002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21330
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 15 May 2014 12:10:00 +0000 (12:10 +0000)]
Refactor MacroAssembler::Prologue.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
288213002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21329
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 15 May 2014 12:01:34 +0000 (12:01 +0000)]
Run tests sorted by expected runtime.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
273613005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21328
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 15 May 2014 11:10:07 +0000 (11:10 +0000)]
Decrease OldSurvivalRateLowThreshold to fit heap growing strategy.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
282223005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21327
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 15 May 2014 11:09:22 +0000 (11:09 +0000)]
Only allow allocation site lifetime transitions from undicided to tenure or don't tenure.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
289973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21326
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 15 May 2014 10:40:48 +0000 (10:40 +0000)]
Use table to dispatch debug commands.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
289473005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21325
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Thu, 15 May 2014 09:44:57 +0000 (09:44 +0000)]
Parser / PreParser: Simplify error message arguments.
In some places, we pretended that there can be multiple arguments, though in
practice there was only one. In other places (most importantly, PreParser), we
only handled one argument. (This means that we were not able to produce a
multi-argument error inside a lazy function anyway.)
This CL makes it clear that there is ever only one argument.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
273653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21324
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 15 May 2014 09:34:47 +0000 (09:34 +0000)]
Ignore Eclipse project description files.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
290453004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21323
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 15 May 2014 09:25:03 +0000 (09:25 +0000)]
Omit stack check in non-looping loops.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
285333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21322
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 15 May 2014 09:19:02 +0000 (09:19 +0000)]
Remove custom JSON implementation from d8.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
283943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21321
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 15 May 2014 07:16:46 +0000 (07:16 +0000)]
Avoid memset(NULL, ...).
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
290453003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21320
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Wed, 14 May 2014 17:34:09 +0000 (17:34 +0000)]
MIPS: Fix FlooringDivByPowerOf2I.
Port r21313 (3b4cb0b)
Original commit message:
Fix for divisor=1, found during code inspection. We can't hit this bug, due to
HDiv::Canonicalize() discarding the operation, but it might avoid a future bug
hunt. Patch also includes a small tidying of the ARM64 code.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
277893003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21317
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 14 May 2014 16:34:13 +0000 (16:34 +0000)]
Remove socket implementation from V8.
R=jkummerow@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
281723007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21316
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 14 May 2014 16:28:46 +0000 (16:28 +0000)]
Remove DebuggerAgent.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
279423004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21315
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 14 May 2014 15:05:44 +0000 (15:05 +0000)]
Mark slow mozilla test.
This test is the remaining low hanging fruit in quick check and blocks the runner for 5 extra seconds.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
281153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21314
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Wed, 14 May 2014 14:34:37 +0000 (14:34 +0000)]
Fix FlooringDivByPowerOf2I on ARM/ARM64
Fix for divisor=1, found during code inspection. We can't hit this bug, due to
HDiv::Canonicalize() discarding the operation, but it might avoid a future bug
hunt. Patch also includes a small tidying of the ARM64 code.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
280883003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21313
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 14 May 2014 14:11:54 +0000 (14:11 +0000)]
ARM64: Enable PIE on Android.
BUG=373219
LOG=N
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/
287893002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21312
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Wed, 14 May 2014 14:01:29 +0000 (14:01 +0000)]
A number of small changes:
- Change ConstantD for +/-zero constants to use the fp_zero register.
- Use Bfi in DoConstructDouble.
- Use Tbz for positive dividend check in mod by constant.
- Optimize some deoptimize checks.
- Fix a couple of style/consistency issues.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
272183003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21311
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 14 May 2014 13:30:57 +0000 (13:30 +0000)]
Introduce a dynamic process pool for the local test driver
The new process pool allows adding jobs after testing has been started. It will also allow to restructure building the job queue (in a follow up CL), so that testing can start instantly while the queue is being built.
Also attempts to clean up the keyboard-interrupt logic. Idea: Only catch keyboard interrupt once per process at the outermost level. Use proper "finally" clauses to clean up everywhere where a keyboard interrupt might occur. Never turn named exceptions into none-exceptions using anonymous "raise".
TEST=python -m unittest pool_unittest
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
275093002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21310
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 14 May 2014 12:54:34 +0000 (12:54 +0000)]
Add randomized test generation capability to tools/generate-runtime-tests.py
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
288443005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21307
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 14 May 2014 12:35:13 +0000 (12:35 +0000)]
Remove a race between sweepers and the free space skipping code (while iterating new space pointers).
There has been a race between a sweeper setting the next pointer on
free list node and the main thread skipping free space during update of
new space pointers in the heap.
This change removes the free space skipping code.
R=hpayer@chromium.org
BUG=370551
LOG=N
Review URL: https://codereview.chromium.org/
285733003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21306
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 14 May 2014 12:28:34 +0000 (12:28 +0000)]
Temporarily skip test-heap/NoWeakHashTableLeakWithIncrementalMarking on Windows.
BUG=3331
LOG=N
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
286783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21305
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 14 May 2014 11:45:33 +0000 (11:45 +0000)]
Print new space survival rate in --trace-gc-nvp.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
287873003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21304
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 14 May 2014 11:43:21 +0000 (11:43 +0000)]
Fix test after r21299.
This fixes Win and Mac test failures.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
282863005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21303
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 14 May 2014 11:11:22 +0000 (11:11 +0000)]
Add layout dbg trybot to default list.
BUG=353487
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
281013003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21302
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 14 May 2014 10:44:34 +0000 (10:44 +0000)]
Drop thenable coercion cache
R=dslomov@chromium.org
BUG=372788
LOG=Y
Review URL: https://codereview.chromium.org/
281753004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21301
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 14 May 2014 09:29:50 +0000 (09:29 +0000)]
Fix chromium trunk url in DEPS.
Makes "svn/trunk" part of the variable so that it can be replaced with "chrome/trunk" when using mirrors.
BUG=372738
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
289473006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21300
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 14 May 2014 09:12:21 +0000 (09:12 +0000)]
Skip write barriers when updating the weak hash table.
Write barrier on the weak hash table makes all its pointers strong,
which can cause a memory leak.
BUG=359401
LOG=Y
TEST=cctest/test-heap/NoWeakHashTableLeakWithIncrementalMarking
R=hpayer@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
284773004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21299
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 14 May 2014 08:51:10 +0000 (08:51 +0000)]
Avoid name clashes of builtins and runtime functions.
This makes it possible to use %Percent() notation to call any given builtin or runtime function in tests.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
280243002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21298
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 14 May 2014 08:34:05 +0000 (08:34 +0000)]
Revert PropertyCallbackInfo::This() signature change from r21022.
This exposed an internal implementation detail, which could be handled
differently.
BUG=v8:3274
LOG=y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
285643008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21297
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 14 May 2014 08:30:49 +0000 (08:30 +0000)]
Allow chromium url to be overwritten as a custom variable in DEPS.
Using this work around, buildbot can set the chromium_url variable to the golo mirror.
BUG=372738
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
281053003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21296
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 14 May 2014 08:07:21 +0000 (08:07 +0000)]
Rename debug API methods.
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/
281733002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21295
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Tue, 13 May 2014 15:13:22 +0000 (15:13 +0000)]
ARM64: Fix cache line size computation.
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
268673020
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21290
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Tue, 13 May 2014 10:31:53 +0000 (10:31 +0000)]
Prevent interference of allocation sites with array-natives-elements test.
This should make the arm64 build green again.
R=mvstanton@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
285663005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21288
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Tue, 13 May 2014 09:55:26 +0000 (09:55 +0000)]
ARM64: Fix native builds
On ARM64, HasListItem() isn't used, so the compiler complains. Use the
preprocessor to remove it from ARM64 builds.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
285463003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21285
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 13 May 2014 09:05:00 +0000 (09:05 +0000)]
Simplify DoubleRegister for the ia32 port.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
284503002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21284
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Tue, 13 May 2014 08:48:39 +0000 (08:48 +0000)]
Fix incremental marking of native context when bootstrapping.
This should fix one of the arm64 build breaks - we have tried to mark
half-initialized native context there, but the normalized_map_cache
entry was still undefined.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
284633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21283
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 13 May 2014 08:48:37 +0000 (08:48 +0000)]
Revert "Sync change log from trunk."
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21282
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 13 May 2014 08:40:30 +0000 (08:40 +0000)]
Sync change log from trunk.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
280703006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21281
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 13 May 2014 08:31:27 +0000 (08:31 +0000)]
Remove unused -p option from d8.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
280543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21280
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 13 May 2014 08:16:26 +0000 (08:16 +0000)]
Require CMOV support for the ia32 port.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
275253004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21279
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 13 May 2014 06:22:49 +0000 (06:22 +0000)]
Simplified slot buffer logic during weak list visiting.
Tiny reformatting cleanup on the way.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
282493004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21278
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 12 May 2014 20:10:47 +0000 (20:10 +0000)]
Revert "v8::TryCatch now works correctly with ASAN's UseAfterReturn mode enabled."
This reverts commit r21273.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
284493003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21275
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 12 May 2014 20:05:52 +0000 (20:05 +0000)]
Use stability to only conditionally flush information from the map check table.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
266083007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21274
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 12 May 2014 19:32:12 +0000 (19:32 +0000)]
v8::TryCatch now works correctly with ASAN's UseAfterReturn mode enabled.
BUG=chromium:369962
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
273383003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21273
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Mon, 12 May 2014 15:44:21 +0000 (15:44 +0000)]
ARM64: Fix and improve MacroAssembler::Printf.
- W-sized values passed to Printf are now handled correctly by the
simulator. In AAPCS64, int32_t and int64_t are passed in the same
way, so this didn't affect non-simulator builds.
- Since Printf now records the type and size of each argument, it is
possible to mix argument types.
- It is now possible to print the stack pointer. There is only one
remaining restriction: The `csp` register cannot be printed unless
it is the current stack pointer. This is because it is modified by
BumpSystemStackPointer when the caller-saved registers are
preserved.
BUG=
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/
268353005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21272
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 12 May 2014 15:30:00 +0000 (15:30 +0000)]
Harden more runtime functions
BUG=chromium:372239
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
282493005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21271
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 May 2014 13:47:01 +0000 (13:47 +0000)]
Clean up debugger flags.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
261253005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21270
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 May 2014 13:38:39 +0000 (13:38 +0000)]
Revert "Read internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise."
This reverts r21266.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
273423008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21269
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 12 May 2014 13:35:53 +0000 (13:35 +0000)]
Do not scavenge while marking incrementally when FLAG_gc_global is on.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
281573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21268
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Mon, 12 May 2014 13:30:54 +0000 (13:30 +0000)]
ARM64: Optimize MathRoundI
Optimize code generated for MathRoundI based on technique used in MathRoundD.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
276283003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21267
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 May 2014 12:42:35 +0000 (12:42 +0000)]
Read internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise.
BUG=v8:3093
LOG=N
R=aandrey@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
273653007
Patch from Alexandra Mikhaylova <amikhaylova@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21266
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 12 May 2014 12:05:00 +0000 (12:05 +0000)]
Harden %WeakCollectionSet.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
279863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 May 2014 11:52:44 +0000 (11:52 +0000)]
Revert "Revert interrupt handling code changed in r21208."
This reverts commit r21252.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
284483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21264
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 May 2014 11:42:53 +0000 (11:42 +0000)]
Fix windows x64 build.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
280223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21263
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 12 May 2014 11:36:47 +0000 (11:36 +0000)]
Guard against stack overflow in Runtime::StringReplaceOneCharWithString.
Unfortunately, this only triggers with "ulimit -s 1024" (or less), so we
cannot have an mjsunit test. The test that fails is
test/mjsunit/string-replace-one-char.js on x64.debug.
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
264383006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 May 2014 11:25:21 +0000 (11:25 +0000)]
Turn off --logfile-per-isolate by default in d8.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
276333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 12 May 2014 10:39:08 +0000 (10:39 +0000)]
Fix %SetFlags("--stress-compaction")
BUG=369943
LOG=N
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
261253006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21260
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 12 May 2014 09:37:26 +0000 (09:37 +0000)]
Harden runtime functions (part 6).
Also blacklist LiveEdit-related functions from generated runtime tests.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
279593004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21259
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Mon, 12 May 2014 09:25:32 +0000 (09:25 +0000)]
ARM: update defaults for flags
R=bmeurer@chromium.org, ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
264593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21258
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 12 May 2014 09:18:45 +0000 (09:18 +0000)]
Partially revert r21254 due to WebKit test failure.
TBR=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
280523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21257
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Mon, 12 May 2014 08:49:51 +0000 (08:49 +0000)]
Harden %SetIsObserved with RUNTIME_ASSERTs
Now throws if its argument is already observed, or if the argument is
the global proxy.
BUG=371782
LOG=Y
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
274163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21256
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 12 May 2014 08:43:18 +0000 (08:43 +0000)]
Make escape analysis preserve all representations required by HCompareNumericAndBranch.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
257803012
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 12 May 2014 08:43:01 +0000 (08:43 +0000)]
Move more builtin files to strict mode.
R=rossberg@chromium.org
BUG=v8:1955
LOG=N
Review URL: https://codereview.chromium.org/
279543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 12 May 2014 07:49:11 +0000 (07:49 +0000)]
Reland r20974: Unify and simplify the FastCloneShallowArrayStub
- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.
R=mvstanton@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=21230
Review URL: https://codereview.chromium.org/
272513004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 May 2014 07:43:47 +0000 (07:43 +0000)]
Revert interrupt handling code changed in r21208.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
277233004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21252
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 12 May 2014 07:41:06 +0000 (07:41 +0000)]
Drop unused static microtask API
BUG=none
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
261413003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00