platform/upstream/v8.git
10 years agoMove test for reduction of Math.imul to unittest.
mstarzinger@chromium.org [Tue, 23 Sep 2014 11:26:49 +0000 (11:26 +0000)]
Move test for reduction of Math.imul to unittest.

R=bmeurer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathImul

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

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

10 years agoRefactoring: Remove more legacy from release scripts.
machenbach@chromium.org [Tue, 23 Sep 2014 09:35:49 +0000 (09:35 +0000)]
Refactoring: Remove more legacy from release scripts.

- Remove an unused feature that allowed to check for required
  data before each script step.
- Use a relative path to the version file. In the production
  environment, this will point to the cwd/version_file, while
  in the test environment it is fake_cwd/version_file.

TBR=tandrii@chromium.org

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

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

10 years agoFix method dispatch in Keyed/StoreIC, and JumpIfNotUniqueName usage
jkummerow@chromium.org [Tue, 23 Sep 2014 09:20:36 +0000 (09:20 +0000)]
Fix method dispatch in Keyed/StoreIC, and JumpIfNotUniqueName usage

R=ishell@chromium.org

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

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

10 years ago[Turbofan] Insert nops for lazy bailout patching, fix translation of literals.
jarin@chromium.org [Tue, 23 Sep 2014 08:46:18 +0000 (08:46 +0000)]
[Turbofan] Insert nops for lazy bailout patching, fix translation of literals.

The code for EnsureSpaceForLazyDeopt is taken from lithium-codegen-*.

BUG=
R=bmeurer@chromium.org

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

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

10 years agoExtend JSBuiltinReducer to cover Math.max as well.
mstarzinger@chromium.org [Tue, 23 Sep 2014 08:16:54 +0000 (08:16 +0000)]
Extend JSBuiltinReducer to cover Math.max as well.

R=svenpanne@chromium.org
TEST=cctest/test-js-typed-lowering/BuiltinMathMax

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

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

10 years agoAdd a PRESUBMIT check that production code does not call test code
jochen@chromium.org [Tue, 23 Sep 2014 08:14:06 +0000 (08:14 +0000)]
Add a PRESUBMIT check that production code does not call test code

This is based on a regular expression matching anything in a namespace
ending in test, or a method containing the words ForTest, ForTesting,
for_test, or for_testing.

It is possible to blacklist entire directories or individual files.

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

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

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

10 years agoRemoved superfluous deopt for ROR on ia32.
svenpanne@chromium.org [Tue, 23 Sep 2014 08:06:00 +0000 (08:06 +0000)]
Removed superfluous deopt for ROR on ia32.

We only synthesize a ROR when we have an expression with a toplevel
'|', which returns a signed value by definition, so deopting on
negative values is not needed. ia32 was the only platform where this
was done, all other didn't have the check.

R=ulan@chromium.org

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

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

10 years agoForcibly inline bit_cast when building with GCC.
bmeurer@chromium.org [Tue, 23 Sep 2014 06:30:15 +0000 (06:30 +0000)]
Forcibly inline bit_cast when building with GCC.

R=svenpanne@chromium.org

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

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

10 years agoX87: Further improve deopt reason output
weiliang.lin@intel.com [Tue, 23 Sep 2014 03:55:35 +0000 (03:55 +0000)]
X87: Further improve deopt reason output

port r24123.  R24123 does not cover all required code change in X87.

original commit message:
   Further improve deopt reason output.
   * Make the detailed deopt reason mandatory on x64, other platforms will
     follow in separate CLs.

   * Extracted and improved jump table entry sharing logic: When --trace-deopt
     is on, we get separate entries for different deopt reasons. This enables
     us to distinguish the several reasons single instructions can have.

   * Don't emit superfluous jump table comments: The bailout ID is still visible,
     and the jump table entry number is not interesting (but easy to determine
     if really needed).

   * Unify the internal name of the jump table member across platforms.

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

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

10 years agoX87: Make KeyedLoads from a sloppy arguments array use a handler.
weiliang.lin@intel.com [Tue, 23 Sep 2014 03:44:35 +0000 (03:44 +0000)]
X87: Make KeyedLoads from a sloppy arguments array use a handler.

port r24120.

original commit message:
   Make KeyedLoads from a sloppy arguments array use a handler.
   Before, a custom stub was installed

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

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

10 years agoAdd histogram timers for (de-)serialization during compilation.
vogelheim@chromium.org [Mon, 22 Sep 2014 17:19:19 +0000 (17:19 +0000)]
Add histogram timers for (de-)serialization during compilation.

