Add an API for enumerating persistent handles

This API lets the embedder enumerate handles that have class ids. WebKit will
use this feature during garbage collection to compute object groups for DOM
nodes. Previously, we kept a list of DOM nodes on the WebKit side, but that
list is redundant with the global handles list in V8.

Review URL: https://codereview.chromium.org/11190011
Patch from Adam Barth <abarth@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12750 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Added a workaroung for a GCC visibility bug.

Movef a helper class to the top level to avoid
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40145.

TBR=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12751 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Always invoke the default Array.sort functions from builtin functions.

TEST=mjsunit/regress/regress-builtin-array-op.js
BUG=v8:2372
Review URL: https://chromiumcodereview.appspot.com/10559005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12752 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix typo in fast path for scanning json strings.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12753 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Avoid unnecessary code target changes during code compaction.

R=ulan@chromium.org

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

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

Some ARM architectures load 32-bit immediate constants more efficiently using movw/movt pairs rather than constant pool loads. This patch allows the assembler to generate one or the other load form at runtime depending on what is faster.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12755 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Kill off the SCons based build.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12756 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make sure the fast case of ScanJsonString bails out to the slow case correctly.

R=verwaest@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12757 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use tools/run-tests.py for "check" targets in the top-level Makefile.

Bonus content: a few minor fixes for run-tests.py

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12758 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Put more constants in movw/movt instructions

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12759 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reimplement a simpler version of JSON.stringify.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12760 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Adding a fast path for parsing index keys.

Reduces overhead on http://code.google.com/p/chromium/issues/detail?id=156379 from 360ms down to 255ms.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12761 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Keep track of the first non-ascii word/char to avoid redoing the work.

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12762 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Disable GDBJIT support by default in Debug mode.

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12763 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Static cast char* diff to int.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12764 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fixed error introduced in r12761.

BUG=2373

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

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

BUG=v8:2374

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12766 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fixed directory ignorance involving symlinks.

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Pass pending exception to the message listener.

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12768 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Adjust Android test expectations.

Disable long running tests:
- test-threads/ThreadJoinSelf in release and debug modes.
- regress/regress-1122 in debug mode.

Disable failing test:
- preparser/strict-octal-regexp (v8 issue 2265).

R=jkummerow@chromium.org

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

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