platform/upstream/v8.git
10 years agoLet HTransitionElementsKind take part in RestoreActualValues phase
jkummerow@chromium.org [Thu, 6 Mar 2014 12:13:49 +0000 (12:13 +0000)]
Let HTransitionElementsKind take part in RestoreActualValues phase

BUG=chromium:349853
LOG=n
R=mvstanton@chromium.org

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

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

10 years agoFix VPrintHelper used on Windows.
vegorov@chromium.org [Thu, 6 Mar 2014 11:55:47 +0000 (11:55 +0000)]
Fix VPrintHelper used on Windows.

VPrintHelper would silently ignore the stream given to it if application is in GUI mode (no console is attached) and redirect output to the debugger via OutputDebugString.

Such redirection makes sense only if passed stream is either stderr or stdout. Don't redirect any other stream to the debugger.

Reorder clauses in VPrintHelper to make condition more readable.

BUG=
R=yangguo@chromium.org

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

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

10 years agoRemove outdated assertion scope.
yangguo@chromium.org [Thu, 6 Mar 2014 11:51:53 +0000 (11:51 +0000)]
Remove outdated assertion scope.

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

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

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

10 years agoAdd quickcheck targets for modes, builds and arches.
bmeurer@chromium.org [Thu, 6 Mar 2014 10:05:33 +0000 (10:05 +0000)]
Add quickcheck targets for modes, builds and arches.

R=svenpanne@chromium.org

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

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

10 years agoFix issues with JSON stringify replacer array
yangguo@chromium.org [Thu, 6 Mar 2014 09:50:53 +0000 (09:50 +0000)]
Fix issues with JSON stringify replacer array

If the replacer array contains a property key we should include the
property even if the property is non enumerable or if it is a non own
property.

String and Number wrappers in the replacer array should be treated as
string and number values.

R=yangguo@chromium.org
BUG=v8:3200, v8:3201
LOG=Y

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

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

10 years agoUse Representation::Integer32() for smi types on 32-bit-tagged systems.
verwaest@chromium.org [Thu, 6 Mar 2014 09:49:10 +0000 (09:49 +0000)]
Use Representation::Integer32() for smi types on 32-bit-tagged systems.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoAlso delete force representations that have no uses.
verwaest@chromium.org [Thu, 6 Mar 2014 09:47:27 +0000 (09:47 +0000)]
Also delete force representations that have no uses.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.5.
titzer@chromium.org [Wed, 5 Mar 2014 15:10:32 +0000 (15:10 +0000)]
Prepare push to trunk.  Now working on version 3.25.5.

R=hpayer@chromium.org
TBR=hpayer@chromium.org

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

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

10 years agoIgnore slots buffer overflow when recording entries of the allocation sites scratchpad.
hpayer@chromium.org [Wed, 5 Mar 2014 14:04:21 +0000 (14:04 +0000)]
Ignore slots buffer overflow when recording entries of the allocation sites scratchpad.

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

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

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

10 years agoFix materialization of captured objects in adapted arguments.
jarin@chromium.org [Wed, 5 Mar 2014 12:57:18 +0000 (12:57 +0000)]
Fix materialization of captured objects in adapted arguments.

R=mstarzinger@chromium.org
BUG=348512
LOG=N

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

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

10 years agoDeoptimization fix for HPushArgument.
jarin@chromium.org [Wed, 5 Mar 2014 12:45:46 +0000 (12:45 +0000)]
Deoptimization fix for HPushArgument.

HPushArgument should never be used in a simulation environment
because the slot addresses for the arguments can be off (e.g.,
due to on-stack arguments object of an inlined caller).

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

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

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

10 years agoHandle exception when retrieving toJSON function in JSON.stringify.
yangguo@chromium.org [Wed, 5 Mar 2014 10:54:35 +0000 (10:54 +0000)]
Handle exception when retrieving toJSON function in JSON.stringify.

R=mvstanton@chromium.org
BUG=349335
LOG=N

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

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

10 years agoAdd --es-staging flag
rossberg@chromium.org [Wed, 5 Mar 2014 10:07:07 +0000 (10:07 +0000)]
Add --es-staging flag