R=yangguo@chromium.org
BUG=

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

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

10 years agoMIPS: Make KeyedLoads from a sloppy arguments array use a handler.
balazs.kilvady@imgtec.com [Mon, 22 Sep 2014 16:08:49 +0000 (16:08 +0000)]
MIPS: Make KeyedLoads from a sloppy arguments array use a handler.

Port r24120 (eed5963)

Original commit message:
Before, a custom stub was installed.

BUG=
R=paul.lind@imgtec.com

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

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

10 years agoFix escaped index JSON parsing
verwaest@chromium.org [Mon, 22 Sep 2014 15:21:19 +0000 (15:21 +0000)]
Fix escaped index JSON parsing

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

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

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

10 years agoSimplify synthetic roots creation in heap snapshot
yurys@chromium.org [Mon, 22 Sep 2014 14:40:59 +0000 (14:40 +0000)]
Simplify synthetic roots creation in heap snapshot

The synthetic roots exist in every snapshot and there are no actual objects corresponding to them (there was attempt to create some virtual objects to reuse existing snapshot builder but it just complicated the things).

Previously synthetic root wouldn't have been added if it was empty. Current implementation always adds all synthetic roots in the snapshot no matter if they are empty or not.

BUG=None
LOG=N
R=alph@chromium.org, mstarzinger@chromium.org

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

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

10 years agoFurther improve deopt reason output.
svenpanne@chromium.org [Mon, 22 Sep 2014 14:16:38 +0000 (14:16 +0000)]
Further improve deopt reason output.

* Make the detailed deopt reason mandatory on x64, other platforms
  will follow in separate CLs.

* Extracted and improved jump table entry sharing logic: When
  --trace-deopt is on, we get separate entries for different deopt
  reasons. This enables us to distinguish the several reasons single
  instructions can have.

* Don't emit superfluous jump table comments: The bailout ID is still
  visible, and the jump table entry number is not interesting (but
  easy to determine if really needed).

* Unify the internal name of the jump table member across platforms.

R=jarin@chromium.org

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

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

10 years ago[turbofan] don't call out to c
dcarney@chromium.org [Mon, 22 Sep 2014 13:56:03 +0000 (13:56 +0000)]
[turbofan] don't call out to c

R=bmeurer@chromium.org

BUG=

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

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

10 years agofix compile for arm64 on mavericks
dcarney@chromium.org [Mon, 22 Sep 2014 13:48:12 +0000 (13:48 +0000)]
fix compile for arm64 on mavericks

R=svenpanne@chromium.org

BUG=

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

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

10 years agoMake KeyedLoads from a sloppy arguments array use a handler.
mvstanton@chromium.org [Mon, 22 Sep 2014 13:23:27 +0000 (13:23 +0000)]
Make KeyedLoads from a sloppy arguments array use a handler.

Before, a custom stub was installed.

R=verwaest@chromium.org

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

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

10 years agoFix DebugEvaluate on properties defined on Object.prototype
aandrey@chromium.org [Mon, 22 Sep 2014 12:45:47 +0000 (12:45 +0000)]
Fix DebugEvaluate on properties defined on Object.prototype

BUG=415499
R=yangguo
LOG=N

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

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

10 years agoRemove switch-clause limit
verwaest@chromium.org [Mon, 22 Sep 2014 12:44:23 +0000 (12:44 +0000)]
Remove switch-clause limit

BUG=
R=danno@chromium.org

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

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

10 years agoPass the ast_id to HandleKeyed to make sure it's the right one (e.g., CountOperation...
verwaest@chromium.org [Mon, 22 Sep 2014 12:43:40 +0000 (12:43 +0000)]
Pass the ast_id to HandleKeyed to make sure it's the right one (e.g., CountOperation, not just the load-expression's id)

BUG=
R=jarin@chromium.org

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

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

10 years agoAdjust small heap threshold for idle time handler.
ulan@chromium.org [Mon, 22 Sep 2014 12:38:34 +0000 (12:38 +0000)]
Adjust small heap threshold for idle time handler.

Follow-up for r23871.

BUG=chromium:407593
LOG=N
TBR=hpayer@chromium.org

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

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

10 years agoFix profiler for TurboFan by reducing duplication.
mstarzinger@chromium.org [Mon, 22 Sep 2014 12:32:47 +0000 (12:32 +0000)]
Fix profiler for TurboFan by reducing duplication.

