platform/upstream/v8.git
11 years agoAdd X87 implementations for Integer32ToDouble, DoubleToI, DoubleToSmi
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

11 years agoReplace OS::MemCopy with memcpy in typed array initialization.
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

11 years agoReland "Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them.".
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

11 years agoRevert "Use V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them."
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

11 years agoRemove access-check-failed callback after test.
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

11 years agoVisual Studio 2012 and later support the C++11 final keyword.
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

11 years agoConsistently use CompilationInfo::AbortOptimization.
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

11 years agoMove i18n break iterator C++ code to runtime
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

11 years agoAdd (mostly Chromium-compatible) V8_OS_* defines to v8.gyp.
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

11 years agoFix null handle deref in InternalDateFormat
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

11 years agoFix non-Xcode build on Mac with clang.
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

11 years agoAvoid -O3 in nacl as it does not play well with -W.
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

11 years agoDon't use Persistent in runtime
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

11 years agoDuring bootstrapping, the script's name is not necessarily set.
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

11 years agoUse V8_FINAL and V8_OVERRIDE in various places, fixing bugs revealed by them.
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

11 years agoAdd V8_FINAL and V8_OVERRIDE macros for C++11 final/override.
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

11 years agoRevert "Add FINAL and OVERRIDE macros for C++11 final/override."
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

11 years agoRevert "Promote ArrayBuffer, DataView and typed arrays to non-experimental."
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

11 years agoPromote ArrayBuffer, DataView and typed arrays to non-experimental.
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

11 years agoRemove platform-specific dead code for KeyedStores
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

11 years agoFix invalid out-of-bounds store in MacroAssembler::Allocate.
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

11 years agoMIPS: Remove wrong restriction in GenerateDeoptJumpTable.
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

11 years agoAdd FINAL and OVERRIDE macros for C++11 final/override.
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

11 years agoARM: Fix register misuse bug in Allocate().
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

11 years agoPrevent empty handle dereference in Runtime_InternalNumberFormat.
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

11 years agoImprove generalization / migration tracing.
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

11 years agoTemporary workaround for GC stress builder.
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

11 years agoClarify side effects of HTransitionElementsKind.
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

11 years agoPrepare push to trunk. Now working on version 3.21.1.
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

11 years agoDrop broken and unnecessary RequiredInputRepresentation() in HMathFloorOfDiv.
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

11 years agoHandlify Accessors::FunctionSetPrototype method.
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

11 years agoRemove check for empty handle for CodeGenerator::MakeCodeEpilogue.
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

11 years agoStore copied value rather than the original double.
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

11 years agoMark HStringCompareAndBranch as potentially causing GCs.
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

11 years agoRevert "make Intl non-enumerable"
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

11 years agoFix bug in test-code-stubs-x64 which meant not all registers were being checked.
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

11 years agoMIPS: Never hchange nan-hole to hole or hole to nan-hole. Only allow changing hole...
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

11 years agoPrepare push to trunk. Now working on version 3.21.0
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

11 years agoFix GC Mole warning
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

11 years agoFix src/version.cc number to be consistent with next trunk push
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

11 years agoFix no-sse2 part 2.
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

11 years agoFix Crankshafted CompareNil of constant values
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

11 years agoFix CmpHoleAndBranch on no-sse2
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

11 years agoRevert "Drop broken and unnecessary RequiredInputRepresentation() in HMathFloorOfDiv."
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

11 years agoDrop broken and unnecessary RequiredInputRepresentation() in HMathFloorOfDiv.
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

11 years agoupdates
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

11 years agoupdates
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

11 years agoAdd a bootstrap script to make it easier to build gcmole
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

11 years agoRevert "Make GlobalHandle::NodeBlock deletable"
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

11 years agoFix Math.round/floor that had bogus Smi representation
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

11 years agoLoad size in signed int before making negative.
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

11 years agoNever hchange nan-hole to hole or hole to nan-hole.
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

11 years agoMIPS: Store doubles before calling into the elements transition stub
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

11 years agoFix overflow check computation for Smi Phis
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

11 years agoFix overwriting order of object literal properties for MATERIALIZED_LITERALs
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

11 years agoPrepare push to trunk. Now working on version 3.20.17.
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

11 years agoUse Cell instead of PropertyCell in DoCheckFunction (in case of new space object).
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

11 years agoFix bug in HPhi::SimplifyConstantInput
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

11 years agoMake HToFastProperties GC safe.
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

11 years agoStore doubles before calling into the elements transition stub on ARM
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

11 years agoFix gcmole bugs in i18n code
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

11 years agoAlso add i18n directories to gcmole
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

11 years agoRun gcmole on i18n code.
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

11 years agoMark CheckMaps that can cause migration with ChangesNewSpacePromotion.
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

11 years agoIgnore flaky intl test.
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

11 years agoMIPS: Make assert more accurate
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

11 years agoia32: Calls to the TranscendentalCacheStub must ensure that esi is set to something...
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

11 years agoMIPS: Replace LoadNamedFieldPolymorphic with explicit branches.
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

11 years agoFix regressions triggered by map invalidation during graph creation.
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

11 years agoRemove test from deopt fuzzer skip list after bugfix.
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

11 years agoDo not materialize uninitialized const for debug evaluate.
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

11 years agoMake assert more accurate
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

11 years agoBreak typecheck dependency in escape analysis.
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

11 years agoIgnore an unsuitable test under deopt fuzz.
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

11 years agoReturn i18n object holders directly.
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

11 years agoMake all load-named-fields depend on their map-check, unless explicitly ignored.
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

11 years agoRevert "Promote ArrayBuffer, DataView and typed arrays to non-experimental."
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

11 years agoPromote ArrayBuffer, DataView and typed arrays to non-experimental.
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

11 years agoMake sure polymorphic element access creates non-replaying phis.
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

11 years agoAllow HPhis to have an invalid merge index.
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

11 years agoSet bailout reason to kCodeGenerationFailed only when it is not set yet
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

11 years agoReplace LoadNamedFieldPolymorphic with explicit branches.
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

11 years agoFix/unify root handling in code generation.
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

11 years agoDeoptimization is easier to diagnose when there is a text reason.
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

11 years agoReduce some code duplication
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

11 years agoReplace MathFloor/Round by HChange if the input representation does not match the...
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

11 years agoFix smi-based math floor.
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

11 years agoFix -Wconversion warnings in external V8 headers.
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

11 years agoMove i18n collator code to runtime.
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

11 years agoFix handle unsafety in Deoptimizer::MaterializeNextHeapObject.
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

11 years agoopenbsd: fix platform build
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

11 years agoAdd flag trap_on_stub_deopt. We want to be able to trap on hydrogen stub bailouts.
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

11 years agoInstance-type-related fixes and cleanup.
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

11 years agoDeprecate self and total time getters and total sample count getter on CpuProfileNode
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

11 years agoMIPS: Patch to enhance the source code line information for profiler.
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

11 years agoRevert "Deprecate self and total time getters and total sample count getter on CpuPro...
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

11 years agoDeprecate self and total time getters and total sample count getter on CpuProfileNode
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

11 years agoMIPS: Optimize DoCheckMaps.
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

11 years agoPatch to enhance the source code line information for profiler.
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

11 years agotweak of Math.abs in its x64 stub
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