platform/upstream/v8.git
11 years agoA little code refactoring on VirtualMemory::Commit for platform-win32
svenpanne@chromium.org [Mon, 15 Apr 2013 10:40:25 +0000 (10:40 +0000)]
A little code refactoring on VirtualMemory::Commit for platform-win32

Review URL: https://codereview.chromium.org/14244006

Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoActually implement the sqrt intrinsic in Crankshaft
svenpanne@chromium.org [Mon, 15 Apr 2013 10:36:12 +0000 (10:36 +0000)]
Actually implement the sqrt intrinsic in Crankshaft

Review URL: https://codereview.chromium.org/13844009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoHomogenizes map checks for all polymorphic named field loads.
dslomov@chromium.org [Mon, 15 Apr 2013 09:05:50 +0000 (09:05 +0000)]
Homogenizes map checks for all polymorphic named field loads.
Tests show no perf regressions

BUG=

Review URL: https://codereview.chromium.org/14224009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMinGW: Add Cygwin-free Makefile generation script
jkummerow@chromium.org [Mon, 15 Apr 2013 08:43:18 +0000 (08:43 +0000)]
MinGW: Add Cygwin-free Makefile generation script

Review URL: https://codereview.chromium.org/14046009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14258 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMake gyp work with MingW32
jkummerow@chromium.org [Mon, 15 Apr 2013 08:33:31 +0000 (08:33 +0000)]
Make gyp work with MingW32

Review URL: https://codereview.chromium.org/13468015
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14257 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Enable pretenuring of fast literals in high promotion mode.
palfia@homejinni.com [Fri, 12 Apr 2013 17:06:23 +0000 (17:06 +0000)]
MIPS: Enable pretenuring of fast literals in high promotion mode.

Port r14248 (144e215a)

BUG=

Review URL: https://codereview.chromium.org/13903005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14256 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSwitch generator builtins into strict mode.
mstarzinger@chromium.org [Fri, 12 Apr 2013 15:52:44 +0000 (15:52 +0000)]
Switch generator builtins into strict mode.

R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/13985011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14255 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoARM: Small copy optimization. Copying 64bits at a time.
rodolph.perfetta@gmail.com [Fri, 12 Apr 2013 14:46:43 +0000 (14:46 +0000)]
ARM: Small copy optimization. Copying 64bits at a time.

BUG=none
TEST=none

Review URL: https://chromiumcodereview.appspot.com/14121006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoIntel VTune integration for V8/d8
danno@chromium.org [Fri, 12 Apr 2013 12:48:27 +0000 (12:48 +0000)]
Intel VTune integration for V8/d8

In this patch, we added the JIT code event handler for Vtune. Most of the code is in the
folder src/third_party/vtune. Two APIs are added in include/v8.h to get the requirement info
from V8.

We add the v8_enable_vtunejit parameter for GYP to enable these Vtune code compilation.
vTune::InitilizeVtuneForV8() is invoked in the embedder of V8 to make sure it's invokded if
vtune support is enabled.

Review URL: https://codereview.chromium.org/11574031
Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove code that analyzes tos values from tickprocessor
yurys@chromium.org [Fri, 12 Apr 2013 11:20:22 +0000 (11:20 +0000)]
Remove code that analyzes tos values from tickprocessor

