platform/upstream/v8.git
9 years ago[turbofan] Add PlainPrimitiveToNumber simplified operator.
bmeurer [Tue, 13 Jan 2015 11:02:40 +0000 (03:02 -0800)]
[turbofan] Add PlainPrimitiveToNumber simplified operator.

TEST=unittests

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

Cr-Commit-Position: refs/heads/master@{#26038}

9 years agoAvoid MSVC's C6323 warning (use of arithmetic operator on Boolean type)
Sven Panne [Tue, 13 Jan 2015 10:52:29 +0000 (11:52 +0100)]
Avoid MSVC's C6323 warning (use of arithmetic operator on Boolean type)

We could use BoolToInt consistently, but for now let's just fix the warnings.

R=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26037}

9 years ago[turbofan] Avoid expensive fixup for Uint32Div if divisor is even.
bmeurer [Tue, 13 Jan 2015 10:01:06 +0000 (02:01 -0800)]
[turbofan] Avoid expensive fixup for Uint32Div if divisor is even.

R=dcarney@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26036}

9 years agoUpdate references to global object after deserializing context.
yangguo [Tue, 13 Jan 2015 08:48:00 +0000 (00:48 -0800)]
Update references to global object after deserializing context.

R=jochen@chromium.org
TEST=test-serialize/CustomContext{Des,S}erialization

Also test by
- make ia32.debug embedscript=<full path to mjsunit.js>
- d8 -e "assertDoesNotThrow('print(1)')"

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

Cr-Commit-Position: refs/heads/master@{#26035}

9 years ago[turbofan] Improve code generation for unordered comparisons.
bmeurer [Tue, 13 Jan 2015 08:41:52 +0000 (00:41 -0800)]
[turbofan] Improve code generation for unordered comparisons.

TEST=cctest,unittests

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

Cr-Commit-Position: refs/heads/master@{#26034}

9 years ago[turbofan] Add missing deopt.
jarin [Tue, 13 Jan 2015 08:40:39 +0000 (00:40 -0800)]
[turbofan] Add missing deopt.

BUG=chromium:447567
LOG=n
R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26033}

9 years agoAvoid MSVC's C6282 warning (assignment of constant in Boolean context).
svenpanne [Tue, 13 Jan 2015 08:36:53 +0000 (00:36 -0800)]
Avoid MSVC's C6282 warning (assignment of constant in Boolean context).

By courtesy of /analyze... :-}

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

Cr-Commit-Position: refs/heads/master@{#26032}

9 years agoUpdate V8 DEPS.
v8-autoroll [Tue, 13 Jan 2015 04:22:39 +0000 (20:22 -0800)]
Update V8 DEPS.

Rolling v8/tools/clang to a4a0b2db20ba74e9d928be13ff701b244cfdd0c2

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26031}

9 years agoCompleteParserRecorder: Don't do zero-sized allocations.
marja [Mon, 12 Jan 2015 17:31:47 +0000 (09:31 -0800)]
CompleteParserRecorder: Don't do zero-sized allocations.

Instead, we should use Collector::kMinCapacity.

R=jochen@chromium.org
BUG=v8:3727
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26030}

9 years agoEmbed custom script into the snapshot.
yangguo [Mon, 12 Jan 2015 15:26:20 +0000 (07:26 -0800)]
Embed custom script into the snapshot.

R=vogelheim@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26029}

9 years agoCheck for octals in template spans only, not expressions
caitpotter88 [Mon, 12 Jan 2015 15:07:36 +0000 (07:07 -0800)]
Check for octals in template spans only, not expressions

BUG=v8:3806
LOG=N
R=arv@chromium.org, dslomov@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26028}

9 years ago[turbofan] Canonicalize x - K to x + -K.
bmeurer [Mon, 12 Jan 2015 15:01:58 +0000 (07:01 -0800)]
[turbofan] Canonicalize x - K to x + -K.

TEST=unittests
R=dcarney@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26027}

9 years agoEnable test after arguments count limitation was lifted.
mstarzinger [Mon, 12 Jan 2015 14:32:14 +0000 (06:32 -0800)]
Enable test after arguments count limitation was lifted.

R=bmeurer@chromium.org
TEST=mozilla/js1_5/Regress/regress-396684
BUG=v8:3786

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

Cr-Commit-Position: refs/heads/master@{#26026}

9 years agoMIPS64: Fix '[turbofan] Implement OSR for outer loops.'
balazs.kilvady [Mon, 12 Jan 2015 14:28:57 +0000 (06:28 -0800)]
MIPS64: Fix '[turbofan] Implement OSR for outer loops.'

Add missing include of 159b14172f75ddb89e5daf2cceb9078f1f294916.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26025}

9 years ago[d8] Fix V8 external snapshot for Windows.
rmcilroy [Mon, 12 Jan 2015 12:53:57 +0000 (04:53 -0800)]
[d8] Fix V8 external snapshot for Windows.

