Commit Graph

20726 Commits

Author SHA1 Message Date
bmeurer
c24220c0c1 [turbofan] Improve code generation for unordered comparisons.
TEST=cctest,unittests

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

Cr-Commit-Position: refs/heads/master@{#26034}
2015-01-13 08:42:02 +00:00
jarin
527e19afd5 [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}
2015-01-13 08:40:54 +00:00
svenpanne
cf09a5a191 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}
2015-01-13 08:37:06 +00:00
v8-autoroll
0782cdaed2 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}
2015-01-13 04:23:11 +00:00
marja
665c6faad2 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}
2015-01-12 17:32:00 +00:00
yangguo
39cd762c6c Embed custom script into the snapshot.
R=vogelheim@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26029}
2015-01-12 15:26:31 +00:00
caitpotter88
4b6316c5ff 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}
2015-01-12 15:07:47 +00:00
bmeurer
0e8a6d4ec8 [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}
2015-01-12 15:02:06 +00:00
mstarzinger
df30088de3 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}
2015-01-12 14:32:23 +00:00
balazs.kilvady
09e5e02da7 MIPS64: Fix '[turbofan] Implement OSR for outer loops.'
Add missing include of 159b14172f.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26025}
2015-01-12 14:29:06 +00:00
rmcilroy
76ce4a9c2f [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}
2015-01-12 12:54:05 +00:00
jochen
dfdc8ca12e 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}
2015-01-12 12:25:17 +00:00
erikcorry
7db1759b65 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}
2015-01-12 12:12:10 +00:00
dslomov
a4124b3bfc 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}
2015-01-12 11:42:57 +00:00
titzer
159b14172f [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}
2015-01-12 11:39:58 +00:00
jochen
aeb09e6dcf 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}
2015-01-12 09:58:42 +00:00
marja
2305cfb4e2 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}
2015-01-12 09:50:34 +00:00
v8-autoroll
f9a22a5e58 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}
2015-01-11 04:27:14 +00:00
paul.lind
eb68d6fe13 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}
2015-01-09 20:12:28 +00:00
jochen
77e3e48ee2 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}
2015-01-09 16:25:51 +00:00
bmeurer
b6c7e11c10 [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}
2015-01-09 14:20:03 +00:00
jochen
8216f1bc7c 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}
2015-01-09 13:38:25 +00:00
jochen
21ce246423 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}
2015-01-09 13:07:42 +00:00
Jochen Eisinger
c10c3cbf18 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}
2015-01-09 12:56:04 +00:00
hpayer
b1bcf6667d 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}
2015-01-09 12:54:17 +00:00
titzer
7e98658e31 [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}
2015-01-09 12:28:14 +00:00
ishell
c95b3274e2 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}
2015-01-09 12:17:30 +00:00
ishell
eecfb92748 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}
2015-01-09 11:52:30 +00:00
vogelheim
c72c28dd00 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}
2015-01-09 10:27:15 +00:00
yangguo
affc68b8aa Add sticky flag to RegExpMirror.
R=marja@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26005}
2015-01-09 09:56:32 +00:00
v8-autoroll
3d527ff4ca 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}
2015-01-09 04:31:05 +00:00
Daniel Vogelheim
5c1a8a8107 Whitespace, to trigger the bots.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26003}
2015-01-08 19:08:55 +00:00
hpayer
ce311ed001 Regularly check hash set addresses to verify memory integrity.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26002}
2015-01-08 18:17:37 +00:00
jochen
0959123e57 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}
2015-01-08 16:29:39 +00:00
dslomov
a417b41880 Unship ES6 classes.
R=rossberg@chromium.org
BUG=v8:3330

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

Cr-Commit-Position: refs/heads/master@{#26000}
2015-01-08 15:11:01 +00:00
hpayer
3783de492f Verify that heap object iterator stays within page bound.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#25999}
2015-01-08 14:45:28 +00:00
jochen
33c81549fb Revert of Revert of Revert of Turn on job-based recompilation (patchset 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  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  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}
2015-01-08 14:31:23 +00:00
bmeurer
5157472539 [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}
2015-01-08 14:13:33 +00:00
yangguo
ebf3c34fb9 Revert of Revert of Add d8 target to the GN build. (patchset 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  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}
2015-01-08 13:22:02 +00:00
yangguo
d06f1db31f 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}
2015-01-08 13:18:55 +00:00
jochen
b4bc9c1a3a Revert of Revert of Turn on job-based recompilation (patchset 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  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}
2015-01-08 13:16:02 +00:00
jochen
a443998ed3 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}
2015-01-08 13:14:30 +00:00
Ben Noordhuis
ad0069e8fe 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}
2015-01-08 13:13:59 +00:00
machenbach
7deccd18ed Revert of Hack around broken snapshot generation in the GN build on Android. (patchset 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}
2015-01-08 10:50:16 +00:00
machenbach
6c6233c1e7 Revert of Run "gn format" on v8's BUILD.gn file. (patchset 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}
2015-01-08 10:48:13 +00:00
Yang Guo
2050994d80 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}
2015-01-08 10:46:13 +00:00
svenpanne
ad412d046b 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}
2015-01-08 09:54:01 +00:00
bmeurer
fec1bba852 [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}
2015-01-08 09:48:41 +00:00
brettw
e1d957268d 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}
2015-01-08 09:35:32 +00:00
yangguo
ef50fdfdb0 Revert of Add d8 target to the GN build. (patchset 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}
2015-01-08 08:38:25 +00:00