Assuming that the value on top of stack is return address for a frameless invocation is error-prone. Corresponding logic was removed from profile-generator.cc in r14205 (see https://code.google.com/p/v8/source/diff?spec=svn14205&r=14205&format=side&path=/branches/bleeding_edge/src/profile-generator.cc) and now it is time to remove it from the tick processor.

Since the tos is not used anymore by profiler it is also removed from TickSample.

BUG=None

Review URL: https://codereview.chromium.org/13873009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoTurn off pre-tenuring of fast literals when we turn off high promotion mode.
hpayer@chromium.org [Fri, 12 Apr 2013 11:14:48 +0000 (11:14 +0000)]
Turn off pre-tenuring of fast literals when we turn off high promotion mode.

BUG=

Review URL: https://codereview.chromium.org/14199003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14251 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUnified the structure of VirtualMemory implementations across platforms a bit.
svenpanne@chromium.org [Fri, 12 Apr 2013 11:10:19 +0000 (11:10 +0000)]
Unified the structure of VirtualMemory implementations across platforms a bit.

This is just shuffling some code around to make comparing the platform files easier.

Made cygwin/nullos support a bit more complete on the way.

Review URL: https://codereview.chromium.org/14162004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdd tests for GlobalHandles::IterateObjectGroups.
mstarzinger@chromium.org [Fri, 12 Apr 2013 09:54:51 +0000 (09:54 +0000)]
Add tests for GlobalHandles::IterateObjectGroups.

BUG=none
TEST=cctest/test-global-handles

Review URL: https://codereview.chromium.org/13952005

Patch from Marja Hölttä <marja@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoEnable pretenuring of fast literals in high promotion mode.
hpayer@chromium.org [Fri, 12 Apr 2013 09:45:46 +0000 (09:45 +0000)]
Enable pretenuring of fast literals in high promotion mode.

BUG=

Review URL: https://codereview.chromium.org/13952008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14248 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix preparser build with snapshot=off
jkummerow@chromium.org [Fri, 12 Apr 2013 09:44:08 +0000 (09:44 +0000)]
Fix preparser build with snapshot=off

Review URL: https://codereview.chromium.org/14159006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14247 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove unnecessary BailoutIds.
hpayer@chromium.org [Fri, 12 Apr 2013 09:36:56 +0000 (09:36 +0000)]
Remove unnecessary BailoutIds.

BUG=

Review URL: https://codereview.chromium.org/14222007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14246 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Fix register usage in commit r14239.
palfia@homejinni.com [Fri, 12 Apr 2013 09:25:04 +0000 (09:25 +0000)]
MIPS: Fix register usage in commit r14239.

BUG=

Review URL: https://codereview.chromium.org/14046006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14245 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove preparser library; link preparser executable against full V8
jkummerow@chromium.org [Fri, 12 Apr 2013 09:05:49 +0000 (09:05 +0000)]
Remove preparser library; link preparser executable against full V8

Review URL: https://codereview.chromium.org/13880018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSupport full deoptimization during GC via stack guard.
mstarzinger@chromium.org [Fri, 12 Apr 2013 08:58:22 +0000 (08:58 +0000)]
Support full deoptimization during GC via stack guard.

This adds support to the stack guard to trigger a full deoptimization of
all optimized code when the GC kicks into high promotion mode. Global
pretenuring decisions in optimized code can then be based on the high
promotion mode.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/14173007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix detection of indexed properties in Object.defineProperty()
mstarzinger@chromium.org [Fri, 12 Apr 2013 08:45:14 +0000 (08:45 +0000)]
Fix detection of indexed properties in Object.defineProperty()

When defining an indexed property on an Array object, the object's
length property should (perhaps) be updated.  This was done for any
property for which

  ToUInt32(name) == ToNumber(name)

was true, meaning any property name that, when converted to a number,
was an integer in the range [0, 2^32).  The detection should be more
strict; an indexed property is one for which

  ToString(ToUInt32(name)) == name

is true only.

Review URL: https://codereview.chromium.org/13914003

Patch from Jens Lindström <jl@opera.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSeparate calculation of double element and object element sizes in IsFastLiteral.
hpayer@chromium.org [Fri, 12 Apr 2013 08:42:17 +0000 (08:42 +0000)]
Separate calculation of double element and object element sizes in IsFastLiteral.

BUG=

Review URL: https://codereview.chromium.org/13985005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoReduce verbosity of hydrogen instructions with OSEs.
mstarzinger@chromium.org [Fri, 12 Apr 2013 07:59:13 +0000 (07:59 +0000)]
Reduce verbosity of hydrogen instructions with OSEs.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/14091004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14240 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Accurate function prototypes for native calls from ARM simulator.
plind44@gmail.com [Fri, 12 Apr 2013 02:01:52 +0000 (02:01 +0000)]
MIPS: Accurate function prototypes for native calls from ARM simulator.

Port r14230 (76c22097)

Original commit message:
Native method invocation from the arm/simulator-arm.cc previously made
non-portable assumptions about calling conventions. This was okay for 32-bit
stack-based machines, where by-value structs are automatically materialized
on the stack, and where both int and double parameters could be passed on the
stack. However they are not okay for x86-64, which has an elaborate scheme
for passing parameters in registers.

This CL replaces the previous non-portable code paths with portable code,
using call-sites that accurately match the prototype of the callee.

BUG=

Review URL: https://codereview.chromium.org/13989008
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14239 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: * src/generator.js: Add methods and intialization for generator meta-objects.
palfia@homejinni.com [Thu, 11 Apr 2013 23:25:08 +0000 (23:25 +0000)]
MIPS: * src/generator.js: Add methods and intialization for generator meta-objects.

Port r14236 (7d56d7c5)

Original commit message:
* src/generator.js: Add methods and intialization for generator meta-objects.

* src/contexts.h:
* src/bootstrapper.cc (InitializeExperimentalGlobal): Make generator
  meta-objects, and store maps for constructing generator functions
  and their prototypes.

* src/factory.h:
* src/factory.cc (MapForNewFunction): New helper.
  (NewFunctionFromSharedFunctionInfo): Use the new helper.

* src/heap.cc (AllocateFunctionPrototype, AllocateInitialMap): For
   generators, allocate appropriate prototypes and maps.

* src/code-stubs.h:
* src/arm/code-stubs-arm.h:
* src/arm/full-codegen-arm.h:
* src/ia32/code-stubs-ia32.h:
* src/ia32/full-codegen-ia32.h:
* src/x64/code-stubs-x64.h:
* src/x64/full-codegen-x64.h: Allow fast closure creation for generators,
using the appropriate map.

* test/mjsunit/harmony/builtins.js: Add a special case for
  GeneratorFunctionPrototype.prototype.__proto__.

BUG=

Review URL: https://codereview.chromium.org/13988003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Disentangle field from transition stores.
palfia@homejinni.com [Thu, 11 Apr 2013 23:22:08 +0000 (23:22 +0000)]
MIPS: Disentangle field from transition stores.

Port r14223 (c6460cd6)

BUG=

Review URL: https://codereview.chromium.org/14005007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14237 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years ago* src/generator.js: Add methods and intialization for generator meta-objects.
rossberg@chromium.org [Thu, 11 Apr 2013 16:28:19 +0000 (16:28 +0000)]
* src/generator.js: Add methods and intialization for generator meta-objects.

* src/contexts.h:
* src/bootstrapper.cc (InitializeExperimentalGlobal): Make generator
  meta-objects, and store maps for constructing generator functions
  and their prototypes.

* src/factory.h:
* src/factory.cc (MapForNewFunction): New helper.
  (NewFunctionFromSharedFunctionInfo): Use the new helper.

* src/heap.cc (AllocateFunctionPrototype, AllocateInitialMap): For
   generators, allocate appropriate prototypes and maps.

* src/code-stubs.h:
* src/arm/code-stubs-arm.h:
* src/arm/full-codegen-arm.h:
* src/ia32/code-stubs-ia32.h:
* src/ia32/full-codegen-ia32.h:
* src/x64/code-stubs-x64.h:
* src/x64/full-codegen-x64.h: Allow fast closure creation for generators,
using the appropriate map.

* test/mjsunit/harmony/builtins.js: Add a special case for
  GeneratorFunctionPrototype.prototype.__proto__.

BUG=
TEST=mjsunit/harmony/generators-runtime

Review URL: https://codereview.chromium.org/13192004

Patch from Andy Wingo <wingo@igalia.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14236 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix cctest/test-cpu-profiler/CollectCpuProfile test on Arm and MIPS simulators
yurys@chromium.org [Thu, 11 Apr 2013 14:22:04 +0000 (14:22 +0000)]
Fix cctest/test-cpu-profiler/CollectCpuProfile test on Arm and MIPS simulators

Signal handler on simulator now retrieve registers from the simulator not from the host machine.

BUG=v8:2621

Review URL: https://codereview.chromium.org/13845014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14235 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMove creation of collection prototypes into JavaScript.
mstarzinger@chromium.org [Thu, 11 Apr 2013 13:31:51 +0000 (13:31 +0000)]
Move creation of collection prototypes into JavaScript.

R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/14165004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14234 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoSeparate Math Lithium operations.
svenpanne@chromium.org [Thu, 11 Apr 2013 13:27:06 +0000 (13:27 +0000)]
Separate Math Lithium operations.

This makes the logic in the Hydrogen->Lithium translation much clearer, avoids a
hand-written dispatch and even opened up opportunities for simpler register
constraints for some operations/platforms.

Doing the same for the Hydrogen level might be done in a follow-up CL.

Review URL: https://codereview.chromium.org/13841003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14233 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdded non observable side effects scope and removed unnecessary calls to AddSimulate.
hpayer@chromium.org [Thu, 11 Apr 2013 13:07:37 +0000 (13:07 +0000)]
Added non observable side effects scope and removed unnecessary calls to AddSimulate.

BUG=

Review URL: https://codereview.chromium.org/14174002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14232 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRun style checks also when uploading.
jkummerow@chromium.org [Thu, 11 Apr 2013 12:41:31 +0000 (12:41 +0000)]
Run style checks also when uploading.

The right moment for fixing style errors is when working on the CL, not when
committing it. And this makes non-committers bump into this check too when
uploading changes.

BUG=none

Review URL: https://codereview.chromium.org/14070005
Patch from Marja Hölttä <marja@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAccurate function prototypes for native calls from ARM simulator.
ulan@chromium.org [Thu, 11 Apr 2013 12:40:37 +0000 (12:40 +0000)]
Accurate function prototypes for native calls from ARM simulator.

Native method invocation from the arm/simulator-arm.cc previously made
non-portable assumptions about calling conventions. This was okay for 32-bit
stack-based machines, where by-value structs are automatically materialized
on the stack, and where both int and double parameters could be passed on the
stack. However they are not okay for x86-64, which has an elaborate scheme
for passing parameters in registers.

This CL replaces the previous non-portable code paths with portable code,
using call-sites that accurately match the prototype of the callee.

BUG=2614

Review URL: https://chromiumcodereview.appspot.com/13818012
Patch from Brad Chen <bradchen@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix set-up of intrinsic's 'constructor' properties
rossberg@chromium.org [Thu, 11 Apr 2013 12:27:55 +0000 (12:27 +0000)]
Fix set-up of intrinsic's 'constructor' properties

Looks so easy...

R=mstarzinger@chromium.org
BUG=229445

Review URL: https://codereview.chromium.org/13880007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMove global code for builtins into setup functions.
mstarzinger@chromium.org [Thu, 11 Apr 2013 12:15:25 +0000 (12:15 +0000)]
Move global code for builtins into setup functions.

R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/14125004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoIA32: Small assembler tweak for divsd->mulsd sequence
yangguo@chromium.org [Thu, 11 Apr 2013 10:48:46 +0000 (10:48 +0000)]
IA32: Small assembler tweak for divsd->mulsd sequence

Review URL: https://chromiumcodereview.appspot.com/13447003

Patch from Zheng Liu <zheng.z.liu@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14225 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix JSON.stringify's slow path wrt sliced strings.
yangguo@chromium.org [Thu, 11 Apr 2013 09:53:00 +0000 (09:53 +0000)]
Fix JSON.stringify's slow path wrt sliced strings.

R=mvstanton@chromium.org
BUG=229923

Review URL: https://chromiumcodereview.appspot.com/14107004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDisentangle field from transition stores.
verwaest@chromium.org [Thu, 11 Apr 2013 09:48:03 +0000 (09:48 +0000)]
Disentangle field from transition stores.

Review URL: https://chromiumcodereview.appspot.com/14063006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoTemporarily disable CollectCpuProfile on MIPS, it doesn't work in the simulator
svenpanne@chromium.org [Thu, 11 Apr 2013 09:25:43 +0000 (09:25 +0000)]
Temporarily disable CollectCpuProfile on MIPS, it doesn't work in the simulator

TBR=yurys@chromium.org
BUG=v8:2621

Review URL: https://codereview.chromium.org/14009005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix build failures on Win64 since r14215.
mstarzinger@chromium.org [Thu, 11 Apr 2013 08:08:09 +0000 (08:08 +0000)]
Fix build failures on Win64 since r14215.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/14075006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Build fast literals in hydrogen.
palfia@homejinni.com [Thu, 11 Apr 2013 00:52:22 +0000 (00:52 +0000)]
MIPS: Build fast literals in hydrogen.

Port r14211 (8d6dfcb6)

BUG=

Review URL: https://codereview.chromium.org/14108003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Fix OSR for nested loops.
palfia@homejinni.com [Thu, 11 Apr 2013 00:50:58 +0000 (00:50 +0000)]
MIPS: Fix OSR for nested loops.

Port r14202 (b8949f01), r14208 (06cc8568)

BUG=

Review URL: https://codereview.chromium.org/14119002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Use PrintF instead of fprintf.
palfia@homejinni.com [Thu, 11 Apr 2013 00:48:18 +0000 (00:48 +0000)]
MIPS: Use PrintF instead of fprintf.

Port r14200 (6ecb8f41), r14204 (08ba63c0)

BUG=

Review URL: https://codereview.chromium.org/14112003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14218 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdd support for JUnit compatible XML output in the new test runner.
palfia@homejinni.com [Thu, 11 Apr 2013 00:22:26 +0000 (00:22 +0000)]
Add support for JUnit compatible XML output in the new test runner.

Implement a new output method in run-tests.py which
outputs JUnit compatible XML status information.

BUG=

Review URL: https://codereview.chromium.org/13813003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMark non-isolatified profiler API as V8_DEPRECATED
yurys@chromium.org [Wed, 10 Apr 2013 15:29:05 +0000 (15:29 +0000)]
Mark non-isolatified profiler API as V8_DEPRECATED

BUG=None

Review URL: https://codereview.chromium.org/12413027

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14216 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoNew GC related APIs.
mstarzinger@chromium.org [Wed, 10 Apr 2013 14:53:03 +0000 (14:53 +0000)]
New GC related APIs.

When using these APIs, the embedder doesn't need to copy Persistent handles around.

BUG=NONE

Review URL: https://codereview.chromium.org/13786002
Patch from Marja Hölttä <marja@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove profiler thread related methods from RuntimeProfiler
yurys@chromium.org [Wed, 10 Apr 2013 14:41:43 +0000 (14:41 +0000)]
Remove profiler thread related methods from RuntimeProfiler

Now that V8 doesn't use sampling thread for optimizations
the methods can be removed.

BUG=None

Review URL: https://codereview.chromium.org/14057003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoStack traversal doesn't work properly on Arm simulator so disabling the test there.
yurys@chromium.org [Wed, 10 Apr 2013 14:31:13 +0000 (14:31 +0000)]
Stack traversal doesn't work properly on Arm simulator so disabling the test there.

BUG=2621

Review URL: https://codereview.chromium.org/13993006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14213 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDisable broken tests for now to get ARM simulator bots green again.
svenpanne@chromium.org [Wed, 10 Apr 2013 14:09:16 +0000 (14:09 +0000)]
Disable broken tests for now to get ARM simulator bots green again.

TBR=yurys@chromium.org
BUG=v8:2621

Review URL: https://codereview.chromium.org/14065004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14212 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoBuild fast literals in hydrogen.
hpayer@chromium.org [Wed, 10 Apr 2013 13:52:08 +0000 (13:52 +0000)]
Build fast literals in hydrogen.

BUG=

Review URL: https://codereview.chromium.org/12880017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoES6 symbols: extend V8 API to support symbols
rossberg@chromium.org [Wed, 10 Apr 2013 12:16:29 +0000 (12:16 +0000)]
ES6 symbols: extend V8 API to support symbols

Specifically:
- Introduce Symbol and SymbolObject classes.
- Generalise Object::Has and Object::Delete to arbitrary Value-typed keys.
- Generalise some places in the API implementation from String to Name.

It is not possible to intercept symbol-named properties. That is consistent with the idea that symbols are private and should not leak.

R=svenpanne@chromium.org
BUG=v8:2158

Review URL: https://codereview.chromium.org/13626002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14210 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRename target-specific binaries built for host.
jkummerow@chromium.org [Wed, 10 Apr 2013 10:42:54 +0000 (10:42 +0000)]
Rename target-specific binaries built for host.

Rename v8_base, v8_nosnapshot, and mksnapshot to include a suffix of
.<(v8_target_arch). This allows multiple target architectures to be
built in the Android build system, which uses a single shared directory
structure for building host binaries.

BUG=

Review URL: https://codereview.chromium.org/12790011
Patch from Richard Coles <torne@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14209 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix some more ARM build issues.
yangguo@chromium.org [Wed, 10 Apr 2013 10:31:19 +0000 (10:31 +0000)]
Fix some more ARM build issues.

R=jkummerow@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/14047002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14208 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoOn-the-fly bookkeeping of PagedSpace memory kept in free-lists.
hpayer@chromium.org [Wed, 10 Apr 2013 10:24:24 +0000 (10:24 +0000)]
On-the-fly bookkeeping of PagedSpace memory kept in free-lists.

BUG=

Review URL: https://codereview.chromium.org/13895003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14207 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoPut common case first
rossberg@chromium.org [Wed, 10 Apr 2013 09:53:43 +0000 (09:53 +0000)]
Put common case first

This might fix a 2% regression that we might be observing for CL 14128.

R=verwaest@chromium.org
BUG=

Review URL: https://codereview.chromium.org/13811021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdd sanity test for CPU profiler
yurys@chromium.org [Wed, 10 Apr 2013 09:47:44 +0000 (09:47 +0000)]
Add sanity test for CPU profiler

The new test checks full CPU profiling cycle: using public
V8 API it starts profiling, executes a script, stops profiling
and analyzes collected profile to check that its top-down
tree has expected strutcture. The script that is being profiled
is guaranteed to run > 200ms to make sure enough samples
are collected.

To avoid possible flakiness due to non-deterministic time required
to start new thread on varios OSs when Sampler and ProfilerEventsProcessor
threads are being started the main thread is blocked until the threads
are running.

Also I removed the heuristic in profile-generator.cc where we try
to figure out if the value on top of the sampled stack is return address
of some frameless stub invocation. The code periodically gives false positive
with the new test ending up in an extra node in the collected cpu profile.
After discussion with jkummerow@ we concluded that the logic is too fragile
and that we can address frameless stub invocations in a more reliable way
later should they have a noticeable effect on cpu profiling.

BUG=None

Review URL: https://codereview.chromium.org/13627002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14205 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix ARM build.
yangguo@chromium.org [Wed, 10 Apr 2013 09:35:11 +0000 (09:35 +0000)]
Fix ARM build.

R=ulan@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/13986003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14204 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoChange Context::New to not create persistent handles.
mstarzinger@chromium.org [Wed, 10 Apr 2013 09:34:37 +0000 (09:34 +0000)]
Change Context::New to not create persistent handles.

This moves the responsibility of putting a new context into a persistent
handle to the embedder. Also it removes one API function where the copy
constructor for persistent handles is needed.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/13799003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix OSR for nested loops.
yangguo@chromium.org [Wed, 10 Apr 2013 09:24:31 +0000 (09:24 +0000)]
Fix OSR for nested loops.

R=jkummerow@chromium.org
BUG=v8:2618

Review URL: https://chromiumcodereview.appspot.com/13811014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14202 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRevert "On-the-fly bookkeeping of PagedSpace memory kept in free-lists."
mstarzinger@chromium.org [Wed, 10 Apr 2013 09:19:18 +0000 (09:19 +0000)]
Revert "On-the-fly bookkeeping of PagedSpace memory kept in free-lists."

This reverts r14197 because of tes failures accross the board.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/13958004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14201 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUse PrintF instead of fprintf.
yangguo@chromium.org [Wed, 10 Apr 2013 09:18:41 +0000 (09:18 +0000)]
Use PrintF instead of fprintf.

R=sven@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/13811020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14200 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUnify the way cctest initalizes the VM for each test case.
mstarzinger@chromium.org [Wed, 10 Apr 2013 08:29:39 +0000 (08:29 +0000)]
Unify the way cctest initalizes the VM for each test case.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/13483017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoGDBJIT: Use runtime_zone to fix --gdbjit_full
mstarzinger@chromium.org [Wed, 10 Apr 2013 08:10:51 +0000 (08:10 +0000)]
GDBJIT: Use runtime_zone to fix --gdbjit_full

R=yangguo@chromium.org
BUG=v8:2608

Review URL: https://codereview.chromium.org/13813014
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14198 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoOn-the-fly bookkeeping of PagedSpace memory kept in free-lists.
hpayer@chromium.org [Wed, 10 Apr 2013 08:07:58 +0000 (08:07 +0000)]
On-the-fly bookkeeping of PagedSpace memory kept in free-lists.

BUG=

Review URL: https://codereview.chromium.org/13798002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14197 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUnbreak mipsel.debug.check
svenpanne@chromium.org [Wed, 10 Apr 2013 07:25:22 +0000 (07:25 +0000)]
Unbreak mipsel.debug.check

Review URL: https://codereview.chromium.org/14030002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14196 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Activate generation of Crankshafted KeyedStores
palfia@homejinni.com [Wed, 10 Apr 2013 05:47:22 +0000 (05:47 +0000)]
MIPS: Activate generation of Crankshafted KeyedStores

Port r14186 (ac288c29)

BUG=

Review URL: https://codereview.chromium.org/13950002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14195 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Always check global property cells for readonliness before storing. Add check...
palfia@homejinni.com [Wed, 10 Apr 2013 05:46:09 +0000 (05:46 +0000)]
MIPS: Always check global property cells for readonliness before storing. Add check when the global object is the last in the chain.

Port r14173 (97683cb2)

BUG=

Review URL: https://codereview.chromium.org/13887004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14194 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoEagerly parse expected transitions in JSON.
verwaest@chromium.org [Tue, 9 Apr 2013 16:49:28 +0000 (16:49 +0000)]
Eagerly parse expected transitions in JSON.

Review URL: https://chromiumcodereview.appspot.com/13741010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoLet ComputeTarget fail if it skips over NORMAL objects.
verwaest@chromium.org [Tue, 9 Apr 2013 16:38:51 +0000 (16:38 +0000)]
Let ComputeTarget fail if it skips over NORMAL objects.

BUG=v8:2595

Review URL: https://chromiumcodereview.appspot.com/13862008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14190 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix KeyedAccessStoreMode on Windows
danno@chromium.org [Tue, 9 Apr 2013 16:26:30 +0000 (16:26 +0000)]
Fix KeyedAccessStoreMode on Windows

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/13812011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoGDBJIT: Properly terminate sub program and compile unit
mstarzinger@chromium.org [Tue, 9 Apr 2013 15:25:40 +0000 (15:25 +0000)]
GDBJIT: Properly terminate sub program and compile unit

Review URL: https://codereview.chromium.org/13781002
Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14188 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMinor Native Client specific changes to files in src.
ulan@chromium.org [Tue, 9 Apr 2013 15:11:45 +0000 (15:11 +0000)]
Minor Native Client specific changes to files in src.

These changes are required for Native Client validation and to
accomodate the limitations of the NaCl runtime.

BUG=2614

Review URL: https://chromiumcodereview.appspot.com/13704002
Patch from Brad Chen <bradchen@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14187 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoActivate generation of Crankshafted KeyedStores
danno@chromium.org [Tue, 9 Apr 2013 13:44:22 +0000 (13:44 +0000)]
Activate generation of Crankshafted KeyedStores

R=mvstanton@chromium.org

Review URL: https://codereview.chromium.org/13866005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14186 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdd an option to dump core when an uncaught exception is thrown.
yangguo@chromium.org [Tue, 9 Apr 2013 11:31:10 +0000 (11:31 +0000)]
Add an option to dump core when an uncaught exception is thrown.

BUG=

Review URL: https://chromiumcodereview.appspot.com/13071005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove SSE2 feature checks from x64 code (it is always on)
mvstanton@chromium.org [Tue, 9 Apr 2013 10:32:00 +0000 (10:32 +0000)]
Remove SSE2 feature checks from x64 code (it is always on)

BUG=

Review URL: https://codereview.chromium.org/13928006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14184 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFast-forward version number on bleeding_edge. Now working on version 3.18.0.
jkummerow@chromium.org [Tue, 9 Apr 2013 09:49:41 +0000 (09:49 +0000)]
Fast-forward version number on bleeding_edge. Now working on version 3.18.0.

Review URL: https://codereview.chromium.org/13928004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14181 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoBug fix, uint broke win32 build, use uint32_t
mvstanton@chromium.org [Tue, 9 Apr 2013 09:02:28 +0000 (09:02 +0000)]
Bug fix, uint broke win32 build, use uint32_t

BUG=

Review URL: https://codereview.chromium.org/13861003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14180 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoImprovements for x87 stack handling
mvstanton@chromium.org [Tue, 9 Apr 2013 08:42:57 +0000 (08:42 +0000)]
Improvements for x87 stack handling

BUG=

Review URL: https://codereview.chromium.org/13426006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14179 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoModifications to tests and test tools for Native Client V8.
ulan@chromium.org [Tue, 9 Apr 2013 08:39:01 +0000 (08:39 +0000)]
Modifications to tests and test tools for Native Client V8.

BUG=2614

Review URL: https://chromiumcodereview.appspot.com/13638013
Patch from Brad Chen <bradchen@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14178 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoA helper script for testing Native Client builds of V8.
jkummerow@chromium.org [Tue, 9 Apr 2013 08:31:17 +0000 (08:31 +0000)]
A helper script for testing Native Client builds of V8.

This is modeled after tools/android-run.py. It is meant to be used
as a --command-prefix argument to tools/run-tests.py

BUG=2614

Review URL: https://codereview.chromium.org/13619011
Patch from Brad Chen <bradchen@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14177 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoA new Makefile for the Native Client V8 builds.
jkummerow@chromium.org [Tue, 9 Apr 2013 08:25:41 +0000 (08:25 +0000)]
A new Makefile for the Native Client V8 builds.

This was derived from Makefile.android

BUG=v8:2614

Review URL: https://codereview.chromium.org/13561007
Patch from Brad Chen <bradchen@google.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14176 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix slow path of JSON.stringifier when GC strikes.
yangguo@chromium.org [Tue, 9 Apr 2013 08:12:59 +0000 (08:12 +0000)]
Fix slow path of JSON.stringifier when GC strikes.

FlatContent is not GC-safe.

R=verwaest@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/13782002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14175 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAdding standard-compliance tests for array functions.
verwaest@chromium.org [Tue, 9 Apr 2013 08:09:52 +0000 (08:09 +0000)]
Adding standard-compliance tests for array functions.

BUG=v8:2615

Review URL: https://chromiumcodereview.appspot.com/13601009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14174 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoAlways check global property cells for readonliness before storing.
verwaest@chromium.org [Tue, 9 Apr 2013 08:09:05 +0000 (08:09 +0000)]
Always check global property cells for readonliness before storing.
Add check when the global object is the last in the chain.

Review URL: https://chromiumcodereview.appspot.com/13730002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agolinux: fix uClibc ifdeffery
jkummerow@chromium.org [Tue, 9 Apr 2013 08:05:38 +0000 (08:05 +0000)]
linux: fix uClibc ifdeffery

Remove duplicate inclusion of execinfo.h and make OS::DumpBacktrace
a NOOP on uclibc.

Review URL: https://codereview.chromium.org/13071007
Patch from Mostyn Bramley-Moore <mostynb@opera.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14172 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMove context retrieval method around. Use delegation for implementation.
svenpanne@chromium.org [Tue, 9 Apr 2013 07:34:32 +0000 (07:34 +0000)]
Move context retrieval method around. Use delegation for implementation.

This is a refactoring of https://code.google.com/p/v8/source/detail?r=14146.

Review URL: https://codereview.chromium.org/13940003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14171 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: ARM: Log an error if /proc/cpuinfo cannot be opened
palfia@homejinni.com [Mon, 8 Apr 2013 22:51:00 +0000 (22:51 +0000)]
MIPS: ARM: Log an error if /proc/cpuinfo cannot be opened

Port r14112 (8cc5081c)

Original commit message:
This will make it easier to see if the current CPU feature detection
starts breaking because of process sandboxing.

BUG=

Review URL: https://codereview.chromium.org/13582007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14170 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix worst-case behavior of MergeRemovableSimulates().
yangguo@chromium.org [Mon, 8 Apr 2013 17:37:22 +0000 (17:37 +0000)]
Fix worst-case behavior of MergeRemovableSimulates().

Currently, when a long series of removable simulates are merged, we do
this by merging them one by one as we find them.  As we merge the value
value lists of the simulates, those lists snowball so that we get a
quadratic complexity wrt runtime and memory consumption.

Instead, we gather simulates that need to be merged, and merge them
backwards starting from the last simulate.

R=jkummerow@chromium.org
BUG=v8:2612

Review URL: https://chromiumcodereview.appspot.com/13649003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14169 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove LOGGER macro
yurys@chromium.org [Mon, 8 Apr 2013 15:16:55 +0000 (15:16 +0000)]
Remove LOGGER macro

Use already saved isolate pointer and avoid TLS lookup when
retrieving Logger instance

BUG=None

Review URL: https://codereview.chromium.org/13529004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14168 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix bug in bignum implementation.
yangguo@chromium.org [Mon, 8 Apr 2013 15:13:57 +0000 (15:13 +0000)]
Fix bug in bignum implementation.

R=mstarzinger@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/13454019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14167 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoNo need to start Ticker for Crankshaft
yurys@chromium.org [Mon, 8 Apr 2013 15:09:03 +0000 (15:09 +0000)]
No need to start Ticker for Crankshaft

Crankshaft doesn't depend on the sampler thread any more. No
need to start the that thread for Crankshaft.

BUG=v8:2609

Review URL: https://codereview.chromium.org/13526003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14166 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoTrain wreck reduction.
svenpanne@chromium.org [Mon, 8 Apr 2013 13:10:59 +0000 (13:10 +0000)]
Train wreck reduction.

Furthermore, this tiny patch avoids direct access to the context_ field.

Review URL: https://codereview.chromium.org/13772004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14165 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoDevirtualize Parser
mstarzinger@chromium.org [Mon, 8 Apr 2013 11:53:50 +0000 (11:53 +0000)]
Devirtualize Parser

* src/parser.h: No one inherits from Parser, so the destructor can be
  non-virtual, removing the need for Parser to have a vtable. Also add
  BASE_EMBEDDED to it and to RegExpParser.

BUG=

Review URL: https://codereview.chromium.org/13640007
Patch from Andy Wingo <wingo@igalia.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14162 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMove StackHandlerConstants to platform-independent frames.h
mstarzinger@chromium.org [Mon, 8 Apr 2013 11:17:32 +0000 (11:17 +0000)]
Move StackHandlerConstants to platform-independent frames.h

* src/frames.h: Move StackHandlerConstants here, as it is the same for
  all architectures.

BUG=

Review URL: https://codereview.chromium.org/13638002
Patch from Andy Wingo <wingo@igalia.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14161 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoUnbreak --deopt-every-n-times.
svenpanne@chromium.org [Mon, 8 Apr 2013 07:51:32 +0000 (07:51 +0000)]
Unbreak --deopt-every-n-times.

Review URL: https://codereview.chromium.org/13779003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14160 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove ARM support for VFP2
danno@chromium.org [Sun, 7 Apr 2013 04:34:20 +0000 (04:34 +0000)]
Remove ARM support for VFP2

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/13560007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14159 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Remove conflicting FPU check for code generation in soft-float mode.
plind44@gmail.com [Fri, 5 Apr 2013 18:20:18 +0000 (18:20 +0000)]
MIPS: Remove conflicting FPU check for code generation in soft-float mode.

TEST=

BUG=

Review URL: https://codereview.chromium.org/13724002
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14158 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Force context allocation for variables in generator scopes.
palfia@homejinni.com [Fri, 5 Apr 2013 16:48:36 +0000 (16:48 +0000)]
MIPS: Force context allocation for variables in generator scopes.

Port r14152 (4e58a8ea)

Original commit message:
* src/scopes.h (ForceContextAllocation, has_forced_context_allocation):
  New interface to force context allocation for an entire function's
  scope.

* src/scopes.cc: Unless a new scope is a function scope, if its outer
  scope has forced context allocation, it should also force context
  allocation.
  (MustAllocateInContext): Return true if the scope as a whole has
  forced context allocation.
  (CollectStackAndContextLocals): Allow temporaries to be
  context-allocated.

* src/parser.cc (ParseFunctionLiteral): Force context allocation for
  generator scopes.

* src/v8globals.h (VariableMode): Update comment on TEMPORARY.

* src/arm/full-codegen-arm.cc (Generate):
* src/ia32/full-codegen-ia32.cc (Generate):
* src/x64/full-codegen-x64.cc (Generate): Assert that generators have no
  stack slots.

    * test/mjsunit/harmony/generators-instantiation.js: New test.

BUG=

Review URL: https://codereview.chromium.org/13726009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14157 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoMIPS: Compile FastCloneShallowArrayStub using Crankshaft.
palfia@homejinni.com [Fri, 5 Apr 2013 16:47:34 +0000 (16:47 +0000)]
MIPS: Compile FastCloneShallowArrayStub using Crankshaft.

Port r14143 (8fd9594d)

BUG=

Review URL: https://codereview.chromium.org/13529018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14156 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoRemove unnecessary explicity prototype check.
verwaest@chromium.org [Fri, 5 Apr 2013 15:17:44 +0000 (15:17 +0000)]
Remove unnecessary explicity prototype check.

The prototype is implicitly checked through a map check of the holder.
This is either checked in CheckPrototypes, or as part of the IC.

Review URL: https://chromiumcodereview.appspot.com/13529017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14155 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

11 years agoFix Array.prototype.concat when exceeding array size limit.
yangguo@chromium.org [Fri, 5 Apr 2013 15:12:59 +0000 (15:12 +0000)]
Fix Array.prototype.concat when exceeding array size limit.

R=verwaest@chromium.org
BUG=v8:581

Review URL: https://chromiumcodereview.appspot.com/13465008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14154 ce2b1a6d-e550-0410-aec6-3dcde31c8c00