platform/upstream/v8.git
10 years agoAdd timestamps to CPU profile samples.
alph@chromium.org [Fri, 25 Apr 2014 18:53:06 +0000 (18:53 +0000)]
Add timestamps to CPU profile samples.

BUG=363976
LOG=Y
R=bmeurer@chromium.org, yurys@chromium.org

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

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

10 years agoFix for a GC-stress failures after r20987.
ishell@chromium.org [Fri, 25 Apr 2014 16:02:50 +0000 (16:02 +0000)]
Fix for a GC-stress failures after r20987.

R=verwaest@chromium.org

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

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

10 years agoMIPS: Unify and simplify the FastCloneShallowArrayStub.
plind44@gmail.com [Fri, 25 Apr 2014 15:44:01 +0000 (15:44 +0000)]
MIPS: Unify and simplify the FastCloneShallowArrayStub.

Port r20974 (5de4367)

Original commit message:
- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.

BUG=
R=plind44@gmail.com

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

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

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

10 years agoRuntime_KeyedGetProperty handlified.
ishell@chromium.org [Fri, 25 Apr 2014 14:14:25 +0000 (14:14 +0000)]
Runtime_KeyedGetProperty handlified.

R=yangguo@chromium.org

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

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

10 years agoARM64: Fix LCodeGen::ToOperand32.
Jacob.Bramley@arm.com [Fri, 25 Apr 2014 14:07:45 +0000 (14:07 +0000)]
ARM64: Fix LCodeGen::ToOperand32.

This fixes the following generated code sequence:
  movn w1, #0     // Synthesize -1.
  cmp w0, w1

With a properly-constructed Operand, the MacroAssembler can optimize it
as follows:
  cmn w0, #1

BUG=
R=ulan@chromium.org

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

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

10 years agoExpose promise status through promise mirror.
yangguo@chromium.org [Fri, 25 Apr 2014 14:01:01 +0000 (14:01 +0000)]
Expose promise status through promise mirror.

R=aandrey@chromium.org, rossberg@chromium.org, yurys@chromium.org
BUG=v8:3093
LOG=Y

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

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

10 years agoHashTableKey::AsObject() handlified.
ishell@chromium.org [Fri, 25 Apr 2014 13:59:33 +0000 (13:59 +0000)]
HashTableKey::AsObject() handlified.

R=yangguo@chromium.org

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

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

10 years ago*Shape::AsObject() are no longer used - removed.
ishell@chromium.org [Fri, 25 Apr 2014 13:50:19 +0000 (13:50 +0000)]
*Shape::AsObject() are no longer used - removed.

R=yangguo@chromium.org

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

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

10 years agoRemove static CallCompletedCallback handlers
jochen@chromium.org [Fri, 25 Apr 2014 13:49:22 +0000 (13:49 +0000)]
Remove static CallCompletedCallback handlers

BUG=none
R=svenpanne@chromium.org
LOG=y

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

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

10 years agoEnter a description of the change.
jochen@chromium.org [Fri, 25 Apr 2014 13:47:01 +0000 (13:47 +0000)]
Enter a description of the change.
Reland 20968 - "Merge v8utils.* and utils.*"

>  BUG=none
>  R=mstarzinger@chromium.org
>  LOG=n
>
>  Review URL: https://codereview.chromium.org/256753002

BUG=none
LOG=n
TBR=mstarzinger@chromium.org

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

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

10 years agoReland 20962 "Break cyclic reference between utils and platform."
jochen@chromium.org [Fri, 25 Apr 2014 13:43:58 +0000 (13:43 +0000)]
Reland 20962 "Break cyclic reference between utils and platform."

Don't use OS::MemCopy in BitCast. It's crucial that the compiler can
optimize the memcpy away.

>  Platform includes utils.h for the definition of Vector<>, so utils.h
>  can't include platform.h and has to use memcpy instead of OS::MemCopy.
>
>  We split out Vector<> into its own header to break this cycle
>  dependency.
>
>  BUG=none
>  R=mstarzinger@chromium.org
>  LOG=n
>
>  Review URL: https://codereview.chromium.org/251753002

TBR=jkummerow@chromium.org
LOG=n
BUG=none

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

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

10 years agoObjectHashTable's key and WeakHashTable's key types are now Handle<Object> instead...
ishell@chromium.org [Fri, 25 Apr 2014 13:35:03 +0000 (13:35 +0000)]
ObjectHashTable's key and WeakHashTable's key types are now Handle<Object> instead of Object*.

