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
palfia@homejinni.com [Mon, 12 Aug 2013 15:02:57 +0000 (15:02 +0000)]
MIPS: Replace LoadNamedFieldPolymorphic with explicit branches.
Port r16133 (
dce32514)
BUG=
Review URL: https://codereview.chromium.org/
22255005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16151
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 Aug 2013 14:10:25 +0000 (14:10 +0000)]
Fix regressions triggered by map invalidation during graph creation.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22807003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16150
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 12 Aug 2013 13:55:54 +0000 (13:55 +0000)]
Remove test from deopt fuzzer skip list after bugfix.
BUG=v8:2815
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22806002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16149
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 12 Aug 2013 13:35:46 +0000 (13:35 +0000)]
Do not materialize uninitialized const for debug evaluate.
R=prybin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
22822002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16148
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 12 Aug 2013 09:34:55 +0000 (09:34 +0000)]
Make assert more accurate
BUG=
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22623008
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16147
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 12 Aug 2013 09:26:18 +0000 (09:26 +0000)]
Break typecheck dependency in escape analysis.
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22803002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16146
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 12 Aug 2013 08:59:42 +0000 (08:59 +0000)]
Ignore an unsuitable test under deopt fuzz.
That test relies on certain optimization/deoptimization points and is therefore not useful for the deopt fuzzer.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22475011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16145
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 12 Aug 2013 08:19:06 +0000 (08:19 +0000)]
Return i18n object holders directly.
BUG=none
R=dcarney@chromium.org,mstarzinger@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16144
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 9 Aug 2013 18:40:10 +0000 (18:40 +0000)]
Make all load-named-fields depend on their map-check, unless explicitly ignored.
BUG=
R=titzer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22555004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16139
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 9 Aug 2013 16:23:00 +0000 (16:23 +0000)]
Revert "Promote ArrayBuffer, DataView and typed arrays to non-experimental."
This reverts commit r16137 for breaking tests on Windows.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22710007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16138
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 9 Aug 2013 15:57:31 +0000 (15:57 +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
Review URL: https://codereview.chromium.org/
22390008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16137
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 9 Aug 2013 15:23:15 +0000 (15:23 +0000)]
Make sure polymorphic element access creates non-replaying phis.
R=danno@chromium.org
BUG=v8:2815
Review URL: https://codereview.chromium.org/
22589005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16136
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 9 Aug 2013 15:18:23 +0000 (15:18 +0000)]
Allow HPhis to have an invalid merge index.
All phis that do not represent local variables or values on the operand
stack are not allowed to carry a merge index, as the replay of the
HEnvironment during LChunkBuilder time might get out of sync due to
colliding indexes.
R=danno@chromium.org
BUG=v8:2815
Review URL: https://codereview.chromium.org/
22494003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16135
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 9 Aug 2013 15:10:06 +0000 (15:10 +0000)]
Set bailout reason to kCodeGenerationFailed only when it is not set yet
BUG=None
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22404007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16134
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 9 Aug 2013 14:04:47 +0000 (14:04 +0000)]
Replace LoadNamedFieldPolymorphic with explicit branches.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22213002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16133
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 9 Aug 2013 13:43:46 +0000 (13:43 +0000)]
Fix/unify root handling in code generation.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
22670004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16132
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 9 Aug 2013 12:50:42 +0000 (12:50 +0000)]
Deoptimization is easier to diagnose when there is a text reason.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
22339018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16131
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 9 Aug 2013 12:33:06 +0000 (12:33 +0000)]
Reduce some code duplication
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22732006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16130
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 9 Aug 2013 12:03:40 +0000 (12:03 +0000)]
Replace MathFloor/Round by HChange if the input representation does not match the output representation
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22398009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16129
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 9 Aug 2013 11:21:03 +0000 (11:21 +0000)]
Fix smi-based math floor.
BUG=chromium:270268
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
22623007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16128
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 9 Aug 2013 10:33:08 +0000 (10:33 +0000)]
Fix -Wconversion warnings in external V8 headers.
BUG=v8:2830
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22549003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16127
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 9 Aug 2013 09:51:09 +0000 (09:51 +0000)]
Move i18n collator code to runtime.
BUG=v8:2745
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22671002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16126
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 9 Aug 2013 09:49:15 +0000 (09:49 +0000)]
Fix handle unsafety in Deoptimizer::MaterializeNextHeapObject.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
22327008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16125
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 9 Aug 2013 09:07:46 +0000 (09:07 +0000)]
openbsd: fix platform build
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
21705003
Patch from Ben Noordhuis <info@bnoordhuis.nl>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16122
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 9 Aug 2013 08:24:29 +0000 (08:24 +0000)]
Add flag trap_on_stub_deopt. We want to be able to trap on hydrogen stub bailouts.
BUG=
R=svenpanne@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/
22593003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16121
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 9 Aug 2013 08:22:46 +0000 (08:22 +0000)]
Instance-type-related fixes and cleanup.
Things got quite a bit out of sync (don't we all love copy-n-paste?):
* TypeToString didn't handle SLICED_STRING_TYPE,
SLICED_ASCII_STRING_TYPE, FIXED_DOUBLE_ARRAY_TYPE,
JS_FUNCTION_PROXY_TYPE and JS_DATE_TYPE.
* INSTANCE_TYPE_LIST was missing entries for
SLICED_ASCII_STRING_TYPE, JS_SET_TYPE, and JS_MAP_TYPE.
To improve this maintenance nightmare a little bit, the missing
instance types were added to the INSTANCE_TYPE_LIST macro and this
list is now used via our beloved 2nd order macro technique in
TypeToString. As a side-effect, the strings returned by TypeToString
have a "_TYPE" suffix now, but this doesn't really matter and is a
small price to pay for consistency.
Removed INVALID_TYPE on the way, it had no real use.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
22681004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16120
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 9 Aug 2013 07:38:26 +0000 (07:38 +0000)]
Deprecate self and total time getters and total sample count getter on CpuProfileNode
All of these values are derived from the self samples count and there is no need to evaluate them in v8 when clients can do that when needed on their side.
Also added unsigned GetHitCount() which should be used instead of double GetSelfSamplesCount(). I'm going to deprecate the latter one once Blink has switched to GetHitCount.
BUG=267595
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22710006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16119
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 8 Aug 2013 18:36:25 +0000 (18:36 +0000)]
MIPS: Patch to enhance the source code line information for profiler.
Port r16114 (
2d1bf399)
Original commit message:
This patch is to enhance the source code line information for profiler.
For the Hydrogen compilation, most of the source code line information
is not copied from the HInstruction the to corresponding LInstruction.
This patch defines one PositionBits field for LInstruction and copies the
sorce code position value from the HInstruction.
When Generating the native code, we use RecordPosition(..) function to
write LInstruction's position value to position recorder.
BUG=
Review URL: https://codereview.chromium.org/
22502006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16118
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 8 Aug 2013 14:43:44 +0000 (14:43 +0000)]
Revert "Deprecate self and total time getters and total sample count getter on CpuProfileNode"
This reverts commit r16116 due to WebKit compilation breakage. Will reland it once Blink r155755 is rolled into Chromium.
TBR=svenpanne@chromium.org
BUG=None
Review URL: https://codereview.chromium.org/
22388003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16117
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 8 Aug 2013 13:39:57 +0000 (13:39 +0000)]
Deprecate self and total time getters and total sample count getter on CpuProfileNode
All of these values are derived from the self samples count and there is no need to evaluate them in v8 when clients can do that when needed on their side.
Also added unsigned GetHitCount() which should be used instead of double GetSelfSamplesCount(). I'm going to deprecate the latter one once Blink has switched to GetHitCount.
BUG=267595
R=loislo@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
22347003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16116
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Thu, 8 Aug 2013 05:04:42 +0000 (05:04 +0000)]
MIPS: Optimize DoCheckMaps.
This simple change moves the Deoptimize call into the Deopt table
where it belongs, and shortens the inline map-check.
Gives a surprisingly large performance gain, around 4% on Octane.
BUG=
R=gergely@homejinni.com
Review URL: https://codereview.chromium.org/
22391008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16115
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 8 Aug 2013 02:16:12 +0000 (02:16 +0000)]
Patch to enhance the source code line information for profiler.
This patch is to enhance the source code line information for profiler.
For the Hydrogen compilation, most of the source code line information
is not copied from the HInstruction the to corresponding LInstruction.
This patch defines one PositionBits field for LInstruction and copies the
sorce code position value from the HInstruction.
When Generating the native code, we use RecordPosition(..) function to
write LInstruction's position value to position recorder.
For the MIPS platform, I did not touch because I have no devices
to verify the modification on it.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
21042003
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16114
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 8 Aug 2013 01:29:33 +0000 (01:29 +0000)]
tweak of Math.abs in its x64 stub
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
22285003
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16113
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00