Refactor lithium operand declaration a little bit.

R=verwaest@chromium.org

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

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

R=dslomov@chromium.org
TBR=dslomov@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19776 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Really skip dead blocks in GVN

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19779 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add MacroAssembler::Move(reg, immediate) on IA32.

BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19780 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Use a per-isolate cache for the date object JS bits

The old per-context cache made it difficult for the embedder to notify
v8 of date/time configuration changes. The embedder had to enter all
contexts for the isolate and notify v8 for each context.

With the new per-isolate cache, the embedder only needs to notify v8
once per isolate.

BUG=348856
LOG=y
R=dcarney@chromium.org, ulan@chromium.org
TEST=cctest/test-date

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19784 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix compilation on win after r19784

TBR=dcarney@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19785 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Types: cache lub bitset to avoid heap access

R=verwaest@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19786 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix for 350887: CHECK failure on new_length->IsSmi()

In ElementsAccessorBase::SetLengthImpl for a dictionary array, we try to
optimize setting array length if the new length is a smi. However, we
refuse to set an array length to less than the index of the highest
non-configurable array element. This index may be outside of smi range.

Handle this case accordingly.

BUG=350887
LOG=N
R=dslomov@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19787 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
PromiseCoerce should ignore primitive values.

PromiseCource(x) should return "not a thenable" if Type(x) is not Object
even if x.then exists.

BUG=347095
LOG=Y
R=rossberg@chromium.org

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

Patch from Yutaka Hirano <yhirano@chromium.org>.

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

TBR=bmeurer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make sure tagged binary op instructions change new space promotion.

BUG=
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19790 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Do not overwrite already optimized code.

BUG=
R=ulan@chromium.org

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

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

BUG=
R=jochen@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19792 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Mark mjsunit/string-case as flaky."

This reverts r19760 since the issue has been fixed in r19755.

R=dslomov@google.com, dslomov@chromium.org
BUG=v8:3208
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19793 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Do not run AddInstructionChangesNewSpacePromotion test in release mode.

BUG=
R=svenpanne@chromium.org

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

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

No idea when they got out-of-sync...

TBR=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19795 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Cleanup some of the range uses in ModI/DivI.

BUG=v8:3204
LOG=y
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19796 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix bug in constant folding object comparisons.

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19798 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Mode clean-up pt 1: rename classic/non-strict mode to sloppy mode

R=mstarzinger@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Eliminate extended mode, and other modes clean-up

- Merge LanguageMode and StrictModeFlag enums
- Make harmony-scoping depend only on strict mode
- Free some bits on the way
- Plus additional clean-up and renaming

R=ulan@chromium.org
BUG=

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

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