mstarzinger@chromium.org [Fri, 23 Aug 2013 11:04:25 +0000 (11:04 +0000)]
Cleanup and speedup MarkCompactCollector test case.
R=bmeurer@chromium.org
TEST=cctest/test-mark-compact/MarkCompactCollector
Review URL: https://codereview.chromium.org/
23112026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16288
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 23 Aug 2013 10:59:29 +0000 (10:59 +0000)]
Fix crashes of some CPU profiler tests on Windows after r16284
All the tests that started crashing create ProfilerEventsProcessor on the stack. After r16284 SamplingCircularQueue buffer is allocated as a field of the queue instead of separate heap object. This increased self size of ProfilerEventsProcessor by about 1Mb. Windows malloc fails to allocate such an object on the stack and crashes.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23093022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16287
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 23 Aug 2013 09:25:37 +0000 (09:25 +0000)]
Fix scoping of function declarations in eval inside non-trivial local scope
R=mstarzinger@chromium.org
BUG=v8:2594
Review URL: https://codereview.chromium.org/
22901010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16286
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 23 Aug 2013 08:43:57 +0000 (08:43 +0000)]
Fix compilation on Windows after r16284
BUG=None
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23361023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16285
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 23 Aug 2013 08:22:07 +0000 (08:22 +0000)]
Rewrite SamplingCircularQueue
The new implementation:
* uses MemoryBarriers to make sure up-to-date data is accessed on both producer and consumer threads
* will not allow to overwrite records
* doesn't have notion of chunks, instead each entry is aligned on the cache line boundaries
BUG=v8:2814
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
22849002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16284
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 23 Aug 2013 08:17:54 +0000 (08:17 +0000)]
grokdump: fix Oddball printing
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
22852021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16283
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 23 Aug 2013 08:11:12 +0000 (08:11 +0000)]
Clean up the redundant Int32Constant check which is covered by double case
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22815032
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16282
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 23 Aug 2013 07:32:25 +0000 (07:32 +0000)]
Move OS/compiler/feature detection to public v8config.h header.
From now on the v8config.h header should be the one and
only file where we do (freaky) checks to detect OS, C++
compiler or certain compiler features. Since we need that
both internally and for the public API, the new v8config.h
is the proper place to add (everything is prefixed with V8_
so we are safe).
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23248006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16281
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 22 Aug 2013 16:14:37 +0000 (16:14 +0000)]
Rename "parallel recompilation" to "concurrent recompilation".
Also introduced macros for flag aliases for temporary backwards compatibility.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
23014007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16280
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 22 Aug 2013 14:22:55 +0000 (14:22 +0000)]
Make HConstant::InstanceOf less ambiguous.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
23203002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16279
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 22 Aug 2013 13:51:32 +0000 (13:51 +0000)]
Fix hidden properties on object with frozen prototype.
This fixes a corner-case where a frozen prototype with existing hidden
properties might prevent setting hidden properties on another object.
R=rossberg@chromium.org
BUG=v8:2829
Review URL: https://codereview.chromium.org/
22799021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16276
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 22 Aug 2013 13:43:06 +0000 (13:43 +0000)]
Remove special case code for generalizing constants to fields.
R=bmeurer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22911018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16275
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 22 Aug 2013 13:21:53 +0000 (13:21 +0000)]
Remove dead methods related to InformativeDefinitions.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
22914029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16274
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 22 Aug 2013 13:03:40 +0000 (13:03 +0000)]
Fix deoptimization bug, where recursive call can frighten and confuse the unwitting, simple, poor caveman that is Runtime_NotifyDeoptimized.
BUG=274164
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23201016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16273
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 22 Aug 2013 12:26:30 +0000 (12:26 +0000)]
Prepare push to trunk. Now working on version 3.21.3.
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
22801011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16270
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 22 Aug 2013 12:16:00 +0000 (12:16 +0000)]
Never clear debug-stub call ICs. Make a clear distinction between is_debug_stub
used everywhere but the debugger, and IsDebugBreak, used by the debugger.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23361014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16269
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 22 Aug 2013 11:58:20 +0000 (11:58 +0000)]
Drop unused rdtsc instruction.
We do not use rdtsc anywhere and we won't ever use that in the
future, as it is totally unusable with multicore and out of
order execution.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23112016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16268
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 22 Aug 2013 09:09:39 +0000 (09:09 +0000)]
Revert "Add (mostly Chromium-compatible) V8_OS_* defines to v8.gyp."
This reverts commit r16238 for not being able to use the defines
outside of libv8 (i.e. in tests). Will reland the #define's in a
build config header style.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22861022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16267
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 22 Aug 2013 06:44:34 +0000 (06:44 +0000)]
Cleaned up nil comparisons in Hydrogen.
This consists basically of 2 parts:
* Restructured BuildCompareNil to make the logic behind it clearer.
Note that it is intentionally written in a quite stylized way.
* Replaced a usesless IfBuilder by a plain HInstruction, removing
some empty blocks.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
22305004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16266
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 21 Aug 2013 18:31:13 +0000 (18:31 +0000)]
Fix migration checks and extend them to the Scavenger.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
23060018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 21 Aug 2013 15:31:03 +0000 (15:31 +0000)]
Fix "Hole" leak in TryBuildConsolidatedElementLoad
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
23361007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 21 Aug 2013 15:17:23 +0000 (15:17 +0000)]
Allow both "--no<flag>" and "--no-<flag>" to disable <flag>.
We shouldn't need to know whether to use --no or --no- as prefix.
The latter is more intuitive and also what chromium uses.
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
22851009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 21 Aug 2013 14:49:56 +0000 (14:49 +0000)]
Pass checked values to HLoadNamedField, removing the need for extra type-check field.
R=titzer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22831003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16260
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 21 Aug 2013 13:39:20 +0000 (13:39 +0000)]
Cleanup FooSpace::VerifyObject and ElementsAccessor::Validate.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
23273004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16259
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 21 Aug 2013 11:16:05 +0000 (11:16 +0000)]
Prepare push to trunk. Now working on version 3.21.2.
R=hpayer@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
23242009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16256
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 21 Aug 2013 10:49:29 +0000 (10:49 +0000)]
Adding missing operator!= for Handle and Persistent.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22932004
Patch from Marja Hölttä <marja@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 21 Aug 2013 10:43:50 +0000 (10:43 +0000)]
Improve detection of C++11 features.
Also improve detection of V8_INFINITY while we're at it.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23323003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 21 Aug 2013 08:28:59 +0000 (08:28 +0000)]
Use CheckUsesForFlag to check flag in uses list
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
22862009
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 20 Aug 2013 22:10:20 +0000 (22:10 +0000)]
MIPS: Fix bug that prevents JALR to JAL optimizations.
TEST=
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
23072023
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16252
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 20 Aug 2013 18:07:22 +0000 (18:07 +0000)]
MIPS: Remove platform-specific dead code for KeyedStores
Port r16227 (
02df4098)
BUG=
Review URL: https://codereview.chromium.org/
22815014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 20 Aug 2013 13:57:01 +0000 (13:57 +0000)]
Fix a bug in Div when all uses are truncating
Refine the related test cases to cover truncating cases
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22964004
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16249
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 13:55:52 +0000 (13:55 +0000)]
Promote ArrayBuffer, DataView and typed arrays to non-experimental.
The primary reason for this change is to bake these guys into the
snapshot.
Flag definitions (--harmony-typed-arrays, --harmony-array-buffer) are
still there so that Blink does not complain, but they are noop and
default to true.
R=mstarzinger@chromium.org
BUG=270527
Committed: https://code.google.com/p/v8/source/detail?r=16137
Committed: https://code.google.com/p/v8/source/detail?r=16228
Review URL: https://codereview.chromium.org/
22390008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16248
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 20 Aug 2013 13:20:40 +0000 (13:20 +0000)]
Add warning to cctest when running multiple tests in sequence.
R=mstarzinger@chromium.org
BUG=v8:2848
Review URL: https://codereview.chromium.org/
23067008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16247
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Tue, 20 Aug 2013 13:01:54 +0000 (13:01 +0000)]
Add X87 implementations for Integer32ToDouble, DoubleToI, DoubleToSmi
Additionally refactor the X87Stack tracking
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
20781007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16246
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 11:14:56 +0000 (11:14 +0000)]
Replace OS::MemCopy with memcpy in typed array initialization.
This is an attempt to fix a weird perf regression on MacOS X 10.6 bot.
Perf regression is not reproducible on MacOS X 10.8.
This difference in memory-copying routines is the only reasonable
difference in the algorithm. We should try and see.
R=bmeurer@chromium.org
BUG=270642
Review URL: https://codereview.chromium.org/
23330005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16245
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 11:10:24 +0000 (11:10 +0000)]
Reland "Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them.".
- Use V8_FINAL and V8_OVERRIDE in Ast classes.
- Use V8_FINAL and V8_OVERRIDE in Lithium mips backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium arm backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium x64 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium ia32 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium classes.
- Use V8_FINAL and V8_OVERRIDE in Hydrogen classes.
TBR=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
22796020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16244
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 10:52:23 +0000 (10:52 +0000)]
Revert "Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them."
This reverts commit r16232 for breaking the
tools/gen-postmortem-metadata.py script. Will reland without the
objects.{cc,h} changes.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23143007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16243
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 20 Aug 2013 10:46:02 +0000 (10:46 +0000)]
Remove access-check-failed callback after test.
BUG=v8:2848
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
22802013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16242
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 09:37:21 +0000 (09:37 +0000)]
Visual Studio 2012 and later support the C++11 final keyword.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23128007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16241
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 20 Aug 2013 08:53:34 +0000 (08:53 +0000)]
Consistently use CompilationInfo::AbortOptimization.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
22832002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16240
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:46:36 +0000 (08:46 +0000)]
Move i18n break iterator C++ code to runtime
BUG=v8:2745
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22764007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16239
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 08:29:21 +0000 (08:29 +0000)]
Add (mostly Chromium-compatible) V8_OS_* defines to v8.gyp.
R=jkummerow@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23283010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16238
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:17:43 +0000 (08:17 +0000)]
Fix null handle deref in InternalDateFormat
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22927014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 08:14:19 +0000 (08:14 +0000)]
Fix non-Xcode build on Mac with clang.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22793008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16236
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 20 Aug 2013 08:12:19 +0000 (08:12 +0000)]
Avoid -O3 in nacl as it does not play well with -W.
Also cleans up some uninitialized data I saw while investigating
the problem.
R=jkummerow@chromium.org, machenbach@chromium.org
Review URL: https://codereview.chromium.org/
23119004
Patch from Ken Mixter <kmixter@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16235
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:07:52 +0000 (08:07 +0000)]
Don't use Persistent in runtime
R=dcarney@chromium.org, mstarzinger@chromium.org
BUG=none
Review URL: https://codereview.chromium.org/
22432009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16234
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 20 Aug 2013 08:06:48 +0000 (08:06 +0000)]
During bootstrapping, the script's name is not necessarily set.
So check whether the name is actually set before printing it when
throwing an exception.
BUG=none
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23283011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16233
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 07:27:06 +0000 (07:27 +0000)]
Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them.
- Use V8_FINAL and V8_OVERRIDE in objects.
- Use V8_FINAL and V8_OVERRIDE in Ast classes.
- Use V8_FINAL and V8_OVERRIDE in Lithium mips backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium arm backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium x64 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium ia32 backend.
- Use V8_FINAL and V8_OVERRIDE in Lithium classes.
- Use V8_FINAL and V8_OVERRIDE in Hydrogen classes.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
23064017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 06:51:58 +0000 (06:51 +0000)]
Add V8_FINAL and V8_OVERRIDE macros for C++11 final/override.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22914019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 20 Aug 2013 06:39:04 +0000 (06:39 +0000)]
Revert "Add FINAL and OVERRIDE macros for C++11 final/override."
This reverts commit r16222 for not using V8_ prefix.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23301006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16230
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 01:37:09 +0000 (01:37 +0000)]
Revert "Promote ArrayBuffer, DataView and typed arrays to non-experimental."
This reverts commit r16137 for breaking Windows build.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22985011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 20 Aug 2013 00:48:25 +0000 (00:48 +0000)]
Promote ArrayBuffer, DataView and typed arrays to non-experimental.
The primary reason for this change is to bake these guys into the
snapshot.
Flag definitions (--harmony-typed-arrays, --harmony-array-buffer) are
still there so that Blink does not complain, but they are noop and
default to true.
R=mstarzinger@chromium.org
BUG=270527
Committed: https://code.google.com/p/v8/source/detail?r=16137
Review URL: https://codereview.chromium.org/
22390008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 19 Aug 2013 22:12:46 +0000 (22:12 +0000)]
Remove platform-specific dead code for KeyedStores
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22745003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16227
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 19 Aug 2013 17:46:43 +0000 (17:46 +0000)]
Fix invalid out-of-bounds store in MacroAssembler::Allocate.
This fixes an out-of-bounds store in inlined allocations when double
alignment and pretenuring into old-data-space have been requested.
R=hpayer@chromium.org, jkummerow@chromium.org, plind44@gmail.com
BUG=chromium:263515
Review URL: https://codereview.chromium.org/
23242006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16224
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 19 Aug 2013 16:02:50 +0000 (16:02 +0000)]
MIPS: Remove wrong restriction in GenerateDeoptJumpTable.
* This Abort condition does not apply to MIPS, since the
assembler can also emit long Branches automatically, when
it is needed.
TEST=mjsunit/math-floor-of-div,benchmarks/octane/gbemu,benchmarks/octane/mandreel
BUG=
Review URL: https://codereview.chromium.org/
23020018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16223
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 19 Aug 2013 14:46:35 +0000 (14:46 +0000)]
Add FINAL and OVERRIDE macros for C++11 final/override.
We also use new the constant naming scheme for Yield::Kind values to avoid
clash with the FINAL macro.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23098004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16222
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 19 Aug 2013 13:37:57 +0000 (13:37 +0000)]
ARM: Fix register misuse bug in Allocate().
The bug is triggered if flags contains DOUBLE_ALIGNMENT and the
object_size is not an ARM immediate value. In this case, the code
for DOUBLE_ALIGNMENT uses the scratch2 register, which is aliased
to obj_size_reg containing the object_size.
Instead of pre-loading the object_size, which is difficult since
we are out of registers here, we simply generate a non-empty
sequence of add instructions for the addition of the constant
object_size (carefully handling possible overflow in each step).
Also turn static ASSERT into STATIC_ASSERT in Allocate().
BUG=v8:2851
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
23323002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16221
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 19 Aug 2013 13:03:58 +0000 (13:03 +0000)]
Prevent empty handle dereference in Runtime_InternalNumberFormat.
R=jochen@chromium.org
BUG=chromium:275467
Review URL: https://codereview.chromium.org/
22859025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16220
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 19 Aug 2013 12:32:50 +0000 (12:32 +0000)]
Improve generalization / migration tracing.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23047002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16219
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 19 Aug 2013 11:10:08 +0000 (11:10 +0000)]
Temporary workaround for GC stress builder.
R=hpayer@chromium.org, hpayer@google.com
TEST=cctest/test-debug/ScriptCollectedEventContext --gc-interval=500
Review URL: https://codereview.chromium.org/
22987004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16216
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 19 Aug 2013 10:55:51 +0000 (10:55 +0000)]
Clarify side effects of HTransitionElementsKind.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
22796011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16215
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 19 Aug 2013 09:34:18 +0000 (09:34 +0000)]
Prepare push to trunk. Now working on version 3.21.1.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
22856005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16212
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 19 Aug 2013 07:25:25 +0000 (07:25 +0000)]
Drop broken and unnecessary RequiredInputRepresentation() in HMathFloorOfDiv.
R=titzer@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=16190
Review URL: https://codereview.chromium.org/
23190002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16211
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 16 Aug 2013 21:27:11 +0000 (21:27 +0000)]
Handlify Accessors::FunctionSetPrototype method.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
23280004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16210
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 16 Aug 2013 19:52:29 +0000 (19:52 +0000)]
Remove check for empty handle for CodeGenerator::MakeCodeEpilogue.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
22840002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16209
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 16 Aug 2013 15:43:42 +0000 (15:43 +0000)]
Store copied value rather than the original double.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23262002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16208
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 16 Aug 2013 15:10:07 +0000 (15:10 +0000)]
Mark HStringCompareAndBranch as potentially causing GCs.
This also adds a %SetAllocationTimout runtime function which helps to
write regression tests that need to trigger a GC at a certain point in
program execution.
R=hpayer@chromium.org
BUG=chromium:274438
TEST=mjsunit/regress/regress-crbug-274438
Review URL: https://codereview.chromium.org/
22933006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16205
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 16 Aug 2013 14:10:08 +0000 (14:10 +0000)]
Revert "make Intl non-enumerable"
This reverts commit
327355efe28995f5d91aadb54c71ea1d292c8428.
TBR=svenpanne@chromium.org,dcarney@chromium.org
Review URL: https://codereview.chromium.org/
22893026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16204
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 16 Aug 2013 11:29:54 +0000 (11:29 +0000)]
Fix bug in test-code-stubs-x64 which meant not all registers were being checked.
Also change test-code-stubs-ia32 to use the same style as x64.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
22865006
Patch from Ross McIlroy <mcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16203
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 14 Aug 2013 23:07:48 +0000 (23:07 +0000)]
MIPS: Never hchange nan-hole to hole or hole to nan-hole. Only allow changing hole to nan if all uses allow undefined as nan.
Port r16183 (
1858bc57)
BUG=
Review URL: https://codereview.chromium.org/
23130006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 14 Aug 2013 17:10:14 +0000 (17:10 +0000)]
Prepare push to trunk. Now working on version 3.21.0
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22870007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16197
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 14 Aug 2013 17:03:19 +0000 (17:03 +0000)]
Fix GC Mole warning
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22815005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16196
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 14 Aug 2013 17:00:16 +0000 (17:00 +0000)]
Fix src/version.cc number to be consistent with next trunk push
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
23000010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16195
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 14 Aug 2013 16:58:14 +0000 (16:58 +0000)]
Fix no-sse2 part 2.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23154004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 14 Aug 2013 16:13:58 +0000 (16:13 +0000)]
Fix Crankshafted CompareNil of constant values
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23198002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 14 Aug 2013 15:50:23 +0000 (15:50 +0000)]
Fix CmpHoleAndBranch on no-sse2
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22810005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16192
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 14 Aug 2013 14:50:15 +0000 (14:50 +0000)]
Revert "Drop broken and unnecessary RequiredInputRepresentation() in HMathFloorOfDiv."
This reverts r16190.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
23188003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16191
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 14 Aug 2013 14:34:40 +0000 (14:34 +0000)]
Drop broken and unnecessary RequiredInputRepresentation() in HMathFloorOfDiv.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
23190002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 14 Aug 2013 12:53:09 +0000 (12:53 +0000)]
updates
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16189
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 14 Aug 2013 12:53:01 +0000 (12:53 +0000)]
updates
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 14 Aug 2013 12:52:51 +0000 (12:52 +0000)]
Add a bootstrap script to make it easier to build gcmole
R=machenbach@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 14 Aug 2013 12:40:44 +0000 (12:40 +0000)]
Revert "Make GlobalHandle::NodeBlock deletable"
This reverts r16040 due to OOM crashes.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
22970004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16186
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 14 Aug 2013 12:14:08 +0000 (12:14 +0000)]
Fix Math.round/floor that had bogus Smi representation
BUG=chromium:272564
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
23022005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16185
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 14 Aug 2013 09:47:27 +0000 (09:47 +0000)]
Load size in signed int before making negative.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
23074003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16184
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 14 Aug 2013 08:54:27 +0000 (08:54 +0000)]
Never hchange nan-hole to hole or hole to nan-hole.
Only allow changing hole to nan if all uses allow undefined as nan.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22152003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16183
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 13 Aug 2013 23:34:34 +0000 (23:34 +0000)]
MIPS: Store doubles before calling into the elements transition stub
Port r16172 (
cc2b6204)
BUG=
Review URL: https://codereview.chromium.org/
23110002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16182
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 13 Aug 2013 18:18:24 +0000 (18:18 +0000)]
Fix overflow check computation for Smi Phis
BUG=v8:2836
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
22629011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16180
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 13 Aug 2013 17:27:58 +0000 (17:27 +0000)]
Fix overwriting order of object literal properties for MATERIALIZED_LITERALs
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22982005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16179
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 13 Aug 2013 17:08:20 +0000 (17:08 +0000)]
Prepare push to trunk. Now working on version 3.20.17.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
23073003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16176
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 13 Aug 2013 16:58:14 +0000 (16:58 +0000)]
Use Cell instead of PropertyCell in DoCheckFunction (in case of new space object).
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
23036004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16175
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 13 Aug 2013 16:47:27 +0000 (16:47 +0000)]
Fix bug in HPhi::SimplifyConstantInput
R=jkummerow@chromium.org
BUG=269679
Review URL: https://codereview.chromium.org/
23075003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16174
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 13 Aug 2013 16:26:53 +0000 (16:26 +0000)]
Make HToFastProperties GC safe.
The runtime call can cause a GC, so the instruction must have proper flags set.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22980003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16173
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 13 Aug 2013 15:06:17 +0000 (15:06 +0000)]
Store doubles before calling into the elements transition stub on ARM
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22854011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 13 Aug 2013 12:24:44 +0000 (12:24 +0000)]
Fix gcmole bugs in i18n code
R=mstarzinger@chromium.org,dcarney@chromium.org
BUG=v8:2745
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 13 Aug 2013 12:22:56 +0000 (12:22 +0000)]
Also add i18n directories to gcmole
R=vegorov@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16170
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 13 Aug 2013 11:05:30 +0000 (11:05 +0000)]
Run gcmole on i18n code.
BUG=none
R=vegorov@chromium.org, vegorov@google.com
Review URL: https://codereview.chromium.org/
23011004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16167
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 13 Aug 2013 09:38:46 +0000 (09:38 +0000)]
Mark CheckMaps that can cause migration with ChangesNewSpacePromotion.
BUG=
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22982003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16166
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 13 Aug 2013 08:30:06 +0000 (08:30 +0000)]
Ignore flaky intl test.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22853004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16165
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 13 Aug 2013 00:45:24 +0000 (00:45 +0000)]
MIPS: Make assert more accurate
Port r16147 (
1ced433a)
BUG=
Review URL: https://codereview.chromium.org/
22956002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16164
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 12 Aug 2013 16:54:12 +0000 (16:54 +0000)]
ia32: Calls to the TranscendentalCacheStub must ensure that esi is set to something safe.
BUG=v8:2827
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
22863002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16154
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00