R=yangguo@chromium.org

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

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

10 years agoDictionary::SetEntry() and Dictionary::AddEntry() handlified.
ishell@chromium.org [Fri, 25 Apr 2014 13:21:16 +0000 (13:21 +0000)]
Dictionary::SetEntry() and Dictionary::AddEntry() handlified.

R=yangguo@chromium.org

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

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

10 years agoHashTable::New() handlified.
ishell@chromium.org [Fri, 25 Apr 2014 13:06:21 +0000 (13:06 +0000)]
HashTable::New() handlified.

R=yangguo@chromium.org

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

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

10 years agoReland r20960: "HashTable::EnsureCapacity() handlified."
ishell@chromium.org [Fri, 25 Apr 2014 12:59:07 +0000 (12:59 +0000)]
Reland r20960: "HashTable::EnsureCapacity() handlified."

R=yangguo@chromium.org

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

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

10 years agoFix materialization of accessor frames with captured receivers
jarin@chromium.org [Fri, 25 Apr 2014 12:58:15 +0000 (12:58 +0000)]
Fix materialization of accessor frames with captured receivers

I have fixed skipping of the receiver object to materialize captured
objects. This is done with a new DoTranslateSkip method.

We should consider unifying DoTranslateSkip, DoTranslateObject and
DoTranslateCommand as they do the almost the same thing - they only
differ in where they store the result.

The change also turns bunch of ASSERTs into CHECKs.

R=mstarzinger@chromium.org
BUG=359441
TEST=test/mjsunit/regress/regress-359441.js
LOG=N

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

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

10 years agoMove JSON-stringify webkit test to V8.
ulan@chromium.org [Fri, 25 Apr 2014 12:49:55 +0000 (12:49 +0000)]
Move JSON-stringify webkit test to V8.

BUG=367089
LOG=N
R=machenbach@chromium.org

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

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

10 years agoRevert 20962 "Break cyclic reference between utils and platform."
jochen@chromium.org [Fri, 25 Apr 2014 12:23:11 +0000 (12:23 +0000)]
Revert 20962 "Break cyclic reference between utils and platform."

>  Platform includes utils.h for the definition of Vector<>, so utils.h
>  can't include platform.h and has to use memcpy instead of OS::MemCopy.
>
>  We split out Vector<> into its own header to break this cycle
>  dependency.
>
>  BUG=none
>  R=mstarzinger@chromium.org
>  LOG=n
>
>  Review URL: https://codereview.chromium.org/251753002

BUG=none
LOG=n
TBR=danno@chromium.org

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

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

10 years agoRevert 20968 - "Merge v8utils.* and utils.*"
jochen@chromium.org [Fri, 25 Apr 2014 12:21:32 +0000 (12:21 +0000)]
Revert 20968 - "Merge v8utils.* and utils.*"

>  BUG=none
>  R=mstarzinger@chromium.org
>  LOG=n
>
>  Review URL: https://codereview.chromium.org/256753002

BUG=none
LOG=n
TBR=danno@chromium.org

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

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

10 years agoUnify and simplify the FastCloneShallowArrayStub
danno@chromium.org [Fri, 25 Apr 2014 11:54:01 +0000 (11:54 +0000)]
Unify and simplify the FastCloneShallowArrayStub

- Don't bake in length/capacity into full codegen calls of stubs,
  allowing boilerplates to increase their capacity without regenerating
  code.
- Unify all variants of the clone stub into a single,
  length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
  therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.

R=mvstanton@chromium.org

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

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

10 years agoFix for potential memory leak after putting to WeakObjectToCodeDependency table.
ishell@chromium.org [Fri, 25 Apr 2014 11:40:17 +0000 (11:40 +0000)]
Fix for potential memory leak after putting to WeakObjectToCodeDependency table.

R=ulan@chromium.org

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

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

10 years agoLet releases script retrieve information about chromium branches.
machenbach@chromium.org [Fri, 25 Apr 2014 11:33:19 +0000 (11:33 +0000)]
Let releases script retrieve information about chromium branches.

BUG=
R=jarin@chromium.org

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

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

10 years agoPreserve Smi representation of non-escaping fields.
jarin@chromium.org [Fri, 25 Apr 2014 11:29:02 +0000 (11:29 +0000)]
Preserve Smi representation of non-escaping fields.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoFix compilation with clang 5.1 on OS X.
svenpanne@chromium.org [Fri, 25 Apr 2014 11:13:37 +0000 (11:13 +0000)]
Fix compilation with clang 5.1 on OS X.