R=titzer@chromium.org

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

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

10 years ago[turbofan] Allow encodable 64-bit constants as immediate for ARM64.
baptiste.afsa@arm.com [Mon, 22 Sep 2014 12:32:23 +0000 (12:32 +0000)]
[turbofan] Allow encodable 64-bit constants as immediate for ARM64.

Also make sure that operands order for commutative 64-bit binary operations
are properly swapped when the constant is on the left hand-side.

R=bmeurer@chromium.org
BUG=

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

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

10 years agoFix windows build.
bmeurer@chromium.org [Mon, 22 Sep 2014 12:14:49 +0000 (12:14 +0000)]
Fix windows build.

TBR=mstarzinger@chromium.org

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

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

10 years ago[turbofan] Add operators for float32 support.
bmeurer@chromium.org [Mon, 22 Sep 2014 11:42:10 +0000 (11:42 +0000)]
[turbofan] Add operators for float32 support.

This adds Float32Constant, ChangeFloat32ToFloat64 and
TruncateFloat64ToFloat32 operators.

TEST=compiler-unittests
BUG=v8:3589
LOG=n
R=titzer@chromium.org

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

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

10 years agoMerge RecordComment invocations into DeoptimizeIf calls.
svenpanne@chromium.org [Mon, 22 Sep 2014 09:50:12 +0000 (09:50 +0000)]
Merge RecordComment invocations into DeoptimizeIf calls.

This way the deoptimization reasons are actually threaded through to
the jump table. Tiny cleanup of related MIPS/MIPS64 code on the way.

R=jarin@chromium.org

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

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

10 years ago[turbofan] Remove extra attributes from MachineOperatorBuilder methods.
bmeurer@chromium.org [Mon, 22 Sep 2014 09:48:26 +0000 (09:48 +0000)]
[turbofan] Remove extra attributes from MachineOperatorBuilder methods.

R=titzer@chromium.org

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

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

10 years agoEmit source positions in deopt comments, too.
svenpanne@chromium.org [Mon, 22 Sep 2014 09:05:22 +0000 (09:05 +0000)]
Emit source positions in deopt comments, too.

R=jarin@chromium.org

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

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

10 years ago[turbofan] Bounds check when lowering JSStoreProperty.
bmeurer@chromium.org [Mon, 22 Sep 2014 07:17:13 +0000 (07:17 +0000)]
[turbofan] Bounds check when lowering JSStoreProperty.

R=titzer@chromium.org

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

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

10 years ago[turbofan] Disable value numbering for now.
bmeurer@chromium.org [Mon, 22 Sep 2014 07:15:27 +0000 (07:15 +0000)]
[turbofan] Disable value numbering for now.

TEST=cctest,mjsunit
R=jarin@chromium.org

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

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

10 years agoIntroduce a class to carry around a deoptimization reason.
svenpanne@chromium.org [Mon, 22 Sep 2014 06:36:57 +0000 (06:36 +0000)]
Introduce a class to carry around a deoptimization reason.

As discussed in https://codereview.chromium.org/582743002/, here a
mechanical refactoring...

R=jarin@chromium.org

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

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

10 years agoX87: enable the crankshaft compiler for X87 port.
weiliang.lin@intel.com [Sat, 20 Sep 2014 05:08:58 +0000 (05:08 +0000)]
X87:  enable the crankshaft compiler for X87 port.

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

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

10 years agoMIPS: Implement loads and calls from 'super’.
balazs.kilvady@imgtec.com [Fri, 19 Sep 2014 17:25:46 +0000 (17:25 +0000)]
MIPS: Implement loads and calls from 'super’.

Port r24078 (b7e601f)

BUG=v8:3330
LOG=N
R=dusan.milosavljevic@imgtec.com

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

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

10 years agoFix TRACE_GENERIC_IC coverage
jkummerow@chromium.org [Fri, 19 Sep 2014 16:45:59 +0000 (16:45 +0000)]
Fix TRACE_GENERIC_IC coverage

R=mvstanton@chromium.org

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

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

10 years agoFix JSBuiltinReducer to deal with non-JSFunction callees.
mstarzinger@chromium.org [Fri, 19 Sep 2014 16:35:42 +0000 (16:35 +0000)]
Fix JSBuiltinReducer to deal with non-JSFunction callees.

R=titzer@chromium.org
TEST=mozilla

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

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

10 years agoInternalize if not yet internalized
verwaest@chromium.org [Fri, 19 Sep 2014 15:09:50 +0000 (15:09 +0000)]
Internalize if not yet internalized

