Cache optimized code for OSR.

BUG=v8:2637
LOG=N
R=titzer@chromium.org, verwaest@chromium.org

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

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

R=ulan@chromium.org

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

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

R=ulan@chromium.org
TBR=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18412 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Turn off concurrent sweeping.

R=ulan@chromium.org
BUG=v8:3071
LOG=N

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

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

TBR=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[Sheriff] Revert "Sync cygwin version with chromium"

This reverts commit r18392 for breaking python compatibility on windows bots.

BUG=
TBR=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix a race between concurrent recompilation and OSR.

If concurrent recompilation finishes before OSR, then OSR replaces
the old optimized code without evicting it from the optimized code map.

New functions can get the old optimized code from the optimized code map,
but the old code could be already deoptimized.

BUG=330046
TEST=test/mjsunit/regress-330046.js
LOG=Y
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
ARM: fix loading of global object in LWrapReceiver.

Since r16993 the cp register is handled by registers allocator,
and we cannot assume that the cp always contains the context.

BUG=318420
LOG=Y
TEST=test/mjsunit/regress/regress-318420.js
R=verwaest@chromium.org

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

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

R=jarin@chromium.org
TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Out-of-line constant pool on Arm: Stage 3 - Set Constant Pool Pointer on Function Entry

Third stage of implementing an out-of-line constant pool for Arm.  This CL adds
a ConstantPool field to Code objects and initializes the pp register on
function entry, and saves the pp register on the stack frame. The ConstantPool
object is always empty and is unused currently.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[arm] Use single instruction tail call sequence.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18426 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[arm] Avoid unnecessary branches in array constructor stubs.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18427 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make it possible to assert that certain instance types are compatible wrt HAllocate.

Turns clear_next_map_word_ into a flag and adds a new method
CompatibleInstanceTypes(). This is used in BuildUncheckedStringAdd()
to ASSERT that there's no difference wrt. HAllocate in using
CONS_STRING_TYPE vs CONS_ASCII_STRING_TYPE.

R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[arm] Drop useless branches in full and lithium codegen.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18429 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add support for the QNX operating system.

This patch contains contributions from the following members of the
BlackBerry Web Technologies team:

Eli Fidler <efidler@blackberry.com>
Konrad Piascik <kpiascik@blackberry.com>
Jeff Rogers <jrogers@blackberry.com>
Cosmin Truta <ctruta@blackberry.com>
Peter Wang <peter.wang@torchmobile.com.cn>
Xiaobo Wang <xiaobwang@blackberry.com>
Ming Xie <mxie@blackberry.com>
Leo Yang <leoyang@blackberry.com>

R=bmeurer@chromium.org, jkummerow@chromium.org

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

Patch from Cosmin Truta <ctruta@blackberry.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Allocation site support for monomorphic StringAdds in BinaryOps.

R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix compilation with C++11.

TBR=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert r19394 - "Revert r18390 - "Roll gyp 1685:1806""

Also include a gyp_v8.py wrapper for new import rules.

> Doesn't work with python2.7 - I tested with 2.6 :-/
>
> BUG=none
> TBR=hpayer@chromium.org
> LOG=n

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Fix compilation with C++11." and "Allocation site support for monomorphic StringAdds in BinaryOps.".

This reverts commit r18431 and r18432 for breaking
the Linux nosnapshot build.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Revert r19394 - "Revert r18390 - "Roll gyp 1685:1806""" because of broken windows bots.

R=jochen@chromium.org
TBR=jochen@chromium.org

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

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