R=svenpanne@chromium.org

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

Patch from Benedikt Meurer <bmeurer@chromium.org>.

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

10 years agoAlways include debugger support.
yangguo@chromium.org [Fri, 25 Apr 2014 11:00:37 +0000 (11:00 +0000)]
Always include debugger support.

Motivation: we do not have test coverage for debuggersupport=off.

R=jkummerow@chromium.org

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

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

10 years agoMerge v8utils.* and utils.*
jochen@chromium.org [Fri, 25 Apr 2014 10:57:34 +0000 (10:57 +0000)]
Merge v8utils.* and utils.*

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

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

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

10 years agoDon't adopt the AST id from previous if id is none, since previous may have mismatchi...
verwaest@chromium.org [Fri, 25 Apr 2014 09:52:11 +0000 (09:52 +0000)]
Don't adopt the AST id from previous if id is none, since previous may have mismatching expected stack height.
Additionally, harden merging of simulates after instructions with side effects and ensure there's a simulate before HEnterInlined.

R=jarin@chromium.org

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

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

10 years agoRemove lazy sweeping.
hpayer@chromium.org [Fri, 25 Apr 2014 09:50:42 +0000 (09:50 +0000)]
Remove lazy sweeping.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoParser: Introduce StatementList + NewStatementList()
marja@chromium.org [Fri, 25 Apr 2014 09:44:20 +0000 (09:44 +0000)]
Parser: Introduce StatementList + NewStatementList()

Adds new Traits::Type::StatementList definitions both for Parser and
PreParser, and the corresponding NewStatementList() factory function.
This is needed to be able to define in ParserBase parsing functions
that return and manipulate lists of statements.

Moving and renaming PreParser::Statement to PreParserStatement is also
needed so its definition is available earlier for PreParserStatementList
to use it.

R=marja@chromium.org

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

Patch from Adrian Perez de Castro <aperez@igalia.com>.

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

10 years agoAdd tests for generator/debugger interaction
wingo@igalia.com [Fri, 25 Apr 2014 09:35:41 +0000 (09:35 +0000)]
Add tests for generator/debugger interaction

R=yangguo@chromium.org
BUG=

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

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

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

10 years agoAdded an Isolate* field to NoTrackDoubleFieldsForSerializerScope, PlatformFeatureScop...
svenpanne@chromium.org [Fri, 25 Apr 2014 08:40:23 +0000 (08:40 +0000)]
Added an Isolate* field to NoTrackDoubleFieldsForSerializerScope, PlatformFeatureScope and BinaryOpIC::State.

The serializer state and even the CPU features will be per-Isolate
later. Currently we get away with global state, because mksnapshot
runs single-threaded and has only 1 Isolate, but this will change.
Furthermore, these changes are yet another prerequisite for removing a
catch-22 at initialization time when we try to enable serialization.

This CL is similar in spirit to r20919, BTW.

BUG=359977
LOG=y
R=mstarzinger@chromium.org

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

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

10 years agoBreak cyclic reference between utils and platform.
jochen@chromium.org [Fri, 25 Apr 2014 08:37:18 +0000 (08:37 +0000)]
Break cyclic reference between utils and platform.

Platform includes utils.h for the definition of Vector<>, so utils.h
can't include platform.h and has to use memcpy instead of OS::MemCopy.

We split out Vector<> into its own header to break this cycle
dependency.

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

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

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

10 years agoRevert "HashTable::EnsureCapacity() handlified."
ishell@chromium.org [Fri, 25 Apr 2014 08:31:21 +0000 (08:31 +0000)]
Revert "HashTable::EnsureCapacity() handlified."

This reverts commit r20960 for breaking Windows build.

TBR=yangguo@chromium.org

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

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

10 years agoHashTable::EnsureCapacity() handlified.
ishell@chromium.org [Fri, 25 Apr 2014 08:18:24 +0000 (08:18 +0000)]
HashTable::EnsureCapacity() handlified.

R=yangguo@chromium.org

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

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

10 years agoWeakHashTable::Put() and callers handlified.
ishell@chromium.org [Fri, 25 Apr 2014 08:10:44 +0000 (08:10 +0000)]
WeakHashTable::Put() and callers handlified.

R=yangguo@chromium.org

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

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