BUG=
R=ulan@chromium.org

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

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

10 years agoAdd JSBuiltinReducer for inlining well-known builtins.
mstarzinger@chromium.org [Fri, 19 Sep 2014 15:02:58 +0000 (15:02 +0000)]
Add JSBuiltinReducer for inlining well-known builtins.

R=titzer@chromium.org
TEST=cctest/test-js-typed-lowering/BuiltinMathImul

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

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

10 years agoMake Map::Create always use the Object function, and remove the unused inobject prope...
verwaest@chromium.org [Fri, 19 Sep 2014 14:59:14 +0000 (14:59 +0000)]
Make Map::Create always use the Object function, and remove the unused inobject properties

BUG=
R=jkummerow@chromium.org

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

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

10 years agoFix build.
titzer@chromium.org [Fri, 19 Sep 2014 14:40:08 +0000 (14:40 +0000)]
Fix build.

TBR=mstarzinger@chromium.org
BUG=

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

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

10 years ago[turbofan] IA: Float64ToUint32 supports mem operand
titzer@chromium.org [Fri, 19 Sep 2014 14:25:13 +0000 (14:25 +0000)]
[turbofan] IA: Float64ToUint32 supports mem operand

BUG=
R=titzer@chromium.org

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

Patch from Weiliang Lin <weiliang.lin@intel.com>.

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

10 years agoFix test: manually call GC since 0 allocations will not cause GC
verwaest@chromium.org [Fri, 19 Sep 2014 14:19:26 +0000 (14:19 +0000)]
Fix test: manually call GC since 0 allocations will not cause GC

BUG=
R=jkummerow@chromium.org

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

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

10 years agoFix visitor for generators
verwaest@chromium.org [Fri, 19 Sep 2014 14:03:34 +0000 (14:03 +0000)]
Fix visitor for generators

BUG=
R=jkummerow@chromium.org

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

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

10 years agoX87: Implement loads and calls from 'super'.
weiliang.lin@intel.com [Fri, 19 Sep 2014 13:44:24 +0000 (13:44 +0000)]
X87: Implement loads and calls from 'super'.

port r24078.

orginal commit message:
   Implement loads and calls from 'super'

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

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

10 years agoUse the initial map of the Object function for empty object literals
verwaest@chromium.org [Fri, 19 Sep 2014 13:40:38 +0000 (13:40 +0000)]
Use the initial map of the Object function for empty object literals

BUG=
R=jkummerow@chromium.org

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

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

10 years agoAdd fast path in MigrateFastToFast for following transitions that don't extend storage
verwaest@chromium.org [Fri, 19 Sep 2014 13:39:55 +0000 (13:39 +0000)]
Add fast path in MigrateFastToFast for following transitions that don't extend storage

BUG=
R=ishell@chromium.org

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

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

10 years agoRefactoring: Use fake cwd in release script tests.
machenbach@chromium.org [Fri, 19 Sep 2014 13:37:34 +0000 (13:37 +0000)]
Refactoring: Use fake cwd in release script tests.

TEST=script_test.py
R=tandrii@chromium.org
TBR=jarin@chromium.org

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

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

10 years ago[Auto-roll] Bump up version to 3.29.80.0
v8-autoroll@chromium.org [Fri, 19 Sep 2014 13:31:59 +0000 (13:31 +0000)]
[Auto-roll] Bump up version to 3.29.80.0

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

10 years agoWiden the intake valve for TurboFan.
titzer@chromium.org [Fri, 19 Sep 2014 12:50:50 +0000 (12:50 +0000)]
Widen the intake valve for TurboFan.

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

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

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

10 years agoTemporary hack to avoid PDFium crashing
jochen@chromium.org [Fri, 19 Sep 2014 12:10:31 +0000 (12:10 +0000)]
Temporary hack to avoid PDFium crashing

I'll remove this again once PDFium has the explicit Initialize() call
as well

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

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

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

10 years agoAnnotate Heap::FindAllocationMemento for MemorySanitizer.
ulan@chromium.org [Fri, 19 Sep 2014 11:32:17 +0000 (11:32 +0000)]
Annotate Heap::FindAllocationMemento for MemorySanitizer.

This function may intentionally, safely use uninitialized memory.

BUG=chromium:413232
LOG=N
R=ulan@chromium.org

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

Patch from Sergey Matveev <earthdok@chromium.org>.

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