...and remove some obsolete ones.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agox64: Fix LMathMinMax for constant Smi right-hand operands
jkummerow@chromium.org [Wed, 5 Mar 2014 09:49:07 +0000 (09:49 +0000)]
x64: Fix LMathMinMax for constant Smi right-hand operands

BUG=chromium:349079
LOG=y
R=titzer@chromium.org

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

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

10 years agoPrint properly signed displacement in disassembler.
mstarzinger@chromium.org [Wed, 5 Mar 2014 09:28:26 +0000 (09:28 +0000)]
Print properly signed displacement in disassembler.

R=titzer@chromium.org
BUG=

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

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

10 years agoFix issue with setting __proto__ on a value
mstarzinger@chromium.org [Wed, 5 Mar 2014 08:58:38 +0000 (08:58 +0000)]
Fix issue with setting __proto__ on a value

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

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

Patch from Erik Arvidsson <arv@chromium.org>.

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

10 years agoRefactoring: Make script dependencies more object-oriented in push and merge scripts.
machenbach@chromium.org [Tue, 4 Mar 2014 23:27:27 +0000 (23:27 +0000)]
Refactoring: Make script dependencies more object-oriented in push and merge scripts.

- Connect the top-level scripts via inheritance and remove top-level functions
- Options and option processing can be extended from base to subclass script

This CL is split off from https://codereview.chromium.org/173983002/

BUG=
R=ulan@chromium.org

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

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

10 years agoMIPS: Remove all uses of field-tracking flags that do not make decisions but are...
plind44@gmail.com [Tue, 4 Mar 2014 20:22:56 +0000 (20:22 +0000)]
MIPS: Remove all uses of field-tracking flags that do not make decisions but are subject to existing information.

Port r19650 (a51b043)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoMIPS: Push safepoint registers in deferred number-to-i/u only on-demand.
plind44@gmail.com [Tue, 4 Mar 2014 20:16:24 +0000 (20:16 +0000)]
MIPS: Push safepoint registers in deferred number-to-i/u only on-demand.

Port r19649 (49f8c2d)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoA64: Move veneer emission checking in the Assembler.
alexandre.rames@arm.com [Tue, 4 Mar 2014 15:54:12 +0000 (15:54 +0000)]
A64: Move veneer emission checking in the Assembler.

The previous heuristic would break as a significant amount of code could be
generated without checking for veneer emission.
The veneer emission is now done in the Assembler, in a very similar way to
constant pool emission.

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

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

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

10 years agoPrint properly signed displacement in IA32 disassembler.
mstarzinger@chromium.org [Tue, 4 Mar 2014 13:07:00 +0000 (13:07 +0000)]
Print properly signed displacement in IA32 disassembler.

R=jkummerow@chromium.org
BUG=

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

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

10 years agoRefactoring to clean up duplicate code in Heap::Allocate methods.
mvstanton@chromium.org [Tue, 4 Mar 2014 12:51:40 +0000 (12:51 +0000)]
Refactoring to clean up duplicate code in Heap::Allocate methods.

R=hpayer@chromium.org

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

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

10 years agoRemove all uses of field-tracking flags that do not make decisions but are subject...
verwaest@chromium.org [Tue, 4 Mar 2014 12:48:17 +0000 (12:48 +0000)]
Remove all uses of field-tracking flags that do not make decisions but are subject to existing information.

BUG=
R=ishell@chromium.org

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

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

10 years agoPush safepoint registers in deferred number-to-i/u only on-demand.
bmeurer@chromium.org [Tue, 4 Mar 2014 12:45:00 +0000 (12:45 +0000)]
Push safepoint registers in deferred number-to-i/u only on-demand.

R=svenpanne@chromium.org

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

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

10 years agoAllow objects with "" properties to stay fast.
verwaest@chromium.org [Tue, 4 Mar 2014 12:43:05 +0000 (12:43 +0000)]
Allow objects with "" properties to stay fast.

R=danno@chromium.org

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

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

10 years agoDon't disable hash randomization option in predictable mode.
ishell@chromium.org [Tue, 4 Mar 2014 12:42:43 +0000 (12:42 +0000)]
Don't disable hash randomization option in predictable mode.

We don't need it because
1) hash randomization uses random generator whose results depend on --random-seed option which is set in predictable mode.
2) disabling hash randomization triggers assert in snapshot mode.