10 years agoDictionary::DeleteProperty() handlified.
ishell@chromium.org [Fri, 25 Apr 2014 08:03:52 +0000 (08:03 +0000)]
Dictionary::DeleteProperty() handlified.

R=yangguo@chromium.org

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

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

10 years agoDictionary::New() handlified.
ishell@chromium.org [Fri, 25 Apr 2014 07:56:13 +0000 (07:56 +0000)]
Dictionary::New() handlified.

R=yangguo@chromium.org

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

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

10 years agoTrigger debug event on not yet caught exception in promises.
yangguo@chromium.org [Fri, 25 Apr 2014 07:03:05 +0000 (07:03 +0000)]
Trigger debug event on not yet caught exception in promises.

R=aandrey@chromium.org, rossberg@chromium.org, yurys@chromium.org
BUG=v8:3093
LOG=Y

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

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

10 years agoUnbreak vtunejit=on.
svenpanne@chromium.org [Fri, 25 Apr 2014 06:30:15 +0000 (06:30 +0000)]
Unbreak vtunejit=on.

BUG=v8:3288
LOG=y
R=yangguo@chromium.org

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

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

10 years agoARM64: slightly modify weight for profiling counter
m.m.capewell@googlemail.com [Thu, 24 Apr 2014 17:20:34 +0000 (17:20 +0000)]
ARM64: slightly modify weight for profiling counter

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

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

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

10 years agoFix for build issue on Mac introduced in r20948.
ishell@chromium.org [Thu, 24 Apr 2014 15:45:44 +0000 (15:45 +0000)]
Fix for build issue on Mac introduced in r20948.

TBR=yangguo@chromium.org

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

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

10 years agoDictionary::GenerateNewEnumerationIndices() and Dictionary::EnsureCapacity() handlified.
ishell@chromium.org [Thu, 24 Apr 2014 15:33:40 +0000 (15:33 +0000)]
Dictionary::GenerateNewEnumerationIndices() and Dictionary::EnsureCapacity() handlified.

R=yangguo@chromium.org

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

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

10 years agoMark the simulate before EnterInlined with BailoutId::None(), and set ReturnId on...
verwaest@chromium.org [Thu, 24 Apr 2014 15:20:53 +0000 (15:20 +0000)]
Mark the simulate before EnterInlined with BailoutId::None(), and set ReturnId on EnterInlined. When merging simulates into the simulate before enter-inlined, adopt the last AST id that gets merged into it.

BUG=v8:3282
LOG=n
R=titzer@chromium.org

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

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

10 years agoDictionary::Add() handlified.
ishell@chromium.org [Thu, 24 Apr 2014 15:16:26 +0000 (15:16 +0000)]
Dictionary::Add() handlified.

R=yangguo@chromium.org

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

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

10 years agoNameDictionary's key type is now Handle<Name> instead of Name*.
ishell@chromium.org [Thu, 24 Apr 2014 14:59:09 +0000 (14:59 +0000)]
NameDictionary's key type is now Handle<Name> instead of Name*.

R=yangguo@chromium.org

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

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

10 years agoARM64: Slightly improve MacroAssembler::Allocate.
Jacob.Bramley@arm.com [Thu, 24 Apr 2014 14:55:28 +0000 (14:55 +0000)]
ARM64: Slightly improve MacroAssembler::Allocate.

BUG=
R=ulan@chromium.org

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

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

10 years agoMIPS: CodeStubs contain their corresponding Isolate* now. (part 2)
plind44@gmail.com [Thu, 24 Apr 2014 14:51:25 +0000 (14:51 +0000)]
MIPS: CodeStubs contain their corresponding Isolate* now. (part 2)

Port r20940 (a5dde97)

Original commit message:
This CL mechanically removes all useless Isolate* parameters from code
stub functions, making things quite a bit simpler.

BUG=359977
LOG=y
R=plind44@gmail.com

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

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

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

10 years agoMIPS: CodeStubs contain their corresponding Isolate* now. (part 1)
plind44@gmail.com [Thu, 24 Apr 2014 14:42:33 +0000 (14:42 +0000)]
MIPS: CodeStubs contain their corresponding Isolate* now. (part 1)

Port r20919 (aa51355)

Original commit message:
This is a purely mechanical change, adding an Isolate* to the CodeStub
constructor and a corresponding field plus a getter. A few methods in
CodeStub and its subclasses can be simplified now, but this is done in
a separate CL.

