Handlify Map::CopyDropDescriptors().

* And contain knowledge better in TransitionArray and DescriptorArray (for example WhitenessWitness is now private to DescriptorArray).
* And remove some factory methods
* And handlify some other things.

R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "More tests for Union & Intersect"

This reverts r20684.

TBR=rossberg@chromium.org

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Implement handlified String::Equals and Name::Equals.

Port r20669 (29a6ec29)

Note:
This commit fixes a typo.

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20688 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reland "Handlify GetProperty."

R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Inline immutable property loads

When a non-configurable, non-writable field is
read from a constant holder, the load is
eliminated and replaced with the direct value
of the field

BUG=
R=verwaest@chromium.org

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

Patch from Petka Antonov <p.antonov@partner.samsung.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20690 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Do not call user defined getter of Error.stackTraceLimit.

Handlify GetNormalizedProperty.

BUG=360733
LOG=N
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20691 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Check stack limit in ArgumentAdaptorTrampoline.
BUG=353058
LOG=N
TEST=mjsunit/regress/regress-353058
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20692 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Handlify Map::RawCopy

BUG=
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20693 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Gcstress bug fix: Transition arrays may get smaller during gc.

R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20694 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert r20692 "Check stack limit in ArgumentAdaptorTrampoline."

Reason: mjsunit/regress/regress-353058 failure on GC-stress.

TBR=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20695 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Skip mjsunit/regress/regress-353058 for ASAN and ARM until r20692 is relanded.

TBR=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20696 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
HashTable::Shrink() handlified and derived template parameter added to HashTable hierarchy.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20697 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "HashTable::Shrink() handlified and derived template parameter added to HashTable hierarchy."

This reverts commit r20697 for breaking ASAN build.

TBR=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20698 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Track field types.

This is an initial step towards tracking the exact types instead of just the representations of fields. It adds support to track up to one map of heap object field values, eliminating various map checks on values loaded from such fields, at the cost of making stores to such fields slightly more expensive.

TEST=mjsunit/field-type-tracking
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Remove ConfigureDefaults version that does not take the amount of virtual mem

R=dcarney@chromium.org
LOG=n
BUG=none

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20702 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fail the compilation if the cached data is invalid.

R=svenpanne@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20703 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Track field types."

Revert r20701.

TBR=bmeurer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20704 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Allow GetScriptNameOrSourceURL to be called with exception pending.

R=jarin@chromium.org, ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20705 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reland "More tests for Union & Intersect"

Fixes size approximation in Intersect. Also lowers the number of fuzzed types in test, to address time-outs.

R=bmeurer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@20706 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Parser cleanup: PreParser doesn't need to produce symbol data any more.

State of the art:
- Chromium doesn't do a separate preparsing phase any more.
- We start parsing with Parser, and when it sees a lazy function, it falls back
to PreParser for that function.
- The symbol data should contain symbols which are *outside* lazy functions.
- So Parser should always produce symbol data, and PreParser should never.
- Because it's this simple now, we don't need to keep track of "should
produce symbol data" (i.e., whether we're inside a lazy func or not).

R=ulan@chromium.org
BUG=

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

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