R=svenpanne@chromium.org

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

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

10 years agoFix HStringAdd::PrintDataTo().
bmeurer@chromium.org [Tue, 4 Mar 2014 12:34:04 +0000 (12:34 +0000)]
Fix HStringAdd::PrintDataTo().

R=svenpanne@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.4.
titzer@chromium.org [Tue, 4 Mar 2014 09:05:48 +0000 (09:05 +0000)]
Prepare push to trunk.  Now working on version 3.25.4.

R=hpayer@chromium.org
TBR=hpayer@chromium.org

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

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

10 years agoFix HCheckValue::Canonicalize wrt uninitialized HConstant unique.
yangguo@chromium.org [Tue, 4 Mar 2014 08:08:08 +0000 (08:08 +0000)]
Fix HCheckValue::Canonicalize wrt uninitialized HConstant unique.

R=titzer@chromium.org
BUG=348280
LOG=N

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

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

10 years agoAdd try server configuration for 'git cl try'.
machenbach@chromium.org [Tue, 4 Mar 2014 01:29:27 +0000 (01:29 +0000)]
Add try server configuration for 'git cl try'.

BUG=
R=phajdan.jr@chromium.org

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

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

10 years agoAdd coverage analysis to push and merge script tests.
machenbach@chromium.org [Mon, 3 Mar 2014 20:17:03 +0000 (20:17 +0000)]
Add coverage analysis to push and merge script tests.

The coverage analysis must live in an extra file in order to analyze the scripts when being imported.

TEST=tools/push-to-trunk/script_test.py
R=ulan@chromium.org

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

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

10 years agoConsolidate RecordWriteFromCode and RecordWriteForEvacuationFromCode.
hpayer@chromium.org [Mon, 3 Mar 2014 13:27:59 +0000 (13:27 +0000)]
Consolidate RecordWriteFromCode and RecordWriteForEvacuationFromCode.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoMake EvictFromOptimizedCodeMap more robust.
ulan@chromium.org [Mon, 3 Mar 2014 13:12:31 +0000 (13:12 +0000)]
Make EvictFromOptimizedCodeMap more robust.

This removes all occurences of the specified optimized code from the optimized
code map.

R=titzer@chromium.org, yangguo@chromium.org

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

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

10 years agoFix A64 after 19635.
ulan@chromium.org [Mon, 3 Mar 2014 11:44:14 +0000 (11:44 +0000)]
Fix A64 after 19635.

TBR=yangguo@chromium.org

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

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

10 years agoFix symbol printing in migration / generalization tracing
verwaest@chromium.org [Mon, 3 Mar 2014 11:41:24 +0000 (11:41 +0000)]
Fix symbol printing in migration / generalization tracing

BUG=
R=ishell@chromium.org

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

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

10 years agoClear optimized code cache in shared function info when code gets deoptimized.
ulan@chromium.org [Mon, 3 Mar 2014 11:11:39 +0000 (11:11 +0000)]
Clear optimized code cache in shared function info when code gets deoptimized.

This adds a pointer to the shared function info into deoptimization data of an optimized code. Whenever the code is deoptimized, it clears the cache in the shared function info.

This fixes the problem when the optimized function dies in new space GC before the code is deoptimized due to code dependency and before the optimized code cache is cleared in old space GC (see mjsunit/regress/regress-343609.js).

This partially reverts r19603 because we need to be able to evict specific code from the optimized code cache.

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

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

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

10 years agoRefactoring: Long option names in push and merge scripts.
machenbach@chromium.org [Fri, 28 Feb 2014 21:49:51 +0000 (21:49 +0000)]
Refactoring: Long option names in push and merge scripts.

This CL is split off from https://codereview.chromium.org/173983002/

R=ulan@chromium.org

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

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

10 years agoFix ChangeLog entries.
commit-bot@chromium.org [Fri, 28 Feb 2014 19:48:29 +0000 (19:48 +0000)]
Fix ChangeLog entries.

NOTREECHECKS=true
BUG=

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

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

10 years agoFix line distance in push and merge scripts.
commit-bot@chromium.org [Fri, 28 Feb 2014 19:45:28 +0000 (19:45 +0000)]
Fix line distance in push and merge scripts.

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