The underlying reason apart from simplicity is that deep down in the
call chain we need to detect if the serializer is active or not. This
information will be part of the Isolate, not a global variable with
funky synchronization primitives around it (which is fundamentally
wrong and the underlying cause for race conditions and a catch-22
during initialization).

BUG=359977
LOG=y
R=plind44@gmail.com

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

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

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

10 years agoRefactor function.arguments accessor.
ulan@chromium.org [Thu, 24 Apr 2014 14:23:15 +0000 (14:23 +0000)]
Refactor function.arguments accessor.

This prepares for API-style accessor conversion.

BUG=
R=yangguo@chromium.org

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

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

10 years agoUpdate .gitignore wrt promise test files.
yangguo@chromium.org [Thu, 24 Apr 2014 14:15:06 +0000 (14:15 +0000)]
Update .gitignore wrt promise test files.

R=jkummerow@chromium.org

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

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

10 years agoImplement --omit, --raw_[context_]file=... for mksnapshot tool.
vogelheim@chromium.org [Thu, 24 Apr 2014 12:31:10 +0000 (12:31 +0000)]
Implement --omit, --raw_[context_]file=... for mksnapshot tool.

These switches are analogous to --omit and --raw for js2c.py.
The goal it to allow embedders to externally load all (or generate) the V8 startup data.

There's a bit of gratuitous refactoring with the writing logic that helped me understand the code. Let me know if it's not an improvement.

BUG=355539
LOG=N
R=jochen@chromium.org, svenpanne@chromium.org

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

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

10 years agoCodeStubs contain their corresponding Isolate* now. (part 2)
svenpanne@chromium.org [Thu, 24 Apr 2014 12:07:40 +0000 (12:07 +0000)]
CodeStubs contain their corresponding Isolate* now. (part 2)

This CL mechanically removes all useless Isolate* parameters from code
stub functions, making things quite a bit simpler.

BUG=359977
LOG=y
R=mstarzinger@chromium.org

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

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

10 years agoRevert "Some code cleanup, esp. includes and copyright headers."
bmeurer@chromium.org [Thu, 24 Apr 2014 11:44:22 +0000 (11:44 +0000)]
Revert "Some code cleanup, esp. includes and copyright headers."

This reverts commit r20938 for breaking the windows build.

TBR=ulan@chromium.org

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

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

10 years agoSome code cleanup, esp. includes and copyright headers.
bmeurer@chromium.org [Thu, 24 Apr 2014 11:32:48 +0000 (11:32 +0000)]
Some code cleanup, esp. includes and copyright headers.

R=svenpanne@chromium.org

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

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

10 years agoConvert function.length to API-style accessor.
ulan@chromium.org [Thu, 24 Apr 2014 11:24:13 +0000 (11:24 +0000)]
Convert function.length to API-style accessor.

TEST=mjsunit/function-length-accessor
R=yangguo@chromium.org

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

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

10 years agoHarden more runtime functions.
jkummerow@chromium.org [Thu, 24 Apr 2014 11:11:30 +0000 (11:11 +0000)]
Harden more runtime functions.

R=dslomov@chromium.org, dslomov@google.com

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

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

10 years agoDictionary::AtPut() handlified.
ishell@chromium.org [Thu, 24 Apr 2014 10:47:13 +0000 (10:47 +0000)]
Dictionary::AtPut() handlified.

R=yangguo@chromium.org

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

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

10 years agoReland r20932: "*NumberDictionary::AtNumberPut() handlified."
ishell@chromium.org [Thu, 24 Apr 2014 10:39:50 +0000 (10:39 +0000)]
Reland r20932: "*NumberDictionary::AtNumberPut() handlified."

R=yangguo@chromium.org

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

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

10 years agoRevert "*NumberDictionary::AtNumberPut() handlified."
ishell@chromium.org [Thu, 24 Apr 2014 10:17:10 +0000 (10:17 +0000)]
Revert "*NumberDictionary::AtNumberPut() handlified."

This reverts commit r20932 for breaking Mac build.

TBR=yangguo@chromium.org

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

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

10 years ago*NumberDictionary::AtNumberPut() handlified.
ishell@chromium.org [Thu, 24 Apr 2014 09:59:44 +0000 (09:59 +0000)]
*NumberDictionary::AtNumberPut() handlified.

R=yangguo@chromium.org

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

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

