platform/upstream/v8.git
10 years agoHandlify LiveEdit.
yangguo@chromium.org [Mon, 7 Apr 2014 11:32:32 +0000 (11:32 +0000)]
Handlify LiveEdit.

R=ulan@chromium.org

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

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

10 years agoDeprecate Context::HasOutOfMemoryException.
yangguo@chromium.org [Mon, 7 Apr 2014 11:11:25 +0000 (11:11 +0000)]
Deprecate Context::HasOutOfMemoryException.

R=dcarney@chromium.org

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

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

10 years agoRefactoring to allow adding new structured types
rossberg@chromium.org [Mon, 7 Apr 2014 11:00:41 +0000 (11:00 +0000)]
Refactoring to allow adding new structured types

Also, simplfy representation of zone types, using a simple struct.

R=bmeurer@chromium.org
BUG=
LOG=N

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

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

10 years agoSkip a bunch of new failing nacl tests
dcarney@chromium.org [Mon, 7 Apr 2014 10:44:48 +0000 (10:44 +0000)]
Skip a bunch of new failing nacl tests

R=machenbach@chromium.org

BUG=

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

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

10 years agoMake `String.prototype.contains` throw when passing a regular expression
yangguo@chromium.org [Mon, 7 Apr 2014 10:24:01 +0000 (10:24 +0000)]
Make `String.prototype.contains` throw when passing a regular expression

Contributed by Mathias Bynens <mathiasb@opera.com>.

TEST=mjsunit/harmony
BUG=v8:3261
LOG=Y
R=yangguo@chromium.org, arv@chromium.org, ishell@chromium.org

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

Patch from Mathias Bynens <mathiasb@opera.com>.

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

10 years agoHandlify six allocator functions from the Heap.
mstarzinger@chromium.org [Mon, 7 Apr 2014 10:12:54 +0000 (10:12 +0000)]
Handlify six allocator functions from the Heap.

R=yangguo@chromium.org

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

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

10 years agoCallers of ElementsAccessor::Validate() handlified.
ishell@chromium.org [Mon, 7 Apr 2014 10:00:14 +0000 (10:00 +0000)]
Callers of ElementsAccessor::Validate() handlified.

R=yangguo@chromium.org

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

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

10 years agoUse distinct maps for oddballs with special handling in the type system.
bmeurer@chromium.org [Mon, 7 Apr 2014 09:41:13 +0000 (09:41 +0000)]
Use distinct maps for oddballs with special handling in the type system.

R=rossberg@chromium.org

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

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

10 years agoElementsAccessor::GetAccessorPair() handlified.
ishell@chromium.org [Mon, 7 Apr 2014 09:20:44 +0000 (09:20 +0000)]
ElementsAccessor::GetAccessorPair() handlified.

R=yangguo@chromium.org

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

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

10 years agoDead code elimination of inlined arguments objects causes wrong deopt info to be...
jarin@chromium.org [Mon, 7 Apr 2014 08:42:34 +0000 (08:42 +0000)]
Dead code elimination of inlined arguments objects causes wrong deopt info to be generated - instead of materializing the arguments, we get 'undefined'.

Golem says the change is perf-neutral.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoYet another regression test for range analysis.
svenpanne@chromium.org [Mon, 7 Apr 2014 08:04:25 +0000 (08:04 +0000)]
Yet another regression test for range analysis.

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

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

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

10 years agoFix for v8:3255 Grow KeyedStoreIC doesn't respect String value wrappers
mvstanton@chromium.org [Mon, 7 Apr 2014 07:52:24 +0000 (07:52 +0000)]
Fix for v8:3255 Grow KeyedStoreIC doesn't respect String value wrappers

BUG=v8:3255
LOG=N
R=mstarzinger@chromium.org

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

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

10 years agocompiler.cc: Remove a comment which is no longer true.
marja@chromium.org [Mon, 7 Apr 2014 07:40:18 +0000 (07:40 +0000)]
compiler.cc: Remove a comment which is no longer true.

We don't do any automatic PreParsing in Compiler::Compile any more (it was
removed by r10066, > 2 years ago).

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoMake TypedArray::New fucntions crash on wrong lengths.
dslomov@chromium.org [Mon, 7 Apr 2014 05:54:32 +0000 (05:54 +0000)]
Make TypedArray::New fucntions crash on wrong lengths.

R=jkummerow@chromium.org
BUG=359802
LOG=N

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

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

10 years agoOrderedHashTable implementation with Set and Map interfaces
adamk@chromium.org [Fri, 4 Apr 2014 20:41:57 +0000 (20:41 +0000)]
OrderedHashTable implementation with Set and Map interfaces