10 years agoMove all Harmony-only tests to harmony/
rossberg@chromium.org [Fri, 28 Feb 2014 14:26:32 +0000 (14:26 +0000)]
Move all Harmony-only tests to harmony/

R=jkummerow@chromium.org
BUG=

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

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

10 years agoUpdate README about where the test262 files are downloaded from.
jochen@chromium.org [Fri, 28 Feb 2014 14:16:50 +0000 (14:16 +0000)]
Update README about where the test262 files are downloaded from.

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

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

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

10 years agoCheck elimination did not mark some dead blocks.
ishell@chromium.org [Fri, 28 Feb 2014 14:16:38 +0000 (14:16 +0000)]
Check elimination did not mark some dead blocks.

R=danno@chromium.org

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

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

10 years agoRevert "Remove Script::SetData and the script_data parameter from Script::(Compile...
marja@chromium.org [Fri, 28 Feb 2014 14:09:52 +0000 (14:09 +0000)]
Revert "Remove Script::SetData and the script_data parameter from Script::(Compile|New)."

This reverts revision 19616.

BUG=
TBR=marja@chromium.org,svenpanne@chromium.org

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

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

10 years agoFix ARM/MIPS versions of r19607
jkummerow@chromium.org [Fri, 28 Feb 2014 14:08:39 +0000 (14:08 +0000)]
Fix ARM/MIPS versions of r19607

kNoCodeAgeSequenceLength is in bytes on ia32/x64, but in instructions on arm/mips.

R=ulan@chromium.org

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

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

10 years agoRemove Script::SetData and the script_data parameter from Script::(Compile|New).
marja@chromium.org [Fri, 28 Feb 2014 13:54:14 +0000 (13:54 +0000)]
Remove Script::SetData and the script_data parameter from Script::(Compile|New).

This feature makes it possible to associate data with a script and get it back
when the script is compiled or when an event is handled. It was historically
used by Chromium Dev Tools, but not any more. It is not used by node.js.

Note: this has nothing to do with the preparse data, despite the confusing name.
The preparse data is passed as ScriptData*.

R=svenpanne@chromium.org
BUG=

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

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

10 years agoRemove bogus assertion regarding code marked for deopt.
yangguo@chromium.org [Fri, 28 Feb 2014 13:16:26 +0000 (13:16 +0000)]
Remove bogus assertion regarding code marked for deopt.

TBR=ulan@chromium.org

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

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

10 years agoFixed constant folding for Math.clz32.
svenpanne@chromium.org [Fri, 28 Feb 2014 13:07:10 +0000 (13:07 +0000)]
Fixed constant folding for Math.clz32.

LOG=y
BUG=347906
R=yangguo@chromium.org

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

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

10 years agoMake a64.release a quickcheck target
jochen@chromium.org [Fri, 28 Feb 2014 12:46:13 +0000 (12:46 +0000)]
Make a64.release a quickcheck target

I marked all tests as slow that take more than a minute on my machine.
With this, a64.release.quickcheck takes two minutes which is about as
fast as arm.optdebug.quickcheck.

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

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

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

10 years agoFail early when re-entering code that has been patched for lazy deopt
jkummerow@chromium.org [Fri, 28 Feb 2014 12:41:25 +0000 (12:41 +0000)]
Fail early when re-entering code that has been patched for lazy deopt

R=ulan@chromium.org

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

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

10 years agoUpdate test262 to get test data from github
jochen@chromium.org [Fri, 28 Feb 2014 12:34:12 +0000 (12:34 +0000)]
Update test262 to get test data from github

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

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

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

10 years agoWhen upgrading the test data twice, don't bail out because of an existing backup
jochen@chromium.org [Fri, 28 Feb 2014 12:32:54 +0000 (12:32 +0000)]
When upgrading the test data twice, don't bail out because of an existing backup

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

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

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

10 years agoA JSArray may have a filler map in the elements pointer.
mvstanton@chromium.org [Fri, 28 Feb 2014 12:29:19 +0000 (12:29 +0000)]
A JSArray may have a filler map in the elements pointer.