10 years agoRemove a couple of deprecated APIs that moved to Isolate
jochen@chromium.org [Fri, 19 Sep 2014 11:27:54 +0000 (11:27 +0000)]
Remove a couple of deprecated APIs that moved to Isolate

Embedders should either pass the information to via
Isolate::CreateParams or use Isolate::SetStackLimit where appropriate

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

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

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

10 years agoARM: Make stack limit stricter to account for large buffers in MacroAssembler.
ulan@chromium.org [Fri, 19 Sep 2014 11:26:36 +0000 (11:26 +0000)]
ARM: Make stack limit stricter to account for large buffers in MacroAssembler.

BUG=405338
LOG=Y
R=rmcilroy@chromium.org, rodolph.perfetta@arm.com

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

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

10 years agoImplement loads and calls from 'super'
dslomov@chromium.org [Fri, 19 Sep 2014 11:08:04 +0000 (11:08 +0000)]
Implement loads and calls from 'super'

R=verwaest@chromium.org, arv@chromium.org
BUG=v8:3330
LOG=N

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

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

10 years agoRemoved confusing defensive programming in GenerateJumpTable.
svenpanne@chromium.org [Fri, 19 Sep 2014 11:06:59 +0000 (11:06 +0000)]
Removed confusing defensive programming in GenerateJumpTable.

For a given address/type pair we should always find a deoptimization
bailout ID, otherwise something is wrong. This was already asserted on
ARM, but we now do this consistently on all platforms.

Removed some usesless naming creativity on the way.

R=jarin@chromium.org

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

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

10 years agoFix windows warning.
titzer@chromium.org [Fri, 19 Sep 2014 10:52:19 +0000 (10:52 +0000)]
Fix windows warning.

TBR=svenpanne@chromium.org
BUG=

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

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

10 years agoFix float truncations in typed array tests.
titzer@chromium.org [Fri, 19 Sep 2014 10:45:04 +0000 (10:45 +0000)]
Fix float truncations in typed array tests.

TBR=svenpanne@chromium.org
BUG=

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

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

10 years agoHack representation inference to assume current behavior of float32 loads and stores...
titzer@chromium.org [Fri, 19 Sep 2014 09:56:12 +0000 (09:56 +0000)]
Hack representation inference to assume current behavior of float32 loads and stores, which include implicit representation changes.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoFix type in idle time undershot histogram name
jochen@chromium.org [Fri, 19 Sep 2014 09:30:04 +0000 (09:30 +0000)]
Fix type in idle time undershot histogram name

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

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

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

10 years agoX87: When serializer is enalbed, we disable the X87 stack check to reduce the code...
weiliang.lin@intel.com [Fri, 19 Sep 2014 09:27:45 +0000 (09:27 +0000)]
X87: When serializer is enalbed, we disable the X87 stack check to reduce the code size.

     The reason is that the big code size will leads to test-serialize test cases fail
     when debug mode and snapshot=off.

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

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

10 years agoThe --optimize-for-size flag should imply a small semi-space
erik.corry@gmail.com [Fri, 19 Sep 2014 09:15:47 +0000 (09:15 +0000)]
The --optimize-for-size flag should imply a small semi-space

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

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

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

10 years agoFix leak in cctest/test-heap/ReleaseStackTraceData
jochen@chromium.org [Fri, 19 Sep 2014 08:25:56 +0000 (08:25 +0000)]
Fix leak in cctest/test-heap/ReleaseStackTraceData

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

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

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

10 years agoReland 24052 - Require V8 to be explicitly initialized before an Isolate is created
jochen@chromium.org [Fri, 19 Sep 2014 08:01:35 +0000 (08:01 +0000)]
Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created

> We also initialize the Isolate on creation.
>
> This should allow for getting rid of the last remaining default isolate
> traces. Also, it'll speed up several isolate related operations that no
> longer require locks.
>
> Embedders that relied on v8::Isolate to return an uninitialized Isolate
> (so they can set ResourceConstraints for example, or set flags that
> modify the way the isolate is created) should either do the setup before
> creating the isolate, or use the recently added CreateParams to pass e.g.
> ResourceConstraints.
>
> BUG=none
> LOG=y
> R=svenpanne@chromium.org
>
> Review URL: https://codereview.chromium.org/469783002

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

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

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

10 years agoPerform scavenges only for small idle times.
hpayer@chromium.org [Fri, 19 Sep 2014 07:51:23 +0000 (07:51 +0000)]
Perform scavenges only for small idle times.