OrderedHashTable is an insertion-ordered HashTable based on
Jason Orendorff's writeup of a data structure attributed to Tyler Close:
https://wiki.mozilla.org/User:Jorend/Deterministic_hash_tables

It is intended as the new backing store for JSSet/JSMap, as ES6 requires
insertion-order-based iteration. Note, however, that in the interest of
keeping the initial check-in small this patch does not yet include any
iteration support.

This change also doesn't yet touch any existing behavior, but in
a branch I've verified that these structures pass the existing
JSSet/JSMap mjsunit tests.

BUG=v8:1793
LOG=N
R=mstarzinger@chromium.org

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

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

10 years agoRevert "Reland of https://codereview.chromium.org/172523002/"
mvstanton@chromium.org [Fri, 4 Apr 2014 16:18:59 +0000 (16:18 +0000)]
Revert "Reland of https://codereview.chromium.org/172523002/"

This reverts commit r20516 due to a Sunspider performance issue.

R=ishell@chromium.org

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

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

10 years agoRevert "Compare external pixel data length against Smi::kMaxValue"
jkummerow@chromium.org [Fri, 4 Apr 2014 16:05:29 +0000 (16:05 +0000)]
Revert "Compare external pixel data length against Smi::kMaxValue"

This reverts r20519. Reason: wrong fix.

TBR=rossberg@chromium.org

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

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

10 years agoCompare external pixel data length against Smi::kMaxValue
jkummerow@chromium.org [Fri, 4 Apr 2014 15:25:37 +0000 (15:25 +0000)]
Compare external pixel data length against Smi::kMaxValue

BUG=chromium:359802
LOG=n
R=rossberg@chromium.org

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

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

10 years agoMIPS: Reland "Fixed environment assignment for LCheckNonSmi."
palfia@homejinni.com [Fri, 4 Apr 2014 15:17:37 +0000 (15:17 +0000)]
MIPS: Reland "Fixed environment assignment for LCheckNonSmi."

Port r20495 (705b65bc)

BUG=
R=plind44@gmail.com

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

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

10 years agoARM64: fix simulator constructor
rodolph.perfetta@arm.com [Fri, 4 Apr 2014 15:02:39 +0000 (15:02 +0000)]
ARM64: fix simulator constructor

BUG=
R=ulan@chromium.org, bmeurer@chromium.org

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

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

10 years agoReland of https://codereview.chromium.org/172523002/
mvstanton@chromium.org [Fri, 4 Apr 2014 13:57:53 +0000 (13:57 +0000)]
Reland of https://codereview.chromium.org/172523002/

Fixed
1) Missing line in x64 port.
2) GcStress found a logic error in the IC miss handler.

R=verwaest@chromium.org

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

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

10 years agoARM64: Use direct deoptimization exits.
alexandre.rames@arm.com [Fri, 4 Apr 2014 13:41:12 +0000 (13:41 +0000)]
ARM64: Use direct deoptimization exits.

R=ulan@chromium.org

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

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

10 years agoElementsAccessor's public interface handlification.
ishell@chromium.org [Fri, 4 Apr 2014 13:20:24 +0000 (13:20 +0000)]
ElementsAccessor's public interface handlification.

R=yangguo@chromium.org

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

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

10 years agoCallers of ElementsAccessor::AddElementsToFixedArray(), ElementsAccessor::HasElement...
ishell@chromium.org [Fri, 4 Apr 2014 13:05:37 +0000 (13:05 +0000)]
Callers of ElementsAccessor::AddElementsToFixedArray(), ElementsAccessor::HasElement() and ElementsAccessor::GetKeyForIndex() handlified.

R=yangguo@chromium.org

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

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

10 years agoARM64: fix constant pool size used by disassembler
rodolph.perfetta@arm.com [Fri, 4 Apr 2014 12:54:12 +0000 (12:54 +0000)]
ARM64: fix constant pool size used by disassembler

BUG=
R=ulan@chromium.org, bmeurer@chromium.org

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

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

10 years agoUpdate tests to use the new compilation API + related fixes.
marja@chromium.org [Fri, 4 Apr 2014 12:36:23 +0000 (12:36 +0000)]
Update tests to use the new compilation API + related fixes.

Esp. get rid of PreCompile in tests, as it's going to be removed.

