Commit Graph

25483 Commits

Author SHA1 Message Date
bmeurer
6529971a7f Revert of [heap] Remove retry space from AllocateRaw. (patchset #3 id:40001 of https://codereview.chromium.org/1370123002/ )
Reason for revert:
Breaks arm64 nosnap simulator (bogus cctest?): https://chromegw.corp.google.com/i/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug%20-%201/builds/2934/steps/Bisect%202786ceec.Retry/logs/IncrementalWriteBarri..

Original issue's description:
> [heap] Remove retry space from AllocateRaw.
>
> BUG=
>
> Committed: https://crrev.com/2786ceec1eb491494d24d29a59eefbe3b6704be2
> Cr-Commit-Position: refs/heads/master@{#30984}

TBR=mstarzinger@chromium.org,hpayer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30991}
2015-09-29 04:40:02 +00:00
mtrofin
d5a9dd6539 [turbofan] Greedy: smarter last resort splitting.
When all heuristics fail, we run a "last resort" heuristic. Before, it was
splitting at the first found splittable position either before or after a
use position. That turns out to be too naive: it may split in loops, when
alternative split positions exist outside loops.

This change chooses a "before" use case location that is outside the
loop.

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

Cr-Commit-Position: refs/heads/master@{#30990}
2015-09-29 03:47:35 +00:00
v8-autoroll
5a13102df9 Update V8 DEPS.
Rolling v8/buildtools to e7111440c07a883b82ffbbe6d26c744dfc6c9673

TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30989}
2015-09-29 03:23:52 +00:00
chunyang.dai
22a38d7252 X87: [es6] Fix invalid ToString in implementation of ToName.
port 09626525fe (r30957).

original commit message:

BUG=

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

Cr-Commit-Position: refs/heads/master@{#30988}
2015-09-29 02:21:08 +00:00
alph
e0606c9f00 Move heap and CPU profilers into a dedicated directory.
Drive-by: remove unnecessary includes.

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

Cr-Commit-Position: refs/heads/master@{#30987}
2015-09-28 19:34:18 +00:00
oth
003648772a [Interpreter] Add tests for adding strings and heap number arithmetic.
BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#30986}
2015-09-28 19:14:30 +00:00
mstarzinger
df7df4df2a [heap] Move CALL_HEAP_FUNCTION macro into factory.cc file.
R=hpayer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30985}
2015-09-28 18:08:30 +00:00
hpayer
2786ceec1e [heap] Remove retry space from AllocateRaw.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30984}
2015-09-28 18:07:30 +00:00
oth
17363fa4f3 [Interpreter] Add interpreter support for compare ops and ToBoolean.
The comparison operators and ToBoolean are implemented by calling into
the runtime. There are new runtime methods are prefixed with Interpreter
to make use case clear.

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#30983}
2015-09-28 18:07:05 +00:00
ishell
4d03c3aaba Revert of Introduce a V8_NORETURN macro and use it to make GCC 4.9.2 happy again. (patchset #3 id:80001 of https://codereview.chromium.org/1361763004/ )
Reason for revert:
This CL breaks cross-compiling to arm.

Original issue's description:
> Introduce a V8_NORETURN macro and use it to make GCC 4.9.2 happy again.
>
> Without that, it has a few false positives about out-of-bounds array accesses.
> Also makes the clang static-analyzer happy.
>
> Original code review from Sven Panne:
> https://codereview.chromium.org/790723002/
>
> Committed: https://crrev.com/0b48b2a8ebfc791a36f4ec1f299f46db76265a3a
> Cr-Commit-Position: refs/heads/master@{#30977}

TBR=jochen@chromium.org,bmeurer@chromium.org,jkummerow@chromium.org,karl@skomski.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#30982}
2015-09-28 16:47:07 +00:00
neis
b466dc1479 Clean up rewriter.
The main changes are:
- Fix treatment of loops, which was incorrect and sometimes resulted in
  the wrong completion value.
- Get rid of unnecessary variables.

This is in preparation of implementing ES6 completion semantics.

R=rossberg
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30981}
2015-09-28 15:09:56 +00:00
ishell
601c8d9f87 Add ishell@ and mvstanton@ to full codegen owners list.
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#30980}
2015-09-28 15:04:37 +00:00
caitpotter88
7b405200b0 [test] Remove FAIL expectation for intl/collator/default-locale on Android and Mac
BUG=v8:2899
LOG=N
R=

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

Cr-Commit-Position: refs/heads/master@{#30979}
2015-09-28 14:51:57 +00:00
ben
e874579f28 Fix DCHECK in ScopeInfo::Print().
Review URL: https://codereview.chromium.org/1369913002

Cr-Commit-Position: refs/heads/master@{#30978}
2015-09-28 14:12:54 +00:00
karl
0b48b2a8eb Introduce a V8_NORETURN macro and use it to make GCC 4.9.2 happy again.
Without that, it has a few false positives about out-of-bounds array accesses.
Also makes the clang static-analyzer happy.

Original code review from Sven Panne:
https://codereview.chromium.org/790723002/

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

Cr-Commit-Position: refs/heads/master@{#30977}
2015-09-28 14:03:10 +00:00
machenbach
8679b9d78b [test] Remove test262-es6.
This was copied into test262.

BUG=v8:4254
NOTRY=true
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#30976}
2015-09-28 14:03:09 +00:00
jkummerow
7117acd26c objects-inl.h: Remove ACCESSORS_TO_SMI macro
Replacing it with SMI_ACCESSORS.
This change makes accesses to Smi fields in objects more regular (the
accessors now always consume/return an int rather than a Smi*), which
avoids a bunch of manual Smi::FromInt() and Smi::value() conversions,
and is a step on the way towards being able to generate objects-inl.h.

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

Cr-Commit-Position: refs/heads/master@{#30975}
2015-09-28 13:10:29 +00:00
ishell
27ff0671a0 Removing the Class/ObjectLiteral::LayoutFeedbackSlots().
Review URL: https://codereview.chromium.org/1372003002

Cr-Commit-Position: refs/heads/master@{#30974}
2015-09-28 13:02:50 +00:00
mstarzinger
8dc8903f3d [heap] Simplify CALL_HEAP_FUNCTION macro dance.
R=hpayer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30973}
2015-09-28 13:01:49 +00:00
andybons
6e0cd21569 [Docs] Add wiki content to Markdown docs
NOTE: You will have to land this as I don’t have write perms to this repo.

BUG=none
R=hablich@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30972}
2015-09-28 12:41:25 +00:00
ishell
b2d82a22a1 Refactored interface of FeedbackVectorSpec and friends.
This is a second step towards merging FeedbackVectorSlot and FeedbackVectorICSlot.

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

Cr-Commit-Position: refs/heads/master@{#30971}
2015-09-28 11:41:48 +00:00
neis
d3ef8f4b95 [es6] Ship rest parameters.
R=rossberg
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30970}
2015-09-28 11:19:35 +00:00
hpayer
91397ac7aa [heap] Reland Move large object space selection into AllocateRaw.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30969}
2015-09-28 09:57:43 +00:00
bmeurer
8611fb31a2 [bootstrapper] Fix raw pointer use during potential GC.
This should fix a weird random crash we keep seeing on Linux nosnap
bot with TurboFan enabled.

BUG=v8:4435,v8:4423
LOG=n
R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30968}
2015-09-28 09:42:21 +00:00
bmeurer
39114da1a7 [api] Make sure InterceptorInfo is always in a verifyable state.
This should fix the Threading1 flakiness that we see on the waterfall.

R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30967}
2015-09-28 09:02:38 +00:00
ben
f78215962b Remove obsolete try/catch from ObjectIsPromise().
Review URL: https://codereview.chromium.org/1367123003

Cr-Commit-Position: refs/heads/master@{#30966}
2015-09-28 08:44:46 +00:00
mlippautz
660d4fa7b0 [heap] Adjust number of parallel compaction tasks
This is a trivial spinoff of the more complicated CL splitting up memory:
  https://codereview.chromium.org/1365743003/

- Parallel compaction is still off.
- We now compute the number of parallel compaction tasks, depending on the
  evacuation candidate list, the number of cores, and some hard limit.

BUG=chromium:524425
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#30965}
2015-09-28 08:35:48 +00:00
ishell
6ca00aac1a Use FeedbackVectorSlotKind instead of Code::Kind for type feedback vector.
This is a first step towards merging FeedbackVectorSlot and FeedbackVectorICSlot.

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

Cr-Commit-Position: refs/heads/master@{#30964}
2015-09-28 08:23:50 +00:00
mstarzinger
6a20034d24 [presubmit] Fix whitespace/semicolon linter violations.
R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30963}
2015-09-28 08:18:49 +00:00
jarin
dac7c95376 [turbofan] Move node verification methods to the Verifier class.
Review URL: https://codereview.chromium.org/1367423002

Cr-Commit-Position: refs/heads/master@{#30962}
2015-09-28 08:15:19 +00:00
mstarzinger
4f55b83012 [heap] No leakage of mark-compact.h outside of heap.
R=hpayer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30961}
2015-09-28 08:04:25 +00:00
machenbach
d64315c7a3 [test] Skip test on noi18n.
Fails since test262-es6 is tested without i18n support.

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

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

Cr-Commit-Position: refs/heads/master@{#30960}
2015-09-28 07:14:05 +00:00
Michael Achenbach
1fe1c74a37 remove byte-accounting assert for crbug.com/536163
The change https://codereview.chromium.org/1274453002 is causing a breakage
on the Chrome OS builds. It is not clear how to easily revert because there is
a following on dependent change (https://codereview.chromium.org/1351983002) am
I am not too familiar with the revert process.

The simplest revert is to remove the DCHECK.

BUG=chromium:536163
LOG=n
NOTRY=true
R=machenbach@chromium.org, cmumford@chromium.org, hpayer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30959}
2015-09-28 06:59:04 +00:00
jarin
5b5bde03d8 [turbofan] In GraphReducer::Replace, check uses to not misuse the replacement.
Review URL: https://codereview.chromium.org/1361893006

Cr-Commit-Position: refs/heads/master@{#30958}
2015-09-28 05:37:41 +00:00
bmeurer
09626525fe [es6] Fix invalid ToString in implementation of ToName.
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30957}
2015-09-28 05:34:08 +00:00
bmeurer
1ce206872f [builtins] Fix ToString in Array.prototype.join.
The internal ConvertToString helper was using the wrong ToPrimitive,
actually the old ES5 like DefaultString, and it also prematurely
optimized for no real benefit.

BUG=v8:4307
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#30956}
2015-09-28 05:03:42 +00:00
bmeurer
6266a9d6b5 [crankshaft] Add support for %_ToString.
Also support %_ToString in Crankshaft utilizing the ToStringStub, which
is also used in TurboFan and fullcodegen. This is necessary to repair a
regression on Octane that was introduced when switching from the hand
crafted NonStringToString/ToString magic to %_ToString (which properly
supports @@toPrimitive).

BUG=chromium:535953,v8:4307
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#30955}
2015-09-28 05:01:29 +00:00
chunyang.dai
bac284ee75 X87: Full code shouldn't embed the type feedback vector.
port c90c60ba26 (r30940)

original commit message:

    Make sure to always reference it indirectly. This allows us to make the vector
    native-context dependent should we wish.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#30954}
2015-09-28 03:09:16 +00:00
v8-autoroll
9fae8127f1 Update V8 DEPS.
Rolling v8/buildtools to 8d89c1b15f80323b54b3305b2be7b26686fd5611

TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30953}
2015-09-27 03:25:21 +00:00
machenbach
bba0e10952 [test] Skip test on noi18n.
Fails since test262-es6 is tested without i18n support.

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

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

Cr-Commit-Position: refs/heads/master@{#30952}
2015-09-26 12:07:59 +00:00
v8-autoroll
5e0eba325c Update V8 DEPS.
Rolling v8/third_party/icu to 423fc7e1107fb08ccf007c4aeb76dcab8b2747c1

Rolling v8/tools/clang to 290301c180118e27755bfced176ff61bd0acb1b8

TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30951}
2015-09-26 03:25:08 +00:00
vogelheim
1213929ac3 Revert of JSObject::GetEnumProperty cleanup (patchset #2 id:20001 of https://codereview.chromium.org/1363293002/ )
Reason for revert:
Reverting, because of broken GC stress bots.

@cbruni: Sorry for the revert. I'm not entirely sure it's actually your CL; but policy is to revert speculatively if we can't determine an exact cause.

Original issue's description:
> JSObject::GetEnumProperty cleanup
>
> BUG=
>
> Committed: https://crrev.com/a00d47c802f93cf9835eafce4c9da2dd10b44f6a
> Cr-Commit-Position: refs/heads/master@{#30946}

TBR=jkummerow@chromium.org,cbruni@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30950}
2015-09-25 17:22:20 +00:00
mlippautz
a1b20e1df0 [tools] Add capability of generating log2-based histograms to eval_gc_nvp.py
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30949}
2015-09-25 16:14:18 +00:00
machenbach
4c64573de1 Revert of [heap] Move large object space selection into AllocateRaw. (patchset #2 id:20001 of https://codereview.chromium.org/1373523002/ )
Reason for revert:
Breaks mac asan:
http://build.chromium.org/p/client.v8/builders/V8%20Mac64%20ASAN/builds/2895

According to auto bisect

Original issue's description:
> [heap] Move large object space selection into AllocateRaw.
>
> BUG=
>
> Committed: https://crrev.com/e4f7ebb000432cc2011ecaaa71a69e2e60f416f0
> Cr-Commit-Position: refs/heads/master@{#30938}

TBR=mlippautz@chromium.org,hpayer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30948}
2015-09-25 16:11:22 +00:00
mlippautz
26f36f1092 Revert of "[heap] Add more tasks for parallel compaction" (patchset #4 id:100001 of https://codereview.chromium.org/1365743003/ )
Reason for revert:
failing again: https://chromegw.corp.google.com/i/client.v8/builders/V8%20Mac/builds/4505/steps/Mozilla%20%28flakes%29/logs/regress-416628

Original issue's description:
> Reland of "[heap] Add more tasks for parallel compaction"
>
> - We now compute the number of parallel compaction tasks, depending on the
>   evacuation candidate list, the number of cores, and some hard limit.
> - Free memory is moved over to compaction tasks (up to some limit)
> - Moving over memory is done by dividing the free list of a given space up among
>   other free lists. Since this is potentially slow we limit the maximum amount
>   of moved memory.
>
> This reverts commit bfccd5187c.
>
> BUG=chromium:524425
> LOG=N
>
> Committed: https://crrev.com/7e283d746a194ceaaca114e2ba17504653d6a109
> Cr-Commit-Position: refs/heads/master@{#30945}

TBR=hpayer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:524425

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

Cr-Commit-Position: refs/heads/master@{#30947}
2015-09-25 15:41:22 +00:00
cbruni
a00d47c802 JSObject::GetEnumProperty cleanup
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30946}
2015-09-25 15:27:50 +00:00
mlippautz
7e283d746a Reland of "[heap] Add more tasks for parallel compaction"
- We now compute the number of parallel compaction tasks, depending on the
  evacuation candidate list, the number of cores, and some hard limit.
- Free memory is moved over to compaction tasks (up to some limit)
- Moving over memory is done by dividing the free list of a given space up among
  other free lists. Since this is potentially slow we limit the maximum amount
  of moved memory.

This reverts commit bfccd5187c.

BUG=chromium:524425
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#30945}
2015-09-25 15:05:15 +00:00
ulan
6256dc53cc Perform scavenge in idle tasks.
BUG=chromium:490559
LOG=NO

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

Cr-Commit-Position: refs/heads/master@{#30944}
2015-09-25 14:49:23 +00:00
machenbach
7b3e8a4b03 [swarming] Add isolate configs for d8 on linux.
BUG=chromium:535160
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#30943}
2015-09-25 14:37:11 +00:00
vogelheim
7cc82f7c87 Fix use of deprecated API.
R=jochen@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#30942}
2015-09-25 14:35:42 +00:00