BUG=
R=jochen@chromium.org

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

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

10 years agoReland sticky regexps https://codereview.chromium.org/567313003/
erik.corry@gmail.com [Fri, 19 Sep 2014 07:36:05 +0000 (07:36 +0000)]
Reland sticky regexps https://codereview.chromium.org/567313003/

R=svenpanne@chromium.org, yangguo@chromium.org
BUG=

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

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

10 years agoRemoved a few dead template functions.
svenpanne@chromium.org [Fri, 19 Sep 2014 07:27:13 +0000 (07:27 +0000)]
Removed a few dead template functions.

R=hpayer@chromium.org

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

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

10 years agoX87: Convert KeyedLoad indexed interceptor case to a Handler.
weiliang.lin@intel.com [Fri, 19 Sep 2014 06:33:37 +0000 (06:33 +0000)]
X87: Convert KeyedLoad indexed interceptor case to a Handler.

port r24042.

original commit message:

  Convert KeyedLoad indexed interceptor case to a Handler.

  Currently, KeyedLoads on objects with indexed interceptors are handled with a
  special stub. Instead, key on the map and handler mechanism for more uniform
  treatment.

BUG=
R=weiliang.lin@intel.com

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

Patch from Jing Bao <jing.bao@intel.com>.

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

10 years agoX87: Move state sentinels into TypeFeedbackVector.
weiliang.lin@intel.com [Fri, 19 Sep 2014 06:31:33 +0000 (06:31 +0000)]
X87: Move state sentinels into TypeFeedbackVector.

port r24037.

original commit message:

  Move state sentinels into TypeFeedbackVector.

  These sentinels were in the wrong place, living in only tangentially related class TypeFeedbackInfo, but they codify state in the TypeFeedbackVector.

BUG=
R=weiliang.lin@intel.com

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

Patch from Jing Bao <jing.bao@intel.com>.

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

10 years agoEmit comment with instruction+reason before deopt calls.
svenpanne@chromium.org [Fri, 19 Sep 2014 06:27:06 +0000 (06:27 +0000)]
Emit comment with instruction+reason before deopt calls.

Note that we still need to migrate from sometimes emitting those
comments by hand to passing a reason explicitly, but this can be done
incrementally in separate CLs.

R=jarin@chromium.org

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

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

10 years ago[Auto-roll] Bump up version to 3.29.79.0
v8-autoroll@chromium.org [Fri, 19 Sep 2014 03:01:44 +0000 (03:01 +0000)]
[Auto-roll] Bump up version to 3.29.79.0

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

10 years agoRevert "Require V8 to be explicitly initialized before an Isolate is created"
jochen@chromium.org [Thu, 18 Sep 2014 21:57:10 +0000 (21:57 +0000)]
Revert "Require V8 to be explicitly initialized before an Isolate is created"

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

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

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

10 years agoSkip math-floor-of-div-nosudiv on arm
jochen@chromium.org [Thu, 18 Sep 2014 21:54:50 +0000 (21:54 +0000)]
Skip math-floor-of-div-nosudiv on arm

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

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

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

10 years ago[Auto-roll] Bump up version to 3.29.77.0
v8-autoroll@chromium.org [Thu, 18 Sep 2014 21:31:24 +0000 (21:31 +0000)]
[Auto-roll] Bump up version to 3.29.77.0

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

10 years agoRequire V8 to be explicitly initialized before an Isolate is created
jochen@chromium.org [Thu, 18 Sep 2014 21:07:50 +0000 (21:07 +0000)]
Require V8 to be explicitly initialized before an Isolate is created

We also initialize the Isolate on creation.

This should allow for getting rid of the last remaining default isolate
traces. Also, it'll speed up several isolate related operations that no
longer require locks.

Embedders that relied on v8::Isolate to return an uninitialized Isolate
(so they can set ResourceConstraints for example, or set flags that
modify the way the isolate is created) should either do the setup before
creating the isolate, or use the recently added CreateParams to pass e.g.
ResourceConstraints.

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

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

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

10 years agoCleanup class parsing a bit
arv@chromium.org [Thu, 18 Sep 2014 17:39:49 +0000 (17:39 +0000)]
Cleanup class parsing a bit

BUG=v8:3330
LOG=Y
R=marja@chromium.org

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

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