Notes:
- The new compilation API doesn't have a separate precompilation phase, so there
is no separate way to check for errors except checking the compilation
errors. Removed some tests which don't make sense any more.
- test-api/Regress31661 didn't make sense as a regression test even before the
compilation API changes, because Blink doesn't precompile this short scripts. So
detecting this kind of errors (see crbug.com/31661 for more information) cannot rely
on precompilation errors.
- test-parsing/PreParserStrictOctal has nothing to do with PreParser, and the comment
about "forcing preparsing" was just wrong.
- test-api/PreCompile was supposed to test that "pre-compilation (aka
preparsing) can be called without initializing the whole VM"; that's no longer
true, since there's no separate precompilation step in the new compile
API. There are other tests (test-parsing/DontRegressPreParserDataSizes) which
ensure that we produce cached data.
- Updated tests which test preparsing to use PreParser directly (not via the
 preparsing API).
- In the new compilation API, the user doesn't need to deal with ScriptData
ever. It's only used internally, and needed in tests that test internal aspects
(e.g., modify the cached data before passing it back).
- Some tests which used to test preparse + parse now test first time parse +
  second time parse, and had to be modified to ensure we don't hit the
  compilation cache.

BUG=
R=ulan@chromium.org

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

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

10 years agoReturn MaybeHandle from GetProperty.
yangguo@chromium.org [Fri, 4 Apr 2014 12:25:45 +0000 (12:25 +0000)]
Return MaybeHandle from GetProperty.

R=ishell@chromium.org

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

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

10 years agoReturn MaybeHandle from SetProperty.
yangguo@chromium.org [Fri, 4 Apr 2014 12:06:11 +0000 (12:06 +0000)]
Return MaybeHandle from SetProperty.

R=ishell@chromium.org

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

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

10 years agoFix fixed-point vcvt_f64_s32 immediate value encoding
rmcilroy@chromium.org [Fri, 4 Apr 2014 11:12:40 +0000 (11:12 +0000)]
Fix fixed-point vcvt_f64_s32 immediate value encoding

The (32 - fraction_bits) value should be encoded so that the least
significant bit is set to bit 5 and the four next bits to bits 0-3. Fix
the previously incorrect encoding. This bug did not cause behavioral
issues before, since in existing uses of the function the order of the
bits in the immediate value does not matter, as they are all 1.

BUG=3256
LOG=N
R=ulan@chromium.org

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

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

10 years agoDon't overwrite transition array map while iterating over the transition tree.
hpayer@chromium.org [Fri, 4 Apr 2014 09:25:36 +0000 (09:25 +0000)]
Don't overwrite transition array map while iterating over the transition tree.

Instread of using the transition array map to store the iteration index, we are using the constructor field of the map. Moreover, I removed the unchecked transition array accessors.

BUG=
R=mstarzinger@chromium.org, verwaest@chromium.org

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

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

10 years agoProperly pass dim to recursive calls in TypePrint().
bmeurer@chromium.org [Fri, 4 Apr 2014 09:00:30 +0000 (09:00 +0000)]
Properly pass dim to recursive calls in TypePrint().

R=rossberg@chromium.org

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

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

10 years agoMake sure value is a heap number when reusing the double box in BinaryOpICStub.
hpayer@chromium.org [Fri, 4 Apr 2014 08:46:49 +0000 (08:46 +0000)]
Make sure value is a heap number when reusing the double box in BinaryOpICStub.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoMaybehandlification of EnsureJSArrayWithWritableFastElements().
ishell@chromium.org [Fri, 4 Apr 2014 08:17:23 +0000 (08:17 +0000)]
Maybehandlification of EnsureJSArrayWithWritableFastElements().

R=yangguo@chromium.org

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

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

10 years agoMake auto-roll script also roll patched trunk revisions.
machenbach@chromium.org [Fri, 4 Apr 2014 07:23:45 +0000 (07:23 +0000)]
Make auto-roll script also roll patched trunk revisions.

This will allow the auto-roll bot to roll the last trunk patches, e.g. "Version 3.4.5.1 ...".

BUG=
R=jarin@chromium.org

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

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

10 years agoTypePrint() does not depend on Object::Print().
bmeurer@chromium.org [Fri, 4 Apr 2014 07:21:59 +0000 (07:21 +0000)]
TypePrint() does not depend on Object::Print().

R=svenpanne@chromium.org

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

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

10 years agoReland "Fixed environment assignment for LCheckNonSmi."
svenpanne@chromium.org [Fri, 4 Apr 2014 07:07:34 +0000 (07:07 +0000)]
Reland "Fixed environment assignment for LCheckNonSmi."

Now with (hopefully correct) ARM64 part... :-}

R=bmeurer@chromium.org

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

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