Adds a cast to V8 external snapshot code for Windows.

BUG=421063, 439661
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26024}

9 years agoRemove unused iossim setting from mac asan config
jochen [Mon, 12 Jan 2015 12:25:09 +0000 (04:25 -0800)]
Remove unused iossim setting from mac asan config

R=glider@chromium.org
LOG=n
BUG=none
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26023}

9 years agoUnify phantom and internal fields weak handle callbacks
erikcorry [Mon, 12 Jan 2015 12:11:49 +0000 (04:11 -0800)]
Unify phantom and internal fields weak handle callbacks

R=dcarney@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26022}

9 years agoMap -0 to integer 0 for typed array constructors.
dslomov [Mon, 12 Jan 2015 11:42:48 +0000 (03:42 -0800)]
Map -0 to integer 0 for typed array constructors.

R=bmeurer@chromium.org
BUG=chromium:447756
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#26021}

9 years ago[turbofan] Implement OSR for outer loops.
titzer [Mon, 12 Jan 2015 11:39:48 +0000 (03:39 -0800)]
[turbofan] Implement OSR for outer loops.

R=bmeurer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26020}

9 years agoMerge v8_optimized_debug 1 and 2
jochen [Mon, 12 Jan 2015 09:58:29 +0000 (01:58 -0800)]
Merge v8_optimized_debug 1 and 2

All builders that used level 1 should meanwhile define
v8_enable_slow_dchecks, and so they can use level 2 without losing
coverage. Level 2, however, is considerably faster, so we want to use it
on those builders as well. The make optdebug setting is not affected by
this change.

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

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

Cr-Commit-Position: refs/heads/master@{#26019}

9 years agoES6 unicode escapes, part 2: Regexps.
marja [Mon, 12 Jan 2015 09:50:15 +0000 (01:50 -0800)]
ES6 unicode escapes, part 2: Regexps.

Allows \u{xxxxx} in regexps. Behind the --harmony-unicode flag.

Part 1 is here: https://codereview.chromium.org/716423002

BUG=v8:3648
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26018}

9 years agoUpdate V8 DEPS.
v8-autoroll [Sun, 11 Jan 2015 04:26:58 +0000 (20:26 -0800)]
Update V8 DEPS.

Rolling v8/third_party/icu to 4e3266f32c62d30a3f9e2232a753c60129d1e670

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26017}

9 years agoMIPS: remove immediate constraint within CompareAndSwap.
paul.lind [Fri, 9 Jan 2015 20:12:14 +0000 (12:12 -0800)]
MIPS: remove immediate constraint within CompareAndSwap.

Improper use of immediate constraint is slightly non-optimal
with gcc/gnu-as but causes breakage with clang.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26016}

9 years agoIntroduce a gyp variable to control whether or not slow dchecks are on
jochen [Fri, 9 Jan 2015 16:25:36 +0000 (08:25 -0800)]
Introduce a gyp variable to control whether or not slow dchecks are on

The default for the various debug modes doesn't change.

In a follow-up, OptDebug1 and OptDebug2 will be merged

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

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

Cr-Commit-Position: refs/heads/master@{#26015}

9 years ago[turbofan] Fix typo in IrOpcode::Mnemonic.
bmeurer [Fri, 9 Jan 2015 14:19:55 +0000 (06:19 -0800)]
[turbofan] Fix typo in IrOpcode::Mnemonic.

TEST=unittests
R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26014}

9 years agoAdd ASAN and TSAN support for Mac
jochen [Fri, 9 Jan 2015 13:38:13 +0000 (05:38 -0800)]
Add ASAN and TSAN support for Mac

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

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