10 years ago*NumberDictionary::AddNumberEntry() handlified.
ishell@chromium.org [Thu, 24 Apr 2014 09:49:06 +0000 (09:49 +0000)]
*NumberDictionary::AddNumberEntry() handlified.

R=yangguo@chromium.org

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

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

10 years agoMark test-cpu-profiler/SampleWhenFrameIsNotSetup as flaky.
ulan@chromium.org [Thu, 24 Apr 2014 09:23:38 +0000 (09:23 +0000)]
Mark test-cpu-profiler/SampleWhenFrameIsNotSetup as flaky.

BUG=v8:3287
LOG=N
R=bmeurer@chromium.org

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

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

10 years agoDon't move the object start of objects on non-swept pages.
hpayer@chromium.org [Thu, 24 Apr 2014 09:04:12 +0000 (09:04 +0000)]
Don't move the object start of objects on non-swept pages.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoARM64: small fixes for ArgumentAdaptorTrampoline after r20751.
ulan@chromium.org [Thu, 24 Apr 2014 09:02:48 +0000 (09:02 +0000)]
ARM64: small fixes for ArgumentAdaptorTrampoline after r20751.

BUG=
R=jacob.bramley@arm.com

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

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

10 years ago*NumberDictionary::Set() handlified.
ishell@chromium.org [Thu, 24 Apr 2014 08:55:31 +0000 (08:55 +0000)]
*NumberDictionary::Set() handlified.

R=yangguo@chromium.org

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

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

10 years agoConvert function.prototype to API-style accessor.
ulan@chromium.org [Thu, 24 Apr 2014 08:35:53 +0000 (08:35 +0000)]
Convert function.prototype to API-style accessor.

R=yangguo@chromium.org

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

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

10 years agoTiny cleanup.
ishell@chromium.org [Thu, 24 Apr 2014 08:35:04 +0000 (08:35 +0000)]
Tiny cleanup.

R=yangguo@chromium.org

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

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

10 years agoRe-enable field type tracking by default.
bmeurer@chromium.org [Thu, 24 Apr 2014 08:27:23 +0000 (08:27 +0000)]
Re-enable field type tracking by default.

R=svenpanne@chromium.org

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

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

10 years agoRevert "Add tests for generator/debugger interaction"
bmeurer@chromium.org [Thu, 24 Apr 2014 08:26:16 +0000 (08:26 +0000)]
Revert "Add tests for generator/debugger interaction"

This reverts commit r20921 for breaking the ARM/ARM64 bots.

TBR=wingo@igalia.com

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

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

10 years agoMake DescriptorArray::IsMoreGeneralThan() and DescriptorArray::Merge() compatible...
bmeurer@chromium.org [Thu, 24 Apr 2014 08:07:14 +0000 (08:07 +0000)]
Make DescriptorArray::IsMoreGeneralThan() and DescriptorArray::Merge() compatible again.

BUG=365172
LOG=y
TEST=mjsunit/regress/regress-365172-[1-3]
R=svenpanne@chromium.org

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

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

10 years agoAdd tests for generator/debugger interaction
wingo@igalia.com [Thu, 24 Apr 2014 07:24:38 +0000 (07:24 +0000)]
Add tests for generator/debugger interaction

R=yangguo@chromium.org
BUG=

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

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

10 years agoTreat FOREIGN_TYPE as internal.
bmeurer@chromium.org [Thu, 24 Apr 2014 07:16:10 +0000 (07:16 +0000)]
Treat FOREIGN_TYPE as internal.

R=svenpanne@chromium.org

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

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

10 years agoCodeStubs contain their corresponding Isolate* now. (part 1)
svenpanne@chromium.org [Thu, 24 Apr 2014 06:25:42 +0000 (06:25 +0000)]
CodeStubs contain their corresponding Isolate* now. (part 1)

This is a purely mechanical change, adding an Isolate* to the CodeStub
constructor and a corresponding field plus a getter. A few methods in
CodeStub and its subclasses can be simplified now, but this is done in
a separate CL.

The underlying reason apart from simplicity is that deep down in the
call chain we need to detect if the serializer is active or not. This
information will be part of the Isolate, not a global variable with
funky synchronization primitives around it (which is fundamentally
wrong and the underlying cause for race conditions and a catch-22
during initialization).

BUG=359977
LOG=y
R=mstarzinger@chromium.org

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

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

