MIPS: Disentangle field from transition stores.

Port r14223 (c6460cd6)

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14237 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14239 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reduce verbosity of hydrogen instructions with OSEs.

R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14240 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Separate calculation of double element and object element sizes in IsFastLiteral.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove preparser library; link preparser executable against full V8

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Fix register usage in commit r14239.

BUG=

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

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

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14246 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix preparser build with snapshot=off

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14247 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Enable pretenuring of fast literals in high promotion mode.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14248 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14251 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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: https://v8.googlecode.com/svn/branches/bleeding_edge@14252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Merge commit '144e215a66c3b84a7b1aca1616f4028734837fc2' into hj-dev-palfia
MIPS: Enable pretenuring of fast literals in high promotion mode.

Port r14248 (144e215a)
Merge commit '16e40ee0d65e11278961b2246221191bb4ced37c' into hj-dev-palfia