10 years agoUpdate cctest OWNERS file for mips committers.
paul.lind@imgtec.com [Thu, 18 Sep 2014 17:33:24 +0000 (17:33 +0000)]
Update cctest OWNERS file for mips committers.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoRevert "filter cross context eval"
verwaest@chromium.org [Thu, 18 Sep 2014 17:25:25 +0000 (17:25 +0000)]
Revert "filter cross context eval"

(Reverts https://codereview.chromium.org/294073002/)

BUG=chromium:415051
LOG=y
R=ishell@chromium.org

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

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

10 years agoES6: Implement generator method shorthand
arv@chromium.org [Thu, 18 Sep 2014 17:14:13 +0000 (17:14 +0000)]
ES6: Implement generator method shorthand

https://people.mozilla.org/~jorendorff/es6-draft.html#sec-method-definitions

BUG=v8:3516
LOG=Y
R=dslomov@chromium.org

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

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

10 years agoMIPS: Convert KeyedLoad indexed interceptor case to a Handler.
balazs.kilvady@imgtec.com [Thu, 18 Sep 2014 15:38:52 +0000 (15:38 +0000)]
MIPS: Convert KeyedLoad indexed interceptor case to a Handler.

Port r24042 (eb9b9ec)

Original commit message:
Currently, KeyedLoads on objects with indexed interceptors are handled with a
special stub. Instead, key on the map and handler mechanism for more uniform
treatment.

BUG=
R=dusan.milosavljevic@imgtec.com

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

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

10 years agoMIPS: Move state sentinels into TypeFeedbackVector.
balazs.kilvady@imgtec.com [Thu, 18 Sep 2014 15:36:42 +0000 (15:36 +0000)]
MIPS: Move state sentinels into TypeFeedbackVector.

Port r24037 (d821bf9)

Original commit message:
These sentinels were in the wrong place, living in only tangentially related class TypeFeedbackInfo, but they codify state in the TypeFeedbackVector.

BUG=
R=dusan.milosavljevic@imgtec.com

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

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

10 years agoRevert "RegExp: Add support for the ES6-proposed sticky flag"
rossberg@chromium.org [Thu, 18 Sep 2014 14:53:00 +0000 (14:53 +0000)]
Revert "RegExp: Add support for the ES6-proposed sticky flag"

Causes a flaky failure on buildbots. Here is the (deterministic) repro step (thanks to Michael Stanton):

first go to flag-definitions.h and set this to false.

DEFINE_BOOL(enable_sse4_1, false,
            "enable use of SSE4.1 instructions if available")

Run the following and it should fail:

tools/run-tests.py --arch=ia32 --mode=release cctest/test-api/Regress2107

R=yangguo@chromium.org
BUG=

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

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

10 years agoAvoid idle times smaller than 1ms.
hpayer@chromium.org [Thu, 18 Sep 2014 13:37:36 +0000 (13:37 +0000)]
Avoid idle times smaller than 1ms.

BUG=
R=ulan@chromium.org

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

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

10 years agoImplement generator mirror
wingo@igalia.com [Thu, 18 Sep 2014 13:30:15 +0000 (13:30 +0000)]
Implement generator mirror

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

BUG=v8:3292
LOG=N

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

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

10 years agoConvert KeyedLoad indexed interceptor case to a Handler.
mvstanton@chromium.org [Thu, 18 Sep 2014 13:28:32 +0000 (13:28 +0000)]
Convert KeyedLoad indexed interceptor case to a Handler.

Currently, KeyedLoads on objects with indexed interceptors are handled with a
special stub. Instead, key on the map and handler mechanism for more uniform
treatment.

R=verwaest@chromium.org

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

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

10 years agoFix gcmole warning.
mvstanton@chromium.org [Thu, 18 Sep 2014 13:24:02 +0000 (13:24 +0000)]
Fix gcmole warning.

TBR=ishell@chromium.org

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

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

10 years agoCapacity returns allocatable memory and TotalCapacity returns allocatable plus non...
hpayer@chromium.org [Thu, 18 Sep 2014 12:52:12 +0000 (12:52 +0000)]
Capacity returns allocatable memory and TotalCapacity returns allocatable plus non-allocatable memory for the new space.
BUG=
R=ulan@chromium.org

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

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

10 years agoMove state sentinels into TypeFeedbackVector.
mvstanton@chromium.org [Thu, 18 Sep 2014 12:31:31 +0000 (12:31 +0000)]
Move state sentinels into TypeFeedbackVector.

These sentinels were in the wrong place, living in only tangentially related class TypeFeedbackInfo, but they codify state in the TypeFeedbackVector.

R=ishell@chromium.org

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

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

10 years agoImplement ToLength from ES6 section 7.1.15
rossberg@chromium.org [Thu, 18 Sep 2014 12:21:50 +0000 (12:21 +0000)]
Implement ToLength from ES6 section 7.1.15

BUG=
R=rossberg@chromium.org

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

Patch from Caitlin Potter <caitpotter88@gmail.com>.

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

10 years agoTurn keyed loads with string-based (non-convertible to array-index) key into named...
verwaest@chromium.org [Thu, 18 Sep 2014 12:00:00 +0000 (12:00 +0000)]
Turn keyed loads with string-based (non-convertible to array-index) key into named loads

BUG=
R=ishell@chromium.org

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

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

10 years agoRegExp: Add support for the ES6-proposed sticky flag
erik.corry@gmail.com [Thu, 18 Sep 2014 11:32:39 +0000 (11:32 +0000)]
RegExp: Add support for the ES6-proposed sticky flag

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

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

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

10 years agoRemove dead CompilationInfo::DisableOptimization predicate.
mstarzinger@chromium.org [Thu, 18 Sep 2014 11:13:36 +0000 (11:13 +0000)]
Remove dead CompilationInfo::DisableOptimization predicate.

R=titzer@chromium.org

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

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

10 years agoDon't inline polymorphic cases if not all cases can be handled inline.
verwaest@chromium.org [Thu, 18 Sep 2014 10:57:18 +0000 (10:57 +0000)]
Don't inline polymorphic cases if not all cases can be handled inline.

BUG=
R=jkummerow@chromium.org

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

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

10 years ago[Auto-roll] Bump up version to 3.29.76.0
v8-autoroll@chromium.org [Thu, 18 Sep 2014 10:01:37 +0000 (10:01 +0000)]
[Auto-roll] Bump up version to 3.29.76.0

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

10 years agoIntroduce TypeFeedbackVector, as FixedArray grew constrictive.
mvstanton@chromium.org [Thu, 18 Sep 2014 09:59:53 +0000 (09:59 +0000)]
Introduce TypeFeedbackVector, as FixedArray grew constrictive.

The TypeFeedbackVector is poised to host significant functionality. While it
remains a FixedArray under the covers, we need a place to hold logic and
definitions unique to its function.

BUG=
R=ishell@chromium.org

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

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

10 years agoThread the Lithium instruction down to DeoptimizeIf and friends.
svenpanne@chromium.org [Thu, 18 Sep 2014 09:53:08 +0000 (09:53 +0000)]
Thread the Lithium instruction down to DeoptimizeIf and friends.

This is a purely mechanical refactoring and a first step towards being
able to report more helpful deoptimization reasons. With this
refactoring, we know at least the mnemonic of the instruction causing
the deopt, although this is not used yet. Future steps will be using
the mnemonic, passing additional explicit deopt reasons and removing
the fragile machinery of searching for code comments.

R=jkummerow@chromium.org

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

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

10 years agoRemove Compiler::RecordFunctionCompilation from interface.
mstarzinger@chromium.org [Thu, 18 Sep 2014 09:41:45 +0000 (09:41 +0000)]
Remove Compiler::RecordFunctionCompilation from interface.

R=sigurds@chromium.org

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

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

10 years agoUnify use-sites of EnsureDeoptimizationSupport.
mstarzinger@chromium.org [Thu, 18 Sep 2014 09:02:36 +0000 (09:02 +0000)]
Unify use-sites of EnsureDeoptimizationSupport.

R=sigurds@chromium.org

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

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

10 years agoReland "Add handling for argument adaptor frames to inlining."
sigurds@chromium.org [Thu, 18 Sep 2014 08:56:52 +0000 (08:56 +0000)]
Reland "Add handling for argument adaptor frames to inlining."

Original: https://codereview.chromium.org/573703002/

Reland Fixes:
- Add deopt framestate to CollectStackTrace runtime call

R=mstarzinger@chromium.org

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

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

10 years agoDon't update the compilation size statistics when doing an optimized compile.
titzer@chromium.org [Thu, 18 Sep 2014 08:47:13 +0000 (08:47 +0000)]
Don't update the compilation size statistics when doing an optimized compile.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoUse allocation throughput to estimate next scavenge event in idle notification.
hpayer@chromium.org [Thu, 18 Sep 2014 08:44:46 +0000 (08:44 +0000)]
Use allocation throughput to estimate next scavenge event in idle notification.

BUG=
R=ulan@chromium.org

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

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