10 years agoGet rid of the TRANSITION PropertyType and consistently use CanHoldValue().
bmeurer@chromium.org [Fri, 4 Apr 2014 04:49:07 +0000 (04:49 +0000)]
Get rid of the TRANSITION PropertyType and consistently use CanHoldValue().

R=verwaest@chromium.org

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

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

10 years agoMIPS: Check in Lithium that allocation size in Smi range.
palfia@homejinni.com [Thu, 3 Apr 2014 23:34:28 +0000 (23:34 +0000)]
MIPS: Check in Lithium that allocation size in Smi range.

Port r20458 (984d99c9)

Oirginal commit message:
This is to avoid triggering an assertion from Smi::FromInt. The
generated code is unreachable, so it is not a real bug.

BUG=
R=plind44@gmail.com

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

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

10 years agoDo not mark prototype transitions link as weak in heap snapshot.
alph@chromium.org [Thu, 3 Apr 2014 16:32:59 +0000 (16:32 +0000)]
Do not mark prototype transitions link as weak in heap snapshot.

R=ulan@chromium.org

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

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

10 years agoHarden IsMoreGeneralElementsKindTransition.
dslomov@chromium.org [Thu, 3 Apr 2014 16:25:05 +0000 (16:25 +0000)]
Harden IsMoreGeneralElementsKindTransition.

R=verwaest@chromium.org

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

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

10 years agoFurther Kraken regression recover due to handlification.
ishell@chromium.org [Thu, 3 Apr 2014 14:42:56 +0000 (14:42 +0000)]
Further Kraken regression recover due to handlification.

R=yangguo@chromium.org

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

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

10 years agoARM64: Fixes and more support for FRINT<X> instructions.
alexandre.rames@arm.com [Thu, 3 Apr 2014 14:30:44 +0000 (14:30 +0000)]
ARM64: Fixes and more support for FRINT<X> instructions.

