Speed up function deoptimization by avoiding quadratic pass over optimized function list.

R=danno@chromium.org
BUG=155270

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12780 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix typo in Makefile in ARM VFP support flag.

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12781 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix two-char hash to use correct fallback for zero hashes.

R=verwaest@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12782 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert r12760 (JSON.stringify).

R=verwaest@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12783 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Use movw/movt instead of constant pool on ARMv7.

Port r12755 (5d62d66e)

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/11232036
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12784 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix deletion of hidden property with inline-stored hash.

R=yangguo@chromium.org
BUG=chromium:157124
TEST=cctest/test-api/Regress157124

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12785 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Prepare push to trunk.  Now working on version 3.14.6.

R=jkummerow@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12786 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
tools/run-tests.py: A few timeout-related fixes

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reland JSON.stringify reimplementation.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12790 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Change constant pool marker to be the unconditional, permanently undefined instruction.

The previously-used instruction isn't guaranteed to always be undefined,
and the encoding used was conditional (failing the condition on an
undefined instruction is itself undefined and not guaranteed to
fault!). I would have like to use a more clever encoding (see bug 2963),
but we need the extra bits to encode the size of the constant pool.

BUG=security
R=ulan@chromium.org

Review URL: https://chromiumcodereview.appspot.com/11242002
Patch from JF Bastien <jfb@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12791 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix warnings about tautological compares by recent Clang versions.

This fixes the following Clang warnings:

../../v8/src/ia32/assembler-ia32.cc:1504:24: warning: comparison of constant 16 with expression of type 'v8::internal::Condition' is always true [-Wtautological-constant-out-of-range-compare]
  ASSERT(0 <= cc && cc < 16);
  ~~~~~~~~~~~~~~~~~~~~~^~~~~

../../v8/src/ia32/assembler-ia32.cc:1536:27: warning: comparison of constant 16 with expression of type 'v8::internal::Condition' is always true [-Wtautological-constant-out-of-range-compare]
  ASSERT((0 <= cc) && (cc < 16));
  ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~

BUG=crbug.com/151927

Review URL: https://chromiumcodereview.appspot.com/11225030
Patch from Hans Wennborg <hans@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12792 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Implement committed physical memory stats for Linux.

The patch introduces CommittedPhysicalMemory function to
the Heap class that reports committed *physical* memory acquired
for the heap from the OS.
It is important because some OSes may defer actual committment on e.g.
first access to the region.
So reporting just plain committed size led to various weird artifacts
like showing V8 allocated memory higher than the whole process
private size.

BUG=v8:2191

Review URL: https://codereview.chromium.org/11066118
Patch from Alexei Filippov <alph@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12793 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add a type conversion to fix Windows build after r12793

TBR=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12794 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Pretenure JSON graph if the input string is larger than 100*1024 chars.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12795 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Enable incremental code flushing.

This enables code flushing even with incremental marking enabled and
fully shares the function link field in JSFunctions between candidates
for code flushing and the optimized functions list. If a candidate for
code flushing gets optimized, it will be evicted from the candidates
list.

R=ulan@chromium.org
BUG=v8:1609

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12796 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix tools/run-tests.py --report when tests are specified on the command line

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12797 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Optimize inner-loop in JSON.stringify.

R=verwaest@chromium.org
BUG=

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

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

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix Windows 64 build.

R=verwaest@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12800 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use correct timezone information on Solaris

`timezone` variable contains the difference, in seconds, between UTC and
local standard time (see `man 3 localtime` on Solaris).

Call to `tzset` is required to apply contents of `TZ` variable to
`timezone` variable.

BUG=v8:2064

Review URL: https://chromiumcodereview.appspot.com/10967066
Patch from Maciej Małecki <me@mmalecki.com>.

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