10 years agoFix C++ type of Factory::NewFixedDoubleArray.
jarin@chromium.org [Thu, 24 Apr 2014 05:29:00 +0000 (05:29 +0000)]
Fix C++ type of Factory::NewFixedDoubleArray.

The change fixes the C++ type of Factory::NewFixedDoubleArray to
reflect the empty array case, where we return an empty
FixedArray (rather than FixedDoubleArray).

R=mvstanton@chromium.org
BUG=

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

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

10 years agoStringTable::LookupKey() and all callers handlified.
ishell@chromium.org [Wed, 23 Apr 2014 15:43:39 +0000 (15:43 +0000)]
StringTable::LookupKey() and all callers handlified.

R=yangguo@chromium.org

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

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

10 years agoClean up some uses of Failures and MaybeObjects.
yangguo@chromium.org [Wed, 23 Apr 2014 15:08:03 +0000 (15:08 +0000)]
Clean up some uses of Failures and MaybeObjects.

R=mstarzinger@chromium.org

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

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

10 years agoMove bug 3280 regression test to mjsunit/harmony
wingo@igalia.com [Wed, 23 Apr 2014 15:01:30 +0000 (15:01 +0000)]
Move bug 3280 regression test to mjsunit/harmony

R=yangguo@chromium.org
BUG=

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

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

10 years agoFix the Array.push simulate for non-effect context.
jarin@chromium.org [Wed, 23 Apr 2014 14:26:53 +0000 (14:26 +0000)]
Fix the Array.push simulate for non-effect context.

R=danno@google.com, danno@chromium.org
BUG=

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

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

10 years agoFix deoptimization problem with inlined Array.push()
danno@chromium.org [Wed, 23 Apr 2014 13:20:28 +0000 (13:20 +0000)]
Fix deoptimization problem with inlined Array.push()

R=jarin@chromium.org
LOG=N

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

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

10 years agoAllow Object.defineProperty to update value of an API accessor.
ulan@chromium.org [Wed, 23 Apr 2014 13:05:38 +0000 (13:05 +0000)]
Allow Object.defineProperty to update value of an API accessor.

This is needed for converting internal accessors to API accessors and can break blink tests.

BUG=
R=yangguo@chromium.org

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

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

10 years agoFix ToObject and Object.isSealed in four Array builtins.
mstarzinger@chromium.org [Wed, 23 Apr 2014 12:48:32 +0000 (12:48 +0000)]
Fix ToObject and Object.isSealed in four Array builtins.

R=mvstanton@chromium.org
TEST=mjsunit/regress/regress-builtinbust-6

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

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

10 years agoHarden DefineOrRedefineDataProperty.
ulan@chromium.org [Wed, 23 Apr 2014 12:28:50 +0000 (12:28 +0000)]
Harden DefineOrRedefineDataProperty.

R=jkummerow@chromium.org

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

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

10 years agoIntroduce .DEPS.git file to support full git checkouts
jochen@chromium.org [Wed, 23 Apr 2014 12:28:43 +0000 (12:28 +0000)]
Introduce .DEPS.git file to support full git checkouts

This is the result of running deps2git.py -d DEPS -o .DEPS.git -s -c /tmp

BUG=none
R=jkummerow@chromium.org, machenbach@chromium.org
LOG=n

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

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

10 years agoExtract common macros and start a base library
jochen@chromium.org [Wed, 23 Apr 2014 11:51:28 +0000 (11:51 +0000)]
Extract common macros and start a base library

BUG=v8:3015
R=svenpanne@chromium.org
LOG=n

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

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

10 years agoDisable field type tracking by default.
bmeurer@chromium.org [Wed, 23 Apr 2014 10:40:31 +0000 (10:40 +0000)]
Disable field type tracking by default.

BUG=365172
LOG=y
R=ulan@chromium.org

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

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

10 years agoFix tracking of computed fields when field type tracking is disabled.
bmeurer@chromium.org [Wed, 23 Apr 2014 09:41:28 +0000 (09:41 +0000)]
Fix tracking of computed fields when field type tracking is disabled.

R=svenpanne@chromium.org

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

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

10 years agoAvoid setting transitions in-place for cached maps when observed
jarin@chromium.org [Wed, 23 Apr 2014 09:21:24 +0000 (09:21 +0000)]
Avoid setting transitions in-place for cached maps when observed

R=verwaest@chromium.org
BUG=

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

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