Cr-Commit-Position: refs/heads/master@{#26013}

9 years agoCorrectly setup the freelist of the coderange on Win64
jochen [Fri, 9 Jan 2015 13:07:29 +0000 (05:07 -0800)]
Correctly setup the freelist of the coderange on Win64

Since we have a special guard page at the beginning of the code range on
win64, we need to make sure to adjust the size of the free list
accordingly when creating it.

BUG=chromium:447555
R=hpayer@chromium.org
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#26012}

9 years agoFast forward V8 to version 4.2
Jochen Eisinger [Fri, 9 Jan 2015 12:55:48 +0000 (13:55 +0100)]
Fast forward V8 to version 4.2

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

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

Cr-Commit-Position: refs/heads/master@{#26011}

9 years agoTry to reduce memory footprint when we run out of memory in Deserializer.
hpayer [Fri, 9 Jan 2015 12:54:07 +0000 (04:54 -0800)]
Try to reduce memory footprint when we run out of memory in Deserializer.

BUG=403113
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26010}

9 years ago[turbofan] Fix control reducer for degenerate cases of self-loop branches.
titzer [Fri, 9 Jan 2015 12:27:59 +0000 (04:27 -0800)]
[turbofan] Fix control reducer for degenerate cases of self-loop branches.

R=jarin@chromium.org
BUG=chromium:447526

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

Cr-Commit-Position: refs/heads/master@{#26009}

9 years agoVerify that Api function's instance call handler is actually a CallHandlerInfo structure.
ishell [Fri, 9 Jan 2015 12:17:18 +0000 (04:17 -0800)]
Verify that Api function's instance call handler is actually a CallHandlerInfo structure.

This is to ensure that chromium:443798 is caused by a random memory
corruption.

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

Cr-Commit-Position: refs/heads/master@{#26008}

9 years agoExtend grokdump's dd command with a second optional parameter defining number of...
ishell [Fri, 9 Jan 2015 11:52:17 +0000 (03:52 -0800)]
Extend grokdump's dd command with a second optional parameter defining number of words to dump.

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

Cr-Commit-Position: refs/heads/master@{#26007}

9 years agoDisable webkit/array-iterate-backwards for debug builds.
vogelheim [Fri, 9 Jan 2015 10:27:04 +0000 (02:27 -0800)]
Disable webkit/array-iterate-backwards for debug builds.

(Debug builds have --enable-slow-asserts, and with slow asserts each
assignment to the array in the prepare function will trigger a check
over the entire array. This turns it into n^2 work, for reasonably
large n.)

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26006}

9 years agoAdd sticky flag to RegExpMirror.
yangguo [Fri, 9 Jan 2015 09:56:14 +0000 (01:56 -0800)]
Add sticky flag to RegExpMirror.

R=marja@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26005}

9 years agoUpdate V8 DEPS.
v8-autoroll [Fri, 9 Jan 2015 04:30:47 +0000 (20:30 -0800)]
Update V8 DEPS.

Rolling v8/buildtools to 451dcd05a5b34936f5be67b2472cd63aaa508401

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26004}

9 years agoWhitespace, to trigger the bots.
Daniel Vogelheim [Thu, 8 Jan 2015 19:08:41 +0000 (20:08 +0100)]
Whitespace, to trigger the bots.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26003}

9 years agoRegularly check hash set addresses to verify memory integrity.
hpayer [Thu, 8 Jan 2015 18:17:23 +0000 (10:17 -0800)]
Regularly check hash set addresses to verify memory integrity.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26002}

9 years agoRemove "extra checks"
jochen [Thu, 8 Jan 2015 16:29:27 +0000 (08:29 -0800)]
Remove "extra checks"

Instead, just use DCHECKs. The builders that want them in release mode
should already be useding dcheck_always_on anyways

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

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