Fix simulation and tests for the [-0.5, -0.0[ range for FRINTA and FRINTN, and
add support for FRINTM.

R=ulan@chromium.org

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

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

10 years agoARM64: Fix the atomic type width in the 64bit Acquire_Load().
alexandre.rames@arm.com [Thu, 3 Apr 2014 14:28:40 +0000 (14:28 +0000)]
ARM64: Fix the atomic type width in the 64bit Acquire_Load().

R=ulan@chromium.org

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

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

10 years agoReturn MaybeHandle from JsonParser.
yangguo@chromium.org [Thu, 3 Apr 2014 14:25:59 +0000 (14:25 +0000)]
Return MaybeHandle from JsonParser.

R=ishell@chromium.org

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

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

10 years agoRevert r20476.
jochen@chromium.org [Thu, 3 Apr 2014 14:04:05 +0000 (14:04 +0000)]
Revert r20476.

Reason for revert: crashes arm64.debug cctest

Fatal error in ../src/hydrogen-instructions.h, line 2968
CHECK(value->IsCheckHeapObject()) failed

Fixed environment assignment for LCheckNonSmi.

TBR=svenpanne@chromium.org
BUG=

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

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

10 years agoFix bug entry and quotation marks in merge-to-branch.
machenbach@chromium.org [Thu, 3 Apr 2014 13:01:22 +0000 (13:01 +0000)]
Fix bug entry and quotation marks in merge-to-branch.

This fixes usage of quotation marks inside titles of merged patches.
This also fixes aggregation of empty or "none" BUG entries.

BUG=
R=jarin@chromium.org

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

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

10 years agoAdd merged patches to commit title in merge-to-branch.
machenbach@chromium.org [Thu, 3 Apr 2014 12:57:33 +0000 (12:57 +0000)]
Add merged patches to commit title in merge-to-branch.

This makes it easier to grep for patches in title in the revision history.

This also removes the redundant information into which branch was merged, as this can be derived from the version number in the title now.

BUG=
R=jarin@chromium.org

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

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

10 years agoReturn MaybeHandle from NewExternalStringFrom*.
yangguo@chromium.org [Thu, 3 Apr 2014 12:41:37 +0000 (12:41 +0000)]
Return MaybeHandle from NewExternalStringFrom*.

R=ishell@chromium.org

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

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

10 years agoReland "Return MaybeHandle from NewConsString."
yangguo@chromium.org [Thu, 3 Apr 2014 12:30:37 +0000 (12:30 +0000)]
Reland "Return MaybeHandle from NewConsString."

R=ishell@chromium.org

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

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

10 years agoReturn MaybeHandle from NewRaw???String.
yangguo@chromium.org [Thu, 3 Apr 2014 12:30:08 +0000 (12:30 +0000)]
Return MaybeHandle from NewRaw???String.

R=ishell@chromium.org

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

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

10 years agoRevert r20474
mvstanton@chromium.org [Thu, 3 Apr 2014 12:27:24 +0000 (12:27 +0000)]
Revert r20474

This reverts commit r20474 due to an x64 release issue.

R=yangguo@chromium.org

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

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

10 years agoUse premordial Object.isSealed/isFrozen in builtins.
mstarzinger@chromium.org [Thu, 3 Apr 2014 12:23:35 +0000 (12:23 +0000)]
Use premordial Object.isSealed/isFrozen in builtins.

R=mvstanton@chromium.org

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

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

10 years agoFixed environment assignment for LCheckNonSmi.
svenpanne@chromium.org [Thu, 3 Apr 2014 12:12:28 +0000 (12:12 +0000)]
Fixed environment assignment for LCheckNonSmi.

This fixes browsing facebook.com with a debug version of Chrome.

TBR=ulan@chromium.org

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

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

10 years agoRevert "Return MaybeHandle from NewConsString."
yangguo@chromium.org [Thu, 3 Apr 2014 12:09:14 +0000 (12:09 +0000)]
Revert "Return MaybeHandle from NewConsString."

This reverts r20473.

R=mvstanton@chromium.org

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

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

10 years agoFunction calls are handled with a LoadIC and a FunctionCallStub. This works well...
mvstanton@chromium.org [Thu, 3 Apr 2014 11:41:03 +0000 (11:41 +0000)]
Function calls are handled with a LoadIC and a FunctionCallStub. This works well, but we can create a platform to gather custom feedback by inventing a CallIC. CallIC takes a JSFunction as input, maintains UNINIT/MONO/MEGA state in a feedback slot, and engages in limited patching for the most efficient code.

The change creates a degrade in NBody tests, but a follow-on CL addresses it by using this custom feedback platform to give a 45% improvement.

R=verwaest@chromium.org

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

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

10 years agoReturn MaybeHandle from NewConsString.
yangguo@chromium.org [Thu, 3 Apr 2014 11:38:01 +0000 (11:38 +0000)]
Return MaybeHandle from NewConsString.

R=ishell@chromium.org

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

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

10 years agoWhen freezing global object, go through the property cell
jarin@chromium.org [Thu, 3 Apr 2014 10:43:56 +0000 (10:43 +0000)]
When freezing global object, go through the property cell

R=verwaest@chromium.org
BUG=

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

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

10 years agoFix approximation of CanDeoptimize() and other small store elimination fixes.
svenpanne@chromium.org [Thu, 3 Apr 2014 10:39:04 +0000 (10:39 +0000)]
Fix approximation of CanDeoptimize() and other small store elimination fixes.

R=titzer@chromium.org

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

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

10 years agoAdd version number to commit message in merge-to-branch.
machenbach@chromium.org [Thu, 3 Apr 2014 09:42:18 +0000 (09:42 +0000)]
Add version number to commit message in merge-to-branch.

This is a step towards automatically rolling arbitrary trunk revisions into Chromium.

This also deprecates the bash scripts as they now start to divert.

BUG=
R=jarin@chromium.org

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

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

10 years agoPartial recover from performance degradation after handlification of ElementsAccessor...
ishell@chromium.org [Thu, 3 Apr 2014 09:12:59 +0000 (09:12 +0000)]
Partial recover from performance degradation after handlification of ElementsAccessor::CopyElements (r20312).

R=yangguo@chromium.org

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

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

10 years agoAdd API for adding and removing CallCompletedCallbacks to Isolate
jochen@chromium.org [Thu, 3 Apr 2014 07:51:27 +0000 (07:51 +0000)]
Add API for adding and removing CallCompletedCallbacks to Isolate

The API currently just forwards to the global methods. A follow-up
change will move the callback handling to the Isolate and deprecate the
global versions.

BUG=
R=dcarney@chromium.org, svenpanne@chromium.org
LOG=n

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

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

10 years agoMake build/gyp_v8 cope with ninja on linux
jochen@chromium.org [Thu, 3 Apr 2014 07:40:32 +0000 (07:40 +0000)]
Make build/gyp_v8 cope with ninja on linux

ninja doesn't support/need the output dir and generator dir flags

BUG=v8:3252
R=machenbach@chromium.org
LOG=n

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

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

10 years agoDo not generate LDummyUse instruction for HCapturedObject
jarin@chromium.org [Thu, 3 Apr 2014 07:35:13 +0000 (07:35 +0000)]
Do not generate LDummyUse instruction for HCapturedObject

LDummyUse confuses the register allocator (since there is no definition
for the use).

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoCheck in Lithium that allocation size in Smi range.
jarin@chromium.org [Thu, 3 Apr 2014 07:04:46 +0000 (07:04 +0000)]
Check in Lithium that allocation size in Smi range.

This is to avoid triggering an assertion from Smi::FromInt. The
generated code is unreachable, so it is not a real bug.

R=ulan@chromium.org
BUG=

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

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

10 years agoIntroduce MaybeHandle to police exception checking in handlified code.
yangguo@chromium.org [Thu, 3 Apr 2014 05:57:43 +0000 (05:57 +0000)]
Introduce MaybeHandle to police exception checking in handlified code.

R=ishell@chromium.org

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

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

10 years agoMIPS: Check that environments assigned via AssignEnvironment are actually used.
palfia@homejinni.com [Wed, 2 Apr 2014 22:18:22 +0000 (22:18 +0000)]
MIPS: Check that environments assigned via AssignEnvironment are actually used.

Port r20430 (e9457854)

Original commit message:
Check that environments assigned via AssignEnvironment are actually used.

Removed some temporary marker comments on the way.

BUG=
R=plind44@gmail.com

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

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

10 years agoMIPS: Make invalid LHSs that are calls late errors.
palfia@homejinni.com [Wed, 2 Apr 2014 22:17:25 +0000 (22:17 +0000)]
MIPS: Make invalid LHSs that are calls late errors.

Port r20428 (7a071766)

Original commit message:
Necessary for web legacy compatibility.

Also fold in additional strict mode checks into LHS checks.
Minor constness clean-ups on the way.

BUG=
R=rossberg@chromium.org

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

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

10 years agoARM64: Fix and improve atomic operations.
alexandre.rames@arm.com [Wed, 2 Apr 2014 16:37:33 +0000 (16:37 +0000)]
ARM64: Fix and improve atomic operations.

* The 'compare and swap' operations should enforce memory ordering even when
  the exchange does not occur.

* The exclusive monitor does not need to be cleared by CLREX if a LDRX was
  not followed by a matching STREX.

* Use LDAR and STLR where possible.

* Use the 'I' and 'J' constraints to hint for constants valid for immediate
  values.

R=jfb@chromium.org, rmcilroy@chromium.org, ulan@chromium.org

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

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

10 years agoRemove dead Object::GetPropertyOrFail.
mstarzinger@chromium.org [Wed, 2 Apr 2014 16:36:16 +0000 (16:36 +0000)]
Remove dead Object::GetPropertyOrFail.

R=verwaest@chromium.org

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

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

10 years agoARM64: Avoid iterating through unresolved branches information when unnecessary.
alexandre.rames@arm.com [Wed, 2 Apr 2014 16:31:58 +0000 (16:31 +0000)]
ARM64: Avoid iterating through unresolved branches information when unnecessary.

R=ulan@chromium.org

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

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

10 years agoARM64: Fix cctest/test-disasm-arm64/debug on real hardware.
alexandre.rames@arm.com [Wed, 2 Apr 2014 15:45:13 +0000 (15:45 +0000)]
ARM64: Fix cctest/test-disasm-arm64/debug on real hardware.

Without the 'BREAK' parameter, no instruction is generated when we are not
running with the simulator.

R=ulan@chromium.org

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

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

10 years agoFix assert in Runtime_SetIsObserved.
mstarzinger@chromium.org [Wed, 2 Apr 2014 14:47:26 +0000 (14:47 +0000)]
Fix assert in Runtime_SetIsObserved.

R=rafaelw@chromium.org
BUG=chromium:352664
LOG=N

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

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

10 years agoReplace CopyMap(constructor->initial_map()) by Map::Create(constructor)
verwaest@chromium.org [Wed, 2 Apr 2014 13:30:36 +0000 (13:30 +0000)]
Replace CopyMap(constructor->initial_map()) by Map::Create(constructor)

BUG=
R=ulan@chromium.org

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

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

10 years agotools: strip whitespace in gen-postmortem-metadata.py
jkummerow@chromium.org [Wed, 2 Apr 2014 13:04:08 +0000 (13:04 +0000)]
tools: strip whitespace in gen-postmortem-metadata.py

R=jkummerow@chromium.org

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

Patch from Ben Noordhuis <ben@strongloop.com>.

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

10 years agoRemove Apple-only GCC_WARN_ABOUT_MISSING_NEWLINE
jkummerow@chromium.org [Wed, 2 Apr 2014 12:55:22 +0000 (12:55 +0000)]
Remove Apple-only GCC_WARN_ABOUT_MISSING_NEWLINE

R=jkummerow@chromium.org

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

Patch from Ben Noordhuis <ben@strongloop.com>.

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

10 years agoMake stray 'return' an early error
rossberg@chromium.org [Wed, 2 Apr 2014 12:38:01 +0000 (12:38 +0000)]
Make stray 'return' an early error

As required by the spec, and implemented by other browsers.

(Plus minor clean-up for redeclaration TypeErrors.)

R=marja@chromium.org
BUG=
LOG=Y

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

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

10 years agoFix HGraphBuilder::BuildAddStringLengths
jkummerow@chromium.org [Wed, 2 Apr 2014 12:24:42 +0000 (12:24 +0000)]
Fix HGraphBuilder::BuildAddStringLengths

length == String::kMaxLength is fine and should not bail out.

BUG=chromium:357052
LOG=n
R=yangguo@chromium.org

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

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

10 years agoRemove V8_INLINE from v8-util.h.
vogelheim@chromium.org [Wed, 2 Apr 2014 12:07:10 +0000 (12:07 +0000)]
Remove V8_INLINE from v8-util.h.

(These have been causing compilation problems on some
platforms. For VS, V8_INLINE turns into 'force inline',
which will then cause a problem when the compiler won't
actually inline. Search for "C4714 warning" for details.)

BUG=
R=jochen@chromium.org

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

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

10 years agoCheck that environments assigned via AssignEnvironment are actually used.
svenpanne@chromium.org [Wed, 2 Apr 2014 11:30:13 +0000 (11:30 +0000)]
Check that environments assigned via AssignEnvironment are actually used.

Removed some temporary marker comments on the way.

R=bmeurer@chromium.org

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

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

10 years agoShow references from weak containers as weak in heap snapshots.
alph@chromium.org [Wed, 2 Apr 2014 11:19:53 +0000 (11:19 +0000)]
Show references from weak containers as weak in heap snapshots.

BUG=356590
LOG=Y
R=ulan@chromium.org, yurys@chromium.org

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

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

10 years agoMake invalid LHSs that are calls late errors
rossberg@chromium.org [Wed, 2 Apr 2014 11:03:05 +0000 (11:03 +0000)]
Make invalid LHSs that are calls late errors

Necessary for web legacy compatibility.

Also fold in additional strict mode checks into LHS checks.
Minor constness clean-ups on the way.

R=marja@chromium.org
BUG=chromium:358346
LOG=Y

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

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

10 years agoUse the correct natives in messages.js
yangguo@chromium.org [Wed, 2 Apr 2014 08:21:37 +0000 (08:21 +0000)]
Use the correct natives in messages.js

R=dslomov@chromium.org

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

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

10 years agoLazily initialize the target map list in IC.
ulan@chromium.org [Wed, 2 Apr 2014 07:59:54 +0000 (07:59 +0000)]
Lazily initialize the target map list in IC.

This makes sure that we keep the target map list alive in the handle scope during IC computation.

BUG=
R=verwaest@chromium.org

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

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

10 years agoFix auto-roll configuration.
machenbach@chromium.org [Wed, 2 Apr 2014 07:13:17 +0000 (07:13 +0000)]
Fix auto-roll configuration.

TBR=jarin@chromium.org
BUG=

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

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

10 years agoAdd execution permission to auto-roll script.
machenbach@chromium.org [Wed, 2 Apr 2014 07:04:53 +0000 (07:04 +0000)]
Add execution permission to auto-roll script.

TBR=jarin@chromium.org
BUG=

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

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

10 years agoAdd unhandlified versions of Of() and NowOf().
bmeurer@chromium.org [Wed, 2 Apr 2014 07:01:43 +0000 (07:01 +0000)]
Add unhandlified versions of Of() and NowOf().

R=svenpanne@chromium.org

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

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

10 years agoImplement auto-roll script.
machenbach@chromium.org [Wed, 2 Apr 2014 06:59:25 +0000 (06:59 +0000)]
Implement auto-roll script.

This script will (1) check if there is an active roll on rietveld (2) check if there is a trunk revision ready to be rolled and (3) call the chromium_roll script, creating a roll CL. The script will be called regularly through a cron job.

BUG=
R=jarin@chromium.org

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

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

10 years agoIntroduce ReadPositionFromRegister in x64 Regexp Macro Assembler
haitao.feng@intel.com [Wed, 2 Apr 2014 03:01:11 +0000 (03:01 +0000)]
Introduce ReadPositionFromRegister in x64 Regexp Macro Assembler

R=verwaest@chromium.org

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

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

10 years agoAdjust various constants for x32 port
haitao.feng@intel.com [Wed, 2 Apr 2014 02:34:50 +0000 (02:34 +0000)]
Adjust various constants for x32 port

R=verwaest@chromium.org

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

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

10 years agoMIPS: Consistently use a separate Lithium instruction for flooring division.
palfia@homejinni.com [Tue, 1 Apr 2014 23:43:47 +0000 (23:43 +0000)]
MIPS: Consistently use a separate Lithium instruction for flooring division.

Port r20395 (5b802048)

Original commit message:
Previously we tried to share some code on by a slightly confusing re-use
of LDivI for a (general) flooring division. Now we cleanly separate
concerns, just like for the rest of the division-like operations. Note
that ARM64 already did it this way.

If we really want to save some code, we can introduce some macro
assembler instructions and/or helper functions in the code generator in
a future CL, but we should really try to avoid being "clever" to save
just a few lines of trivial code. Effort != complexity. :-)

Renamed some related Lithium operands on the way for more consistency.

BUG=
R=plind44@gmail.com

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

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

10 years agoMIPS: Only assign environments when they are actually needed.
palfia@homejinni.com [Tue, 1 Apr 2014 23:42:55 +0000 (23:42 +0000)]
MIPS: Only assign environments when they are actually needed.

Port r20376 (2c4baaf5)

BUG=
R=plind44@gmail.com

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

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

10 years agoSkip cctest/test-lockers/MultithreadedParallelIsolates on windows
jochen@chromium.org [Tue, 1 Apr 2014 19:20:31 +0000 (19:20 +0000)]
Skip cctest/test-lockers/MultithreadedParallelIsolates on windows

It's already marked as FAIL, PASS everywhere anyways.

BUG=v8:3215
LOG=n
TBR=machenbach@chromium.org

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

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

10 years agoRemove V8_INLINE to prevent C4714 warning under Win64.
jochen@chromium.org [Tue, 1 Apr 2014 18:04:06 +0000 (18:04 +0000)]
Remove V8_INLINE to prevent C4714 warning under Win64.

BUG=
R=jochen@chromium.org

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

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

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

10 years agoRemove Factory::CopyMap(map) in favor of Map::Copy(map)
verwaest@chromium.org [Tue, 1 Apr 2014 17:43:20 +0000 (17:43 +0000)]
Remove Factory::CopyMap(map) in favor of Map::Copy(map)

BUG=
R=ulan@chromium.org

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

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

10 years agoSupport typed arrays in IsMoreGeneralElementsKindTransition.
dslomov@chromium.org [Tue, 1 Apr 2014 16:41:35 +0000 (16:41 +0000)]
Support typed arrays in IsMoreGeneralElementsKindTransition.

R=verwaest@chromium.org
BUG=357054
LOG=Y

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

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

10 years agoSmi immediates are not supported on x64. Do not use it.
yangguo@chromium.org [Tue, 1 Apr 2014 15:32:06 +0000 (15:32 +0000)]
Smi immediates are not supported on x64. Do not use it.

R=jkummerow@chromium.org
BUG=358059
LOG=N

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

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

10 years agoPreParser fix: propagate reference erros properly.
marja@chromium.org [Tue, 1 Apr 2014 14:17:43 +0000 (14:17 +0000)]
PreParser fix: propagate reference erros properly.

For example, invalid left hand sides are reference errors. PreParser didn't use
to produce this error ever, so the code for propagating reference errors
properly was missing, and reference errors turned into syntax errors.

R=rossberg@chromium.org
BUG=

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

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

10 years agoMonomorphic prototype failures should be reserved for already-seen keys.
mvstanton@chromium.org [Tue, 1 Apr 2014 14:16:54 +0000 (14:16 +0000)]
Monomorphic prototype failures should be reserved for already-seen keys.

We incorrectly mark a KeyedStoreIC miss as a monomorphic prototype
failure even though it's the first time a particular (string) key has
been seen.

BUG=358088
R=verwaest@chromium.org
LOG=N

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

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

10 years agoUpdate tryserver configuration with new linux and arm bots.
machenbach@chromium.org [Tue, 1 Apr 2014 13:43:32 +0000 (13:43 +0000)]
Update tryserver configuration with new linux and arm bots.

BUG=353487
TBR=jarin@chromium.org
LOG=n

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

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

10 years agoProvide Type::Contains methods.
rossberg@chromium.org [Tue, 1 Apr 2014 13:11:12 +0000 (13:11 +0000)]
Provide Type::Contains methods.

Also, rename all *Currently methods to Now*.

R=bmeurer@chromium.org
BUG=

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

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