10 years agoAvoid exposing compiler-allocated temporaries to the debugger
wingo@igalia.com [Wed, 23 Apr 2014 08:58:41 +0000 (08:58 +0000)]
Avoid exposing compiler-allocated temporaries to the debugger

R=yangguo@chromium.org
BUG=

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

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

10 years agoHandle boxed length in JSON stringify.
jarin@chromium.org [Wed, 23 Apr 2014 08:40:26 +0000 (08:40 +0000)]
Handle boxed length in JSON stringify.

Here is the test that used to fail in Smi::cast:

JSON.stringify(new Array(4000000000));

I am not adding the test because it takes huge amount of time before it
runs out of memory.

R=verwaest@chromium.org
BUG=

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

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

10 years agoSort functions in polymorphic calls based on overall profiling ticks and inlined...
bmeurer@chromium.org [Wed, 23 Apr 2014 07:07:54 +0000 (07:07 +0000)]
Sort functions in polymorphic calls based on overall profiling ticks and inlined AST size.

R=svenpanne@chromium.org

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

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

10 years agoMIPS: Return Object* instead of MaybeObject* from runtime calls.
palfia@homejinni.com [Tue, 22 Apr 2014 22:40:34 +0000 (22:40 +0000)]
MIPS: Return Object* instead of MaybeObject* from runtime calls.

Port r20888 (d6883d72)

BUG=
R=plind44@gmail.com

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

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

10 years agoFix issue with Map/SetIterator and types
adamk@chromium.org [Tue, 22 Apr 2014 18:14:46 +0000 (18:14 +0000)]
Fix issue with Map/SetIterator and types

BUG=v8:3281
LOG=N
R=jkummerow@chromium.org

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

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

10 years agoMIPS: Improve code generation for bounds checks.
plind44@gmail.com [Tue, 22 Apr 2014 16:56:42 +0000 (16:56 +0000)]
MIPS: Improve code generation for bounds checks.

Port r20872 (0e79653)

BUG=
R=plind44@gmail.com

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

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

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

10 years agoARM64: Move sign-extension to load instructions.
Jacob.Bramley@arm.com [Tue, 22 Apr 2014 15:57:04 +0000 (15:57 +0000)]
ARM64: Move sign-extension to load instructions.

The SXTW extend mode is usually free when used in a load or store
operand, but it can slightly increase the latency of an arithmetic
instruction. This patch optimises some address calculations accordingly:
  - PrepareKeyedExternalArrayOperand.
  - BuildSeqStringOperand.
  - DoStringCharFromCode.

BUG=
R=ulan@chromium.org

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

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

10 years agoUse MaybeHandles in Compiler to indicate failure instead of a null Handle.
mvstanton@chromium.org [Tue, 22 Apr 2014 14:55:47 +0000 (14:55 +0000)]
Use MaybeHandles in Compiler to indicate failure instead of a null Handle.

R=yangguo@chromium.org

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

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

10 years agoInsert HSimulate immediately after Crankshaft-inlined push.
danno@chromium.org [Tue, 22 Apr 2014 12:55:40 +0000 (12:55 +0000)]
Insert HSimulate immediately after Crankshaft-inlined push.

R=jarin@chromium.org
LOG=N

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

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

10 years agoReturn Object* instead of MaybeObject* from runtime calls.
yangguo@chromium.org [Tue, 22 Apr 2014 12:50:58 +0000 (12:50 +0000)]
Return Object* instead of MaybeObject* from runtime calls.

R=jkummerow@chromium.org

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

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

10 years agoCache maps for externalized typed array objects.
dslomov@chromium.org [Tue, 22 Apr 2014 12:24:28 +0000 (12:24 +0000)]
Cache maps for externalized typed array objects.

After this, the maps do not garbage-collect, and typed array
constructors do not deopt.

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

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

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

10 years agoContext-allocate all parameters in generators
wingo@igalia.com [Tue, 22 Apr 2014 11:34:16 +0000 (11:34 +0000)]
Context-allocate all parameters in generators

Generator function scopes have forced context allocation.  Ensure that
all variables in such scopes get context allocation -- even unused
variables.

This fixes an assertion when reifying generator scopes in the debugger.

R=yangguo@chromium.org
LOG=Y
BUG=v8:3280

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

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

10 years agoDo not avoid flattening cons string when creating a string slice.
yangguo@chromium.org [Tue, 22 Apr 2014 11:19:27 +0000 (11:19 +0000)]
Do not avoid flattening cons string when creating a string slice.

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

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

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