Cr-Commit-Position: refs/heads/master@{#26001}

9 years agoUnship ES6 classes.
dslomov [Thu, 8 Jan 2015 15:10:52 +0000 (07:10 -0800)]
Unship ES6 classes.

R=rossberg@chromium.org
BUG=v8:3330

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

Cr-Commit-Position: refs/heads/master@{#26000}

9 years agoVerify that heap object iterator stays within page bound.
hpayer [Thu, 8 Jan 2015 14:45:14 +0000 (06:45 -0800)]
Verify that heap object iterator stays within page bound.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25999}

9 years agoRevert of Revert of Revert of Turn on job-based recompilation (patchset #1 id:1 of...
jochen [Thu, 8 Jan 2015 14:31:16 +0000 (06:31 -0800)]
Revert of Revert of Revert of Turn on job-based recompilation (patchset #1 id:1 of https://codereview.chromium.org/840023002/)

Reason for revert:
still doesn't work

Original issue's description:
> Revert of Revert of Turn on job-based recompilation (patchset #1 id:1 of https://codereview.chromium.org/791033007/)
>
> Reason for revert:
> attempt reland after landing a fix
>
> Original issue's description:
> > Revert of Turn on job-based recompilation (patchset #2 id:20001 of https://codereview.chromium.org/832183004/)
> >
> > Reason for revert:
> > revert
> >
> > Original issue's description:
> > > Turn on job-based recompilation
> > >
> > > BUG=v8:3608
> > > LOG=y
> > > R=yangguo@chromium.org
> > >
> > > Committed: https://crrev.com/715552409b4a08504301cf1ad4cb2e45a815f01b
> > > Cr-Commit-Position: refs/heads/master@{#25972}
> >
> > TBR=yangguo@chromium.org
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=v8:3608
> >
> > Committed: https://crrev.com/28a5a4865183769cbed9d42ad3fdc1b1d8bae3a3
> > Cr-Commit-Position: refs/heads/master@{#25975}
>
> TBR=yangguo@chromium.org
> NOTREECHECKS=true
> NOTRY=true
> BUG=v8:3608
>
> Committed: https://crrev.com/b4bc9c1a3a7d03dee0b3dd6460414085f79cd36e
> Cr-Commit-Position: refs/heads/master@{#25994}

TBR=yangguo@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=v8:3608

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

Cr-Commit-Position: refs/heads/master@{#25998}

9 years ago[turbofan] Cleanup duplicated/unused code in InstructionSelector.
bmeurer [Thu, 8 Jan 2015 14:13:18 +0000 (06:13 -0800)]
[turbofan] Cleanup duplicated/unused code in InstructionSelector.

- Use C++11 range based for loops.
- Remove duplicated virtual register set in unittests.
- Don't expose implementation details of InstructionSelector.

TEST=unittests
R=dcarney@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25997}

9 years agoRevert of Revert of Add d8 target to the GN build. (patchset #1 id:1 of https://coder...
yangguo [Thu, 8 Jan 2015 13:21:52 +0000 (05:21 -0800)]
Revert of Revert of Add d8 target to the GN build. (patchset #1 id:1 of https://codereview.chromium.org/838983002/)

Reason for revert:
Relanding because this is not actually blocking the roll.

Original issue's description:
> Revert of Add d8 target to the GN build. (patchset #2 id:40001 of https://codereview.chromium.org/834113005/)
>
> Reason for revert:
> V8 roll fails due to this change. (see https://codereview.chromium.org/843673003/)
>
> Original issue's description:
> > Add d8 target to the GN build.
> >
> > Also formats the rest of the file with "gn format". This accounts for all the changes except for the "d8" target additions.
> >
> > Committed: https://crrev.com/36383f08c1f692ea797d54a27d7c6b3d3d53b440
> > Cr-Commit-Position: refs/heads/master@{#25984}
>
> TBR=jochen@chromium.org,machenbach@chromium.org,brettw@chromium.org
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: https://crrev.com/ef50fdfdb05e1a3a3822962f5235b804218a5f4e
> Cr-Commit-Position: refs/heads/master@{#25985}

TBR=jochen@chromium.org,machenbach@chromium.org,brettw@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#25996}

9 years agoFix unsafe unaligned accesses in the serializer/deserializer.
yangguo [Thu, 8 Jan 2015 13:18:45 +0000 (05:18 -0800)]
Fix unsafe unaligned accesses in the serializer/deserializer.

R=svenpanne@chromium.org
BUG=v8:3771
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#25995}

9 years agoRevert of Revert of Turn on job-based recompilation (patchset #1 id:1 of https:/...
jochen [Thu, 8 Jan 2015 13:15:55 +0000 (05:15 -0800)]
Revert of Revert of Turn on job-based recompilation (patchset #1 id:1 of https://codereview.chromium.org/791033007/)

Reason for revert:
attempt reland after landing a fix

Original issue's description:
> Revert of Turn on job-based recompilation (patchset #2 id:20001 of https://codereview.chromium.org/832183004/)
>
> Reason for revert:
> revert
>
> Original issue's description:
> > Turn on job-based recompilation
> >
> > BUG=v8:3608
> > LOG=y
> > R=yangguo@chromium.org
> >
> > Committed: https://crrev.com/715552409b4a08504301cf1ad4cb2e45a815f01b
> > Cr-Commit-Position: refs/heads/master@{#25972}
>
> TBR=yangguo@chromium.org
> NOTREECHECKS=true
> NOTRY=true
> BUG=v8:3608
>
> Committed: https://crrev.com/28a5a4865183769cbed9d42ad3fdc1b1d8bae3a3
> Cr-Commit-Position: refs/heads/master@{#25975}

TBR=yangguo@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=v8:3608

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

Cr-Commit-Position: refs/heads/master@{#25994}

9 years agoMake sure that the TimerEventScope is destroyed before we signal completion
jochen [Thu, 8 Jan 2015 13:14:16 +0000 (05:14 -0800)]
Make sure that the TimerEventScope is destroyed before we signal completion

Otherwise, the isolate that is referenced by the scope might already be
gone

BUG=v8:3608
R=yangguo@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#25993}

9 years agocompiler: enable optimizer for function literals
Ben Noordhuis [Thu, 8 Jan 2015 13:13:39 +0000 (14:13 +0100)]
compiler: enable optimizer for function literals

R=yangguo@chromium.org

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

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

Cr-Commit-Position: refs/heads/master@{#25992}

9 years agoRevert of Hack around broken snapshot generation in the GN build on Android. (patchse...
machenbach [Thu, 8 Jan 2015 10:50:03 +0000 (02:50 -0800)]
Revert of Hack around broken snapshot generation in the GN build on Android. (patchset #1 id:1 of https://codereview.chromium.org/832413005/)

Reason for revert:
Suspected to block the current v8 roll:
https://codereview.chromium.org/842783003/

Original issue's description:
> Hack around broken snapshot generation in the GN build on Android.
>
> The generated snapshot just crashes on the device, but
> disabling snapshots allows us to run V8 just fine which
> is sufficient for our purposes at this point.
>
> Mojo/Sky are GN-only so we depend on the V8 GN build even if
> it's not considered production for Chromium yet.
>
> R=jochen@chromium.org
>
> Committed: https://crrev.com/3e97df1ee8b8bfdddd63ad3c7b79960d24c83b74
> Cr-Commit-Position: refs/heads/master@{#25982}

TBR=jochen@chromium.org,eseidel@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#25991}

9 years agoRevert of Run "gn format" on v8's BUILD.gn file. (patchset #1 id:1 of https://coderev...
machenbach [Thu, 8 Jan 2015 10:48:04 +0000 (02:48 -0800)]
Revert of Run "gn format" on v8's BUILD.gn file. (patchset #1 id:1 of https://codereview.chromium.org/787873003/)

Reason for revert:
Need to revert in order to revert
https://codereview.chromium.org/832413005/

Original issue's description:
> Run "gn format" on v8's BUILD.gn file.
>
> There should be no functional change.
>
> This is a reland of a portion of https://codereview.chromium.org/834113005/
>
> Committed: https://crrev.com/e1d957268d154e7fb7abd5a6cad54f602badc9b8
> Cr-Commit-Position: refs/heads/master@{#25986}

TBR=jochen@chromium.org,brettw@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#25990}

9 years agoCorrectly parse line ends for debugging.
Yang Guo [Thu, 8 Jan 2015 10:45:58 +0000 (11:45 +0100)]
Correctly parse line ends for debugging.

Instead of using only \n as line terminator, we now use the definition
in http://www.ecma-international.org/ecma-262/5.1/#sec-7.3

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

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

Cr-Commit-Position: refs/heads/master@{#25989}

9 years agoFixed printing during DCE.
svenpanne [Thu, 8 Jan 2015 09:53:53 +0000 (01:53 -0800)]
Fixed printing during DCE.

Removed a superfluous space on the way.

BUG=v8:3679
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#25988}

9 years ago[turbofan] Correctify representation changes to bit.
bmeurer [Thu, 8 Jan 2015 09:48:30 +0000 (01:48 -0800)]
[turbofan] Correctify representation changes to bit.

TEST=cctest/test-representation-change,unittests,mjsunit/compiler/regress-bit-number-constant
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25987}

9 years agoRun "gn format" on v8's BUILD.gn file.
brettw [Thu, 8 Jan 2015 09:35:16 +0000 (01:35 -0800)]
Run "gn format" on v8's BUILD.gn file.

There should be no functional change.

This is a reland of a portion of https://codereview.chromium.org/834113005/

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

Cr-Commit-Position: refs/heads/master@{#25986}

9 years agoRevert of Add d8 target to the GN build. (patchset #2 id:40001 of https://codereview...
yangguo [Thu, 8 Jan 2015 08:38:13 +0000 (00:38 -0800)]
Revert of Add d8 target to the GN build. (patchset #2 id:40001 of https://codereview.chromium.org/834113005/)

Reason for revert:
V8 roll fails due to this change. (see https://codereview.chromium.org/843673003/)

Original issue's description:
> Add d8 target to the GN build.
>
> Also formats the rest of the file with "gn format". This accounts for all the changes except for the "d8" target additions.
>
> Committed: https://crrev.com/36383f08c1f692ea797d54a27d7c6b3d3d53b440
> Cr-Commit-Position: refs/heads/master@{#25984}

TBR=jochen@chromium.org,machenbach@chromium.org,brettw@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#25985}

9 years agoAdd d8 target to the GN build.
brettw [Thu, 8 Jan 2015 05:16:32 +0000 (21:16 -0800)]
Add d8 target to the GN build.

Also formats the rest of the file with "gn format". This accounts for all the changes except for the "d8" target additions.

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

Cr-Commit-Position: refs/heads/master@{#25984}

9 years agoUpdate V8 DEPS.
v8-autoroll [Thu, 8 Jan 2015 04:30:59 +0000 (20:30 -0800)]
Update V8 DEPS.

Rolling v8/build/gyp to 82b08049cc0b1f9e0bdcc0702ac6b523360f635f

Rolling v8/tools/clang to 24bed8c99d57ebfad05890c21f03f31af39dc6d4

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25983}

9 years agoHack around broken snapshot generation in the GN build on Android.
eseidel [Wed, 7 Jan 2015 20:39:21 +0000 (12:39 -0800)]
Hack around broken snapshot generation in the GN build on Android.

The generated snapshot just crashes on the device, but
disabling snapshots allows us to run V8 just fine which
is sufficient for our purposes at this point.

Mojo/Sky are GN-only so we depend on the V8 GN build even if
it's not considered production for Chromium yet.

R=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25982}

9 years agoremove declarative accessors
dcarney [Wed, 7 Jan 2015 16:37:26 +0000 (08:37 -0800)]
remove declarative accessors

R=jochen@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25981}

9 years agoFix sourceURL & sourceMapURL handling in case of background parsing
sergeyv [Wed, 7 Jan 2015 15:56:11 +0000 (07:56 -0800)]
Fix sourceURL & sourceMapURL handling in case of background parsing

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25980}

9 years ago[turbofan] Fix bit representation of NumberConstant.
bmeurer [Wed, 7 Jan 2015 15:44:13 +0000 (07:44 -0800)]
[turbofan] Fix bit representation of NumberConstant.

TEST=mjsunit/compiler/regress-bit-number-constant

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

Cr-Commit-Position: refs/heads/master@{#25979}

9 years agoCorrect handling of exceptions occured during getting of exception stack trace.
ishell [Wed, 7 Jan 2015 14:50:11 +0000 (06:50 -0800)]
Correct handling of exceptions occured during getting of exception stack trace.

BUG=chromium:444805
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#25978}

9 years ago[turbofan] Cleanup Graph and related classes.
bmeurer [Wed, 7 Jan 2015 14:42:38 +0000 (06:42 -0800)]
[turbofan] Cleanup Graph and related classes.

- Move NodeMarker to its own file, and introduce a non
  templatized base class.
- Cleanup the include hell.
- Sanitize the Node construction methods now that we
  got rid of that GenericNode/GenericGraph stuff.
- Protect against NodeId overflow in Graph.
- Various minor cleanups.

TEST=cctest,mjsunit,unittests

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

Cr-Commit-Position: refs/heads/master@{#25977}

9 years agomake check failures unlikely
dcarney [Wed, 7 Jan 2015 14:40:39 +0000 (06:40 -0800)]
make check failures unlikely

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25976}

9 years agoRevert of Turn on job-based recompilation (patchset #2 id:20001 of https://codereview...
jochen [Wed, 7 Jan 2015 14:15:26 +0000 (06:15 -0800)]
Revert of Turn on job-based recompilation (patchset #2 id:20001 of https://codereview.chromium.org/832183004/)

Reason for revert:
revert

Original issue's description:
> Turn on job-based recompilation
>
> BUG=v8:3608
> LOG=y
> R=yangguo@chromium.org
>
> Committed: https://crrev.com/715552409b4a08504301cf1ad4cb2e45a815f01b
> Cr-Commit-Position: refs/heads/master@{#25972}

TBR=yangguo@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=v8:3608

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

Cr-Commit-Position: refs/heads/master@{#25975}

9 years agoFix bug in Runtime_CompileOptimized resulting from stack overflow.
titzer [Wed, 7 Jan 2015 13:43:31 +0000 (05:43 -0800)]
Fix bug in Runtime_CompileOptimized resulting from stack overflow.

R=jarin@chromium.org
BUG=chromium:446389
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#25974}

9 years agoRemove the magic that sets CXX in the toplevel Makefile
jochen [Wed, 7 Jan 2015 13:33:10 +0000 (05:33 -0800)]
Remove the magic that sets CXX in the toplevel Makefile

The logic was supposed to trigger a rebuild if the CXX variable is
changed. However, it failed to track the other compiler related
variables, and, what is worse, conflicted with the clang=1 gyp setting
by forcing CXX to g++

The new logic just relies on tracking GYP defines, and checks whether
the CXX binary - if set - has a target different from the host
architecture.

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

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

Cr-Commit-Position: refs/heads/master@{#25973}

9 years agoTurn on job-based recompilation
jochen [Wed, 7 Jan 2015 13:30:51 +0000 (05:30 -0800)]
Turn on job-based recompilation

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

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

Cr-Commit-Position: refs/heads/master@{#25972}

9 years agoFix debug-debugger.js wrt strict mode.
yangguo [Wed, 7 Jan 2015 13:08:10 +0000 (05:08 -0800)]
Fix debug-debugger.js wrt strict mode.

R=rossberg@chromium.org
BUG=v8:3790
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#25971}

9 years ago[turbofan] remove spill slot reuse flag
dcarney [Wed, 7 Jan 2015 12:46:01 +0000 (04:46 -0800)]
[turbofan] remove spill slot reuse flag

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25970}

9 years ago[x86] Blacklist AVX for all Mac OS versions up to 10.9.
Benedikt Meurer [Wed, 7 Jan 2015 12:10:44 +0000 (13:10 +0100)]
[x86] Blacklist AVX for all Mac OS versions up to 10.9.

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25969}

9 years ago[turbofan] remove checks for virtual register overflow
dcarney [Wed, 7 Jan 2015 12:00:38 +0000 (04:00 -0800)]
[turbofan] remove checks for virtual register overflow

R=bmeurer@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25968}

9 years agoRestrict representation inference to avoid truncation of phi inputs.
jarin [Wed, 7 Jan 2015 11:38:42 +0000 (03:38 -0800)]
Restrict representation inference to avoid truncation of phi inputs.

BUG=chromium:446778
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#25967}

9 years agoEnable serializing eagerly compiled inner functions.
yangguo [Wed, 7 Jan 2015 11:24:39 +0000 (03:24 -0800)]
Enable serializing eagerly compiled inner functions.

R=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25966}

9 years ago[x86] Disable AVX on Mac OS X 10.9.
bmeurer [Wed, 7 Jan 2015 10:03:39 +0000 (02:03 -0800)]
[x86] Disable AVX on Mac OS X 10.9.

Mac OS X 10.9 (Mavericks) has a bug that causes AVX transitions in ISRs,
so we better not use AVX there.

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

Cr-Commit-Position: refs/heads/master@{#25965}

9 years agoAdd script to generate the v8 version.
machenbach [Wed, 7 Jan 2015 08:52:31 +0000 (00:52 -0800)]
Add script to generate the v8 version.

BUG=chromium:446166
LOG=n
TBR=jkummerow@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#25964}

9 years ago[turbofan] Generalize constant propagation.
bmeurer [Wed, 7 Jan 2015 08:24:24 +0000 (00:24 -0800)]
[turbofan] Generalize constant propagation.

Also support additional number types (singleton ranges, NaN and minus
zero) for constant propagation in typed lowering.

TEST=unittests

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

Cr-Commit-Position: refs/heads/master@{#25963}

9 years agoPrint the SharedFunctionInfo besides the function name, makes matching against -...
Sven Panne [Wed, 7 Jan 2015 08:14:15 +0000 (09:14 +0100)]
Print the SharedFunctionInfo besides the function name, makes matching against --trace_opt output easier.

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25962}

9 years agojust a typo
yunchao.he [Wed, 7 Jan 2015 07:44:48 +0000 (23:44 -0800)]
just a typo

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25961}

9 years agoDisable test case for turbofan unsupported platform.
chunyang.dai [Tue, 6 Jan 2015 12:09:13 +0000 (04:09 -0800)]
Disable test case for turbofan unsupported platform.

  Test case LowerAnyToBoolean_tagged_tagged invokes "Linkage::GetStubCallDescriptor(...)"
  function but this function is not implemented on turbofan unsupported platform.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25960}

9 years agoMake control reducer revisit newly introduced merges.
jarin [Mon, 5 Jan 2015 16:35:12 +0000 (08:35 -0800)]
Make control reducer revisit newly introduced merges.

TEST=mjsunit/compiler/regress-445876
BUG=chromium:445876
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#25959}

9 years ago[turbofan] Correctify JSToBoolean lowering.
Benedikt Meurer [Mon, 5 Jan 2015 13:44:13 +0000 (14:44 +0100)]
[turbofan] Correctify JSToBoolean lowering.

Introduce a new AnyToBoolean simplified operator to handle the later
lowering of boolean conversions. Previously we tried to hack that with
the generic JSToBoolean, having its context set to zero, but that lead
to various problems/bugs and did not handle all cases.

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

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

Cr-Commit-Position: refs/heads/master@{#25958}

9 years ago[turbofan] Don't crash when typing load from a Uint8ClampedArray.
Benedikt Meurer [Mon, 5 Jan 2015 13:43:31 +0000 (14:43 +0100)]
[turbofan] Don't crash when typing load from a Uint8ClampedArray.

TEST=mjsunit/compiler/regress-446156
BUG=chromium:446156
LOG=y
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25957}

9 years ago[turbofan] Fix incorrect minus zero handling in the unit tests.
bmeurer [Mon, 5 Jan 2015 12:29:04 +0000 (04:29 -0800)]
[turbofan] Fix incorrect minus zero handling in the unit tests.

TEST=unittests
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25956}

9 years agoWhitespace commit to trigger bots.
Michael Achenbach [Sun, 4 Jan 2015 23:18:10 +0000 (00:18 +0100)]
Whitespace commit to trigger bots.

Cr-Commit-Position: refs/heads/master@{#25955}

9 years agoWhitespace commit to trigger bots.
Michael Achenbach [Sun, 4 Jan 2015 12:53:00 +0000 (13:53 +0100)]
Whitespace commit to trigger bots.

Cr-Commit-Position: refs/heads/master@{#25954}

9 years agoDo not reduce effect phis for loops.
jarin [Sat, 3 Jan 2015 12:45:46 +0000 (04:45 -0800)]
Do not reduce effect phis for loops.

This prevents eliminating effectful statements before the loop.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#25953}

9 years ago[turbofan] Cache common Loop, Merge and Parameter operators.
bmeurer [Fri, 2 Jan 2015 14:16:42 +0000 (06:16 -0800)]
[turbofan] Cache common Loop, Merge and Parameter operators.

R=jarin@chromium.org
BUG=v8:3792
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#25952}

9 years ago[turbofan] Truncation of Bit/Word8/16 to Word32 is a no-op.
bmeurer [Fri, 2 Jan 2015 10:39:00 +0000 (02:39 -0800)]
[turbofan] Truncation of Bit/Word8/16 to Word32 is a no-op.

TEST=mjsunit/compiler/regress-445859
BUG=chromium:445859
LOG=y
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25951}

9 years ago[x64] Rearrange code for OOB integer loads.
bmeurer [Fri, 2 Jan 2015 10:15:23 +0000 (02:15 -0800)]
[x64] Rearrange code for OOB integer loads.

We cannot just clear the result register optimistically, because the
register allocator might assign the same register to result and buffer.

TEST=mjsunit/compiler/regress-445858
BUG=chromium:445858
LOG=y
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25950}

9 years agoFix %NeverOptimizeFunction() intrinsic.
bmeurer [Fri, 2 Jan 2015 08:17:50 +0000 (00:17 -0800)]
Fix %NeverOptimizeFunction() intrinsic.

Set a valid reason for disabling optimization when using
%NeverOptimizeFunction.

TEST=mjsunit/compiler/regress-445732
BUG=chromium:445732
LOG=y
TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25949}

9 years ago[turbofan] Fix missing MachineOperator unittest.
bmeurer [Fri, 2 Jan 2015 07:43:34 +0000 (23:43 -0800)]
[turbofan] Fix missing MachineOperator unittest.

The machine-operator-unittest.cc file was missing from unittests.gyp.
Fixed the compiler errors and added it back.

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25948}

9 years agoWhitespace change to trigger bots.
Michael Achenbach [Wed, 31 Dec 2014 13:01:02 +0000 (14:01 +0100)]
Whitespace change to trigger bots.

Cr-Commit-Position: refs/heads/master@{#25947}

9 years agoWork around 'Text file busy' errors in android perf runner.
machenbach [Wed, 31 Dec 2014 11:16:00 +0000 (03:16 -0800)]
Work around 'Text file busy' errors in android perf runner.

BUG=374740
TBR=ulan@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#25946}

9 years ago[turbofan] Fix invalid bounds check with overflowing offset.
bmeurer [Mon, 29 Dec 2014 10:01:05 +0000 (02:01 -0800)]
[turbofan] Fix invalid bounds check with overflowing offset.

TEST=mjsunit/compiler/regress-445267
BUG=chromium:445267
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#25945}

9 years agoUpdate V8 DEPS.
v8-autoroll [Mon, 29 Dec 2014 04:29:34 +0000 (20:29 -0800)]
Update V8 DEPS.

Rolling v8/tools/clang to c945be21f6485fa177b43814f910b76cce921653

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25944}

9 years agoUpdate V8 DEPS.
v8-autoroll [Sat, 27 Dec 2014 04:30:25 +0000 (20:30 -0800)]
Update V8 DEPS.

Rolling v8/tools/clang to 51f59463cfea7fc19d085253cf9bd40c1b4c0038

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25943}

9 years agoUpdate V8 DEPS.
v8-autoroll [Fri, 26 Dec 2014 04:30:47 +0000 (20:30 -0800)]
Update V8 DEPS.

Rolling v8/tools/clang to 6f504ec1a843c7c6af799768a774dec205ce4f3b

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25942}

9 years ago[turbofan] Raise max virtual registers and call parameter limit.
bmeurer [Thu, 25 Dec 2014 18:17:49 +0000 (10:17 -0800)]
[turbofan] Raise max virtual registers and call parameter limit.

Change InstructionOperand to use a 64-bit field for encoding the operand
information instead of the 32-bit field that was used before. Ideally we
wouldn't use the Zone-allocated bit field at all, and use an integer
instead of the pointer; but that requires fixing the register allocator
first, which will take some time.

TEST=mjsunit/compiler/regress-3786
BUG=v8:3786
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#25941}

9 years agoRemove UNREACHABLE() statements from sys-info.cc
jochen [Tue, 23 Dec 2014 19:25:09 +0000 (11:25 -0800)]
Remove UNREACHABLE() statements from sys-info.cc

We have safe fallbacks in all cases, and it's possible to hit those
codepaths, e.g., on Linux when /proc is not mounted

BUG=v8:3544
R=ulan@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#25940}

9 years ago[turbofan] Turn IrOpcode::Mnemonic() into a table lookup.
bmeurer [Tue, 23 Dec 2014 19:24:03 +0000 (11:24 -0800)]
[turbofan] Turn IrOpcode::Mnemonic() into a table lookup.

R=ishell@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25939}