Fix the hole loading optimization.
- Holes are only ever loaded as double or tagged.
- Change to tagged has to deoptimize on undefined (no implicit
  conversions from double the hole NaN -> tagged undefined).

BUG=
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Tag smi-constants as smi. This also fixes code that copies holes into arrays.

Port r14814 (8a28ccfb)

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14830 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Fix the hole loading optimization.

Port r14829 (8fba0f34)

Original commit message:
Fix the hole loading optimization.
- Holes are only ever loaded as double or tagged.
- Change to tagged has to deoptimize on undefined (no implicit   conversions from double the hole NaN -> tagged undefined).

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14831 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Always deoptimize on undefined if a double value implicitly gets converted.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Deprecate profiler methods that accept security origin

Now that the only known client console.profiles was removed from Blink:
https://src.chromium.org/viewvc/blink?revision=151136&view=revision
https://src.chromium.org/viewvc/blink?revision=151196&view=revision
this method can be deprecated and all the code that supports filtering
CPU profiles based on security origins can be later removed.

Drive-by fix: in line with CpuProfiler changes deprecated HeapProfiler::FindHeapSnapshot to reduce v8 API surface. FindHeapSnapshot may well be implemented based on existing GetSnapshotCount/GetSnapshot and it is only used in the tests.

BUG=None
R=jkummerow@chromium.org, loislo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Tag smi-constants as smi.

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14834 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Mark test-profile-generator/RecordStackTraceAtStartProfiling as always passing

The test should be stable now.

Drive-by: removed test-heap-profiler/HeapSnapshotsDiff from cctest.status as there is no such test

BUG=None
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Support Smi in CompareIDAndBranch

BUG=
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Added old data space allocation infrastructure for pretenuring.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
remove use of context scope with persistent argument

R=svenpanne@chromium.org
BUG=

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

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

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Implement ObservedArrayPop, ObservedArrayShift, ObservedArrayUnshift & ObservedArraySplice

R=rossberg,adamk,arv
BUG=

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

Patch from Rafael Weinstein <rafaelw@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make (Object.)observed Arrays use SafeRemoveArrayHoles during sort

R=adamk,rossberg
BUG=

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

Patch from Rafael Weinstein <rafaelw@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Re-enable freezing of Object.observe changeRecords now that freezing is faster.

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

Patch from Rafael Weinstein <rafaelw@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
remove most V8_ALLOW_ACCESS_TO_* defines from test classes

R=svenpanne@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Update the gap resolver to support Smi constants.

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Implement ObservedArrayPop, ObservedArrayShift, ObservedArrayUnshift & ObservedArraySplice"

This reverts commit r14846.

Broke Mozilla test (see http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20shared/builds/3608/steps/Mozilla/logs/stdio), e.g.:

=== mozilla/js1_5/Array/regress-451483 ===
--- stdout ---
BUGNUMBER: 451483
STATUS: [].splice.call(0) == []
/mnt/data/b/build/slave/v8-linux-shared/build/v8/test/mozilla/data/js1_5/Array/regress-451483.js:57: illegal access
  var result = [].splice.call(0);
                         ^
Command: /mnt/data/b/build/slave/v8-linux-shared/build/v8/out/Release/d8 --test --nobreak-on-abort --nodead-code-elimination --nofold-constants --expose-gc /mnt/data/b/build/slave/v8-linux-shared/build/v8/test/mozilla/mozilla-shell-emulation.js /mnt/data/b/build/slave/v8-linux-shared/build/v8/test/mozilla/data/shell.js /mnt/data/b/build/slave/v8-linux-shared/build/v8/test/mozilla/data/js1_5/shell.js /mnt/data/b/build/slave/v8-linux-shared/build/v8/test/mozilla/data/js1_5/Array/shell.js /mnt/data/b/build/slave/v8-linux-shared/build/v8/test/mozilla/data/js1_5/Array/regress-451483.js

TBR=rafaelw@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14851 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Only allow non-double if the observed representations are int32.

R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14852 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Enable extra checks for release builds as well

R=jkummerow@chromium.org

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

Patch from Jochen Eisinger <jochen@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@14853 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix IfBuilder::Deopt to clear the current block.

R=jkummerow@chromium.org
BUG=chromium:243868
TEST=mjsunit/regress/regress-crbug-243868

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

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