We already have code that expects this, but incorrectly asserted that the
filler map case would never happen when allocation folding is turned on.
However, even folding has it's limits, bailing out of continued folding
when the object size grows too large. Therefore, it's a general problem
when verifying JSArray objects, that we might encounter a filler map
in elements().

Discovered by ClusterFuzz crbug 347903.

R=hpayer@chromium.org
LOG=N
BUG=347903

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

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

10 years agoEvict from optimized code map in sync with removing from optimized functions list.
yangguo@chromium.org [Fri, 28 Feb 2014 12:27:31 +0000 (12:27 +0000)]
Evict from optimized code map in sync with removing from optimized functions list.

R=ulan@chromium.org

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

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

10 years agoparser: fix build on solaris
marja@chromium.org [Fri, 28 Feb 2014 12:08:17 +0000 (12:08 +0000)]
parser: fix build on solaris

`FS` is defined in `regset.h` on solaris and smartos.

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

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

Patch from Fedor Indutny <fedor.indutny@gmail.com>.

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

10 years agoFix JSObject::PrintTransitions.
bmeurer@chromium.org [Fri, 28 Feb 2014 11:41:07 +0000 (11:41 +0000)]
Fix JSObject::PrintTransitions.

BUG=347912
LOG=y
R=verwaest@chromium.org

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

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

10 years agoFix representation generalization for doubles.
hpayer@chromium.org [Fri, 28 Feb 2014 11:07:10 +0000 (11:07 +0000)]
Fix representation generalization for doubles.

BUG=
R=verwaest@chromium.org

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

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

10 years agoDelete the simulator when we don't need it anymore
jochen@chromium.org [Fri, 28 Feb 2014 10:55:47 +0000 (10:55 +0000)]
Delete the simulator when we don't need it anymore

BUG=none
R=svenpanne@chromium.org, ulan@chromium.org
LOG=n

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

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

10 years agoThe Array function must be looked up in the native context.
mvstanton@chromium.org [Fri, 28 Feb 2014 10:39:36 +0000 (10:39 +0000)]
The Array function must be looked up in the native context.

Platforms x64, a64, arm and mips had the bug that the array function was looked
up in the global context instead of the native context. Fix this, restoring a
weakened assert in hydrogen along the way (by the fix for crbug 347528, which
helped find this case).

R=dcarney@chromium.org

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

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

10 years agoA64: fix cctest/test-assembler-a64
jochen@chromium.org [Fri, 28 Feb 2014 10:31:05 +0000 (10:31 +0000)]
A64: fix cctest/test-assembler-a64

The simulator now deletes its decoder in its dtor. Therefore, we must
always allocate the decoder on the heap.

BUG=none
R=ulan@chromium.org, jacob.bramley@arm.com
LOG=n

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

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

10 years agoGet array_function from NativeContext
dcarney@chromium.org [Fri, 28 Feb 2014 10:01:27 +0000 (10:01 +0000)]
Get array_function from NativeContext

R=mvstanton@chromium.org
LOG=N
BUG=347528

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

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

10 years agoFix handling of constant global variable assignments.
bmeurer@chromium.org [Fri, 28 Feb 2014 09:40:12 +0000 (09:40 +0000)]
Fix handling of constant global variable assignments.

BUG=347904
LOG=y
R=hpayer@chromium.org

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

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

10 years agoRemove dead CompileOptimized() method from JSFunction.
titzer@chromium.org [Fri, 28 Feb 2014 08:57:38 +0000 (08:57 +0000)]
Remove dead CompileOptimized() method from JSFunction.

BUG=
R=yangguo@chromium.org

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

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

10 years agoRemoved bogus ASSERT.
svenpanne@chromium.org [Fri, 28 Feb 2014 08:45:07 +0000 (08:45 +0000)]
Removed bogus ASSERT.

LOG=y
BUG=347542
R=yangguo@chromium.org

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

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

10 years agoHAllocate should never generate allocation code if the requested size does not fit...
ishell@chromium.org [Thu, 27 Feb 2014 17:33:25 +0000 (17:33 +0000)]
HAllocate should never generate allocation code if the requested size does not fit into page. Regression test included.

BUG=347543
LOG=N
R=hpayer@chromium.org

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

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

10 years agoRuntime::RunMicrotask should silent return if no pending microtask work (rather than...
rafaelw@chromium.org [Thu, 27 Feb 2014 16:49:55 +0000 (16:49 +0000)]
Runtime::RunMicrotask should silent return if no pending microtask work (rather than asserting)

R=rossberg@chromium.org, rossberg
BUG=347532

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

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

10 years agoAvoid normalizing global proxy for fuzzing purposes.
verwaest@chromium.org [Thu, 27 Feb 2014 16:27:22 +0000 (16:27 +0000)]
Avoid normalizing global proxy for fuzzing purposes.

R=danno@chromium.org

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

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

10 years agoFix putting of prototype transitions. The length is also subject to GC, just like...
verwaest@chromium.org [Thu, 27 Feb 2014 16:07:44 +0000 (16:07 +0000)]
Fix putting of prototype transitions. The length is also subject to GC, just like entry.

BUG=347536
LOG=n
R=danno@chromium.org

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

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

10 years agoFix bogus assertion.
yangguo@chromium.org [Thu, 27 Feb 2014 15:28:28 +0000 (15:28 +0000)]
Fix bogus assertion.

R=hpayer@chromium.org
BUG=347530

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

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

10 years agoHandle arguments objects in frame when materializing arguments
jarin@chromium.org [Thu, 27 Feb 2014 15:12:12 +0000 (15:12 +0000)]
Handle arguments objects in frame when materializing arguments

R=mstarzinger@chromium.org
BUG=347262

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

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

10 years agoFix bogus assertion in SetFastDoubleElements.
yangguo@chromium.org [Thu, 27 Feb 2014 14:45:53 +0000 (14:45 +0000)]
Fix bogus assertion in SetFastDoubleElements.

R=danno@chromium.org
BUG=347530
LOG=N

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

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

10 years agoFix for Clusterfuzz issue 343928.
mvstanton@chromium.org [Thu, 27 Feb 2014 13:25:05 +0000 (13:25 +0000)]
Fix for Clusterfuzz issue 343928.

The problem was that the debugger didn't expect that a JSFunction could
have a GlobalContext, which it can with harmony scoping.

BUG=343928
R=yangguo@chromium.org
LOG=N

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

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

10 years agoRevert "Better threaded fuzzing for TestFunctionCallOptimization"
dcarney@chromium.org [Thu, 27 Feb 2014 09:48:56 +0000 (09:48 +0000)]
Revert "Better threaded fuzzing for TestFunctionCallOptimization"

This reverts commit 19567.

TBR=verwaest@chromium.org

BUG=

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

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

10 years agoImplement and enable zapping of code space while sweeping.
mstarzinger@chromium.org [Thu, 27 Feb 2014 09:36:29 +0000 (09:36 +0000)]
Implement and enable zapping of code space while sweeping.

R=danno@chromium.org, hpayer@chromium.org
BUG=

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

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

10 years agoBetter threaded fuzzing for TestFunctionCallOptimization
dcarney@chromium.org [Thu, 27 Feb 2014 09:18:37 +0000 (09:18 +0000)]
Better threaded fuzzing for TestFunctionCallOptimization

R=verwaest@chromium.org

BUG=

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

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

10 years agoFix patch creation in merge-to-branch script.
machenbach@chromium.org [Wed, 26 Feb 2014 16:12:32 +0000 (16:12 +0000)]
Fix patch creation in merge-to-branch script.

Patch white space got stripped, which lead to failures when applying the patch.

- Refine test to reveal the problem
- Create a separate method for retrieving the patch that doesn't strip white space

R=jkummerow@chromium.org

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

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

10 years agoRefactoring: Deprecate optparse in push and merge scripts.
machenbach@chromium.org [Wed, 26 Feb 2014 15:13:31 +0000 (15:13 +0000)]
Refactoring: Deprecate optparse in push and merge scripts.

- Deprecate optparse with argparse
- The tests include now options parsing by default: each test specifies the command-line args to parse rather than the options directly

This CL is split off from https://codereview.chromium.org/173983002/

TBR=ulan@chromium.org

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

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

10 years agoA64: Hardwire the decoder and the simulator
jochen@chromium.org [Wed, 26 Feb 2014 14:50:58 +0000 (14:50 +0000)]
A64: Hardwire the decoder and the simulator

If one of --trace-sim --debug-sim or --log-instruction-stats flags is
given, we use the decoder dispatcher instead.

BUG=none
R=rodolph.perfetta@arm.com, ulan@chromium.org
LOG=n

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

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

10 years agoA64: Make the Decoder a template
jochen@chromium.org [Wed, 26 Feb 2014 12:01:05 +0000 (12:01 +0000)]
A64: Make the Decoder a template

This will allow for replacing the dispatcher with a concrete decoder
visitor.

BUG=none
R=ulan@chromium.org, rodolph.perfetta@arm.com
LOG=n

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

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

10 years agoA64: Move the dispatching logic of the decoder to a separate class.
jochen@chromium.org [Wed, 26 Feb 2014 11:59:17 +0000 (11:59 +0000)]
A64: Move the dispatching logic of the decoder to a separate class.

BUG=none
R=ulan@chromium.org, rodolph.perfetta@arm.com
LOG=n

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

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

10 years agoA64: Decoder should not inherit from DecoderVisitor
jochen@chromium.org [Wed, 26 Feb 2014 11:54:55 +0000 (11:54 +0000)]
A64: Decoder should not inherit from DecoderVisitor

BUG=none
R=ulan@chromium.org, rodolph.perfetta@arm.com
LOG=n

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

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

10 years agoAdd vi swap files to .gitignore
jochen@chromium.org [Wed, 26 Feb 2014 11:53:19 +0000 (11:53 +0000)]
Add vi swap files to .gitignore

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

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

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

10 years agoFix for failing asserts in HBoundsCheck code generation on x64: index register should...
ishell@chromium.org [Tue, 25 Feb 2014 16:33:54 +0000 (16:33 +0000)]
Fix for failing asserts in HBoundsCheck code generation on x64: index register should be zero extended.

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

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

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

10 years agoRevert "Use stability to only conditionally flush information from the CheckMaps...
verwaest@chromium.org [Tue, 25 Feb 2014 16:11:58 +0000 (16:11 +0000)]
Revert "Use stability to only conditionally flush information from the CheckMaps table."

R=ishell@chromium.org

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

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

10 years agoFollow up to r19538: Bump preparse data version number.
marja@chromium.org [Tue, 25 Feb 2014 15:55:14 +0000 (15:55 +0000)]
Follow up to r19538: Bump preparse data version number.

r19538 changes the preparse data format, so this is probably a good idea.

R=ulan@chromium.org
BUG=

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

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

10 years agoRe-evaluate marking bits of a descriptor array when it gets replaced.
hpayer@chromium.org [Tue, 25 Feb 2014 15:47:33 +0000 (15:47 +0000)]
Re-evaluate marking bits of a descriptor array when it gets replaced.

BUG=340254
R=verwaest@chromium.org

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

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

10 years agoMark HCompareMap as having Tagged representation
jkummerow@chromium.org [Tue, 25 Feb 2014 15:09:47 +0000 (15:09 +0000)]
Mark HCompareMap as having Tagged representation

BUG=chromium:346636
LOG=y
R=svenpanne@chromium.org

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

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

10 years agoCrash like chrome. Currently, most chrome crashes do not yield useful stack traces...
dcarney@chromium.org [Tue, 25 Feb 2014 13:53:06 +0000 (13:53 +0000)]
Crash like chrome.  Currently, most chrome crashes do not yield useful stack traces as v8 does a silent abort and chrome's crash symbolization does not kick in.

R=svenpanne@chromium.org

BUG=

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

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

10 years agoPrepare push to trunk. Now working on version 3.25.3.
hpayer@chromium.org [Tue, 25 Feb 2014 12:33:55 +0000 (12:33 +0000)]
Prepare push to trunk.  Now working on version 3.25.3.

R=danno@chromium.org
BUG=

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

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

10 years agoRevert r19430, r19459:
mvstanton@chromium.org [Tue, 25 Feb 2014 12:18:30 +0000 (12:18 +0000)]
Revert r19430, r19459:
"Reland "Allow ICs to be generated for own global proxy.""

Causing ClusterFuzz crash (issue 343928)

TBR=verwaest@chromium.org

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

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

10 years agoFix crasher in Object.getOwnPropertySymbols
rossberg@chromium.org [Tue, 25 Feb 2014 12:01:34 +0000 (12:01 +0000)]
Fix crasher in Object.getOwnPropertySymbols

R=arv@chromium.org, mstarzinger@chromium.org
BUG=346141
LOG=Y

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

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

10 years agoFix the bit massaging code in CompleteParserRecorder::WriteNumber.
marja@chromium.org [Tue, 25 Feb 2014 11:51:02 +0000 (11:51 +0000)]
Fix the bit massaging code in CompleteParserRecorder::WriteNumber.

The original code, added by
https://codereview.chromium.org/3384003/diff/7001/src/parser.cc 3.5 years ago,
failed to write numbers which contain a chunk of 7 zeroes in the middle. The
smallest such number is 2^14, so this is a problem if the source file to
preparse contains 16384 or more symbols (which happens in the wild).

This bug went unnoticed because the symbol data was not used by Parser (see
https://codereview.chromium.org/172753002/ for starting to use it again) and
there were no tests.

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

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

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

10 years agoRevert r19455 "Load target types and handlers before IC computation."
ulan@chromium.org [Tue, 25 Feb 2014 10:52:15 +0000 (10:52 +0000)]
Revert r19455 "Load target types and handlers before IC computation."

It caused performance regression in dromaeo/jslib.

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

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

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

10 years agoDon't eliminate loads with incompatible types or representations.
bmeurer@chromium.org [Tue, 25 Feb 2014 09:55:50 +0000 (09:55 +0000)]
Don't eliminate loads with incompatible types or representations.

BUG=346343
LOG=y
R=verwaest@chromium.org

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

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

10 years agoFix for a smi stores optimization on x64 with a regression test.
ishell@chromium.org [Tue, 25 Feb 2014 09:55:02 +0000 (09:55 +0000)]
Fix for a smi stores optimization on x64 with a regression test.

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

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

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

10 years agoCheck that after a weak callback, the handle is either dead or strong
jochen@chromium.org [Tue, 25 Feb 2014 09:27:05 +0000 (09:27 +0000)]
Check that after a weak callback, the handle is either dead or strong

BUG=346061
R=dcarney@chromium.org
LOG=y

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

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

10 years agonegative bounds checking on realm calls
dcarney@chromium.org [Tue, 25 Feb 2014 09:15:05 +0000 (09:15 +0000)]
negative bounds checking on realm calls

R=rossberg@chromium.org

LOG=N

BUG=344285

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

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

10 years agoLazy preparsing vs. lazy parsing fix.
marja@chromium.org [Mon, 24 Feb 2014 17:48:09 +0000 (17:48 +0000)]
Lazy preparsing vs. lazy parsing fix.

Preparsing is always maximally lazy (every function that can be lazy is preparsed
lazily), but Parser has more complicated laziness logic.

If we're going to parse eagerly, and we have preparse data from lazy preparsing,
we're gonna have a bad time. The symbol stream won't contain symbols inside lazy
functions, and when the Parser parses them eagerly, it will consume symbols from
the symbol stream, and everything will go wrong.

This bug was hidden because the symbol cache was not used for real (see
https://codereview.chromium.org/172753002/ ).

R=ulan@chromium.org
BUG=346207
LOG=Y

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

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

10 years agoFix optimistic BCE to back off after deopt
jkummerow@chromium.org [Mon, 24 Feb 2014 13:15:31 +0000 (13:15 +0000)]
Fix optimistic BCE to back off after deopt

BUG=v8:3176
LOG=n
R=danno@chromium.org

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

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

10 years agoA64: Replace a Subs by a Sub where flags don't need to be updated.
baptiste.afsa@arm.com [Fri, 21 Feb 2014 15:36:16 +0000 (15:36 +0000)]
A64: Replace a Subs by a Sub where flags don't need to be updated.

R=jochen@chromium.org

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

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

10 years agoA64: Remove a couple of already addressed TODOs.
baptiste.afsa@arm.com [Fri, 21 Feb 2014 15:34:39 +0000 (15:34 +0000)]
A64: Remove a couple of already addressed TODOs.

R=jochen@chromium.org

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

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