Commit Graph

3515 Commits

Author SHA1 Message Date
Michael Achenbach
e19bc613ca [test] Tolerate timeout on numfuzz with combined tests
A timeout result of randomly combined tests is not a useful indicator.
Therefore we ignore those now. This also prevents timeouts from being
re-run.

TBR=sergiyb@chromium.org
NOTRY=true

Bug: v8:6917
Change-Id: I8e5eb93e2f13067ca5270fb152c3dc1eda1bb3c2
Reviewed-on: https://chromium-review.googlesource.com/888559
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50879}
2018-01-26 08:04:15 +00:00
Jakob Kummerow
21532b80c3 [bigint] Remove BigInt.parseInt
which was dropped from the proposal:
https://github.com/tc39/proposal-bigint/pull/101

Bug: v8:6791
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I5a3e0024900b34a322a23bcbc4bfdbdffbf8b9d4
Reviewed-on: https://chromium-review.googlesource.com/885510
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50877}
2018-01-26 02:51:58 +00:00
Michal Majewski
8f4407fbd6 [test] Keep the order of variants
Bug: v8:6917
Change-Id: I7e04255649f62a28f0ed07ccb4fbaf4825498bf6
Reviewed-on: https://chromium-review.googlesource.com/886841
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50874}
2018-01-25 17:52:25 +00:00
Michal Majewski
084b0e763e [test] Support predictable with test processors
Bug: v8:6917
Change-Id: I36b7ef75d34f9dfee20cba09d55063d816334293
Reviewed-on: https://chromium-review.googlesource.com/887021
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50872}
2018-01-25 16:07:55 +00:00
Michal Majewski
88c8bf2e71 [test] Add combine tests option to numfuzz
Bug: v8:6917
Change-Id: I3ba4ca3df8bac400c248fa16c58fcba3497da806
Reviewed-on: https://chromium-review.googlesource.com/881167
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50871}
2018-01-25 15:50:24 +00:00
Michal Majewski
7557be5a06 Reland "[test] Move timeout control to timeout processor"
This is a reland of 4de2be999d.

Original change's description:
> [test] Move timeout control to timeout processor
> 
> Bug: v8:6917
> Change-Id: I03be38be952f0d59eb20fa98102ef09ca795de40
> Reviewed-on: https://chromium-review.googlesource.com/883446
> Commit-Queue: Michał Majewski <majeski@google.com>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50848}

Bug: v8:6917
Change-Id: I52798af84991d4815910e9da5f4837329cdb3c96
Reviewed-on: https://chromium-review.googlesource.com/885765
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50870}
2018-01-25 14:09:44 +00:00
Yang Guo
3857b44e69 Introduce SimpleNumberDictionary.
This is somewhat of a revival of what used to be
UnseededNumberDictionary. The difference to NumberDictionary is that
each entry only has two fields (no field for property details) and there
is no header field for a bitfield.

The reason for this change is memory regression introduced when we
removed UnseededNumberDictionary (6e1c57eaa9). We now use
SimpleNumberDictionary for
- slow template instantiation cache
- code stubs table
- value serializer map
- stack frame cache
- type profile source positions

R=ishell@chromium.org, ulan@chromium.org

Bug: chromium:783695
Change-Id: I3cd32e485060bb379fb2279eeefbbbded7455f0e
Reviewed-on: https://chromium-review.googlesource.com/885811
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50869}
2018-01-25 13:49:23 +00:00
Michael Achenbach
b6cd8ebcb9 [test] Roll out new test runner to remaining bots
TBR=sergiyb@chromium.org

Bug: v8:7343
Change-Id: I24ec4d9a58596cca22ca34a48b5a7297ed24b132
Reviewed-on: https://chromium-review.googlesource.com/886341
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50866}
2018-01-25 10:32:29 +00:00
Michael Lippautz
c3c53dbbf1 [object-stats] Visualizer: Check histogram sums
No-try: true
Bug: v8:7266
Change-Id: I89f54feafbd4e2a6021c3bd8e339b00ed39fc3b9
Reviewed-on: https://chromium-review.googlesource.com/883883
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50865}
2018-01-25 10:21:58 +00:00
Andreas Haas
775109e9cf [wasm] Update spec tests
In addition I added some comments in the update script which describes
steps which have to be takes the first time you run the script on a
new machine.

R=titzer@chromium.org

Change-Id: Ib360e6fcdcb63eaf225f398eff60041b48f86b62
Reviewed-on: https://chromium-review.googlesource.com/883344
Reviewed-by: Ben Titzer <titzer@chromium.org>
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50863}
2018-01-25 09:28:58 +00:00
Michal Majewski
bc7d52410f Reland "[test] Move timeout control to timeout processor"
This is a reland of 4de2be999d.

Original change's description:
> [test] Move timeout control to timeout processor
>
> Bug: v8:6917
> Change-Id: I03be38be952f0d59eb20fa98102ef09ca795de40
> Reviewed-on: https://chromium-review.googlesource.com/883446
> Commit-Queue: Michał Majewski <majeski@google.com>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50848}

Bug: v8:6917
Change-Id: I7c83bf1cb8965a149b06c1dbc138b5d097f5275d
Reviewed-on: https://chromium-review.googlesource.com/883284
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50854}
2018-01-24 20:24:48 +00:00
Sergiy Byelozyorov
6be9c2daed Only run git-cl-try if there are bots to trigger to avoid triggering CQ dry-run
R=machenbach@chromium.org

Bug: chromium:616879
Change-Id: Ice9927dd4bbaf72141c6693e4afaf57a362f515b
Reviewed-on: https://chromium-review.googlesource.com/884281
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50852}
2018-01-24 19:41:28 +00:00
Michael Achenbach
c077ff54ae Revert "[test] Move timeout control to timeout processor"
This reverts commit 4de2be999d.

Reason for revert: Testing stops too early now, e.g. here after 2 min:
https://build.chromium.org/p/client.v8.clusterfuzz/builders/V8%20NumFuzz/builds/32

Original change's description:
> [test] Move timeout control to timeout processor
> 
> Bug: v8:6917
> Change-Id: I03be38be952f0d59eb20fa98102ef09ca795de40
> Reviewed-on: https://chromium-review.googlesource.com/883446
> Commit-Queue: Michał Majewski <majeski@google.com>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50848}

TBR=machenbach@chromium.org,sergiyb@chromium.org,majeski@google.com

Change-Id: I6a925866476c69b3b50aa08e99facca0eaaa396b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:6917
Reviewed-on: https://chromium-review.googlesource.com/884082
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50851}
2018-01-24 19:30:17 +00:00
Benedikt Meurer
18d02b4fa9 [turbofan] Reduce promise creation overhead in async functions
This adds a new operator JSCreatePromise, which currently allocates
a native JSPromise instance and initializes it to pending state.

In addition to that we introduce a new PromiseHookProtector, which
get's invalidated the first time someone enables the debugger or
installs a PromiseHook (via async_hooks for example). As long as
the protector is intact we lower AsyncFunctionPromiseCreate to
JSCreatePromise and AsyncFunctionPromiseRelease to a no-op in
optimized code.

This yields a speedup of roughly 33% on the benchmark mentioned
in the bug.

Bug: v8:7271, v8:7253
Change-Id: Ib5d219f2b6e052a7cc5e6ed5aa66dd3c8885a859
Reviewed-on: https://chromium-review.googlesource.com/883124
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50849}
2018-01-24 19:03:43 +00:00
Michal Majewski
4de2be999d [test] Move timeout control to timeout processor
Bug: v8:6917
Change-Id: I03be38be952f0d59eb20fa98102ef09ca795de40
Reviewed-on: https://chromium-review.googlesource.com/883446
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50848}
2018-01-24 19:02:37 +00:00
Sergiy Byelozyorov
ed71ede425 Add ability to trigger perf bots on swarming
R=machenbach@chromium.org

Bug: chromium:616879
Change-Id: I168ec7d3dbd1a9e9c6006919bf59de1d8b40ab3b
Reviewed-on: https://chromium-review.googlesource.com/881483
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50839}
2018-01-24 15:05:29 +00:00
Michael Lippautz
d6daf8b0af [object-stats] Record details for BytecodeArray and Code
FixedArrays hanging off recursively of the constant pool without any
real objects in between can be considered as meta data. They are shared
with optimized code (embedder pointers).

Bug: v8:7266
Change-Id: I4006675e17e8eea3bdc8565254d80e2ffece0ad0
Reviewed-on: https://chromium-review.googlesource.com/883361
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50837}
2018-01-24 14:32:22 +00:00
Michael Lippautz
1f7d86c187 [object-stats] Visualizer: Reset on Isolate change
No-try: true
Bug: v8:7266
Change-Id: Ia3a0142488765d36485287d0bf4ffa1e2cc635b2
Reviewed-on: https://chromium-review.googlesource.com/883141
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50826}
2018-01-24 09:17:23 +00:00
Michael Achenbach
ee4afcbf39 [test] Roll out new test runner to all testing with arch x64
This will affect all manual test runs with x64. Most bots on x64 already
migrated.

TBR=sergiyb@chromium.org
NOTRY=true

Bug: v8:7343
Change-Id: I87f46f1848a813c0b320b3e9901481b9232025a5
Reviewed-on: https://chromium-review.googlesource.com/883101
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50825}
2018-01-24 09:06:23 +00:00
Michael Lippautz
64bf1c4fec [object-stats] Record SFI list on Script
Tbr: ulan@chromium.org
Bug: v8:7266
Change-Id: I3bafffafc662856295fa34de2c77e876e3b2a58e
Reviewed-on: https://chromium-review.googlesource.com/881172
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50819}
2018-01-23 22:25:05 +00:00
Michael Achenbach
ed93f01462 [test] Prepare roll-out of new test runner to local runs
This adds a tri-state flag --infra-staging and --no-infra-staging, which
can be used to explicitly opt in or out of the staging test runner.

If not specified, a new architecture whitelist will enable roll-out per
arch for manual (none CI) runs.

We'll start whitelisting archs in follow ups.

Bug: v8:7343
Change-Id: I1228e48969fd379f5c231a2b8fad4afc01da94c0
Reviewed-on: https://chromium-review.googlesource.com/881169
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50812}
2018-01-23 16:37:47 +00:00
Michael Achenbach
3fa26f4d1b [test] Roll out new test runner to arm64 bots
TBR=sergiyb@chromium.org

Bug: v8:7343
Change-Id: Id17a931e00eda0bf018b5f1cb1cd6bac516ec26d
Reviewed-on: https://chromium-review.googlesource.com/881482
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50811}
2018-01-23 16:20:47 +00:00
Michal Majewski
432668ed32 [test] Add option to disable analysis phase
Introduce option to run fuzzer processor without analysis phase.
It will be used in fuzzing combined tests.

Bug: v8:6917
Change-Id: Ic96d6b8c5a35c81da80340555bdd75c0d518cb5a
Reviewed-on: https://chromium-review.googlesource.com/880948
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50810}
2018-01-23 16:15:58 +00:00
Michael Lippautz
40f6a1333f [object-stats] Visualizer: Reset percentages on update
Otherwise stale values are shown in the UI

No-try: true
Bug: v8:7266
Change-Id: I1aaf15d3b54a8d5754ad4eeb72fb9853585c56eb
Reviewed-on: https://chromium-review.googlesource.com/881442
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50808}
2018-01-23 15:32:34 +00:00
Michael Lippautz
546df30bfc [object-stats] Unpack gzipped trace files on the fly
No-try: true
Bug: v8:7266
Change-Id: I9ca2036a54c55c754cc2bb69dcca6157f88ea0fa
Reviewed-on: https://chromium-review.googlesource.com/880960
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50807}
2018-01-23 15:01:02 +00:00
Michael Achenbach
51a58ac42b [test] Roll out new test runner to mac bots
TBR=sergiyb@chromium.org

Bug: v8:7343
Change-Id: Id2f60f248b40592607a0bf8f74e1169866e317d7
Reviewed-on: https://chromium-review.googlesource.com/880947
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50803}
2018-01-23 14:23:21 +00:00
Michael Achenbach
6c389866af [test] Roll out new test runner to windows bots
TBR=sergiyb@chromium.org

Bug: v8:7343
Change-Id: I46d276f16a001651ad36d550df2535fb8b3ba150
Reviewed-on: https://chromium-review.googlesource.com/880584
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50791}
2018-01-23 10:06:36 +00:00
Yang Guo
f9934aa9cf [gyp] move gyp files from src to gypfiles.
Bug: v8:7341
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I90879be3a94745859b7da7c9bb9b6533af11cc2d
Reviewed-on: https://chromium-review.googlesource.com/878221
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50790}
2018-01-23 09:54:36 +00:00
Michael Lippautz
c1c7441180 [object-stats] Fix duplicate entries
bug: v8:7266
Change-Id: I8241301c9652e70c88b35ebd057af107a1c05687
Reviewed-on: https://chromium-review.googlesource.com/880622
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50788}
2018-01-23 09:32:05 +00:00
Michael Achenbach
195a74a152 [test] Remove temporary debug output
The extra output on mac was to investigate a bug that's now fixed.

TBR=sergiyb@chromium.org
NOTRY=true

Bug: v8:6927
Change-Id: Iac8074c7e89a987e164f676442da1ed4f93987cc
Reviewed-on: https://chromium-review.googlesource.com/880623
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50787}
2018-01-23 09:23:45 +00:00
Michael Achenbach
bff9d3e4ca [test] Roll out new test runner to remaining linux64 bots
TBR=sergiyb@chromium.org

Bug: v8:7343
Change-Id: Iea94f5b12b48fb6c04fe25b827a30e713fdfb716
Reviewed-on: https://chromium-review.googlesource.com/880582
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50786}
2018-01-23 09:08:01 +00:00
Michal Majewski
0998eda9a4 [test] Disable reduce result on the main process
Since we're not winning anything by changing the result between
processors on the main process, reduce is noop there and result is
immutable.

Bug: v8:6917
Change-Id: Ieb282e7abd4ab31162aee6b52493a6e1b6a25109
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/878239
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50784}
2018-01-23 08:58:20 +00:00
Michael Achenbach
937d161eae [test] Rollout new test runner to linux64 bots
Bug: v8:7343
Change-Id: Ic0b89e2376fc927303a5285cc5b47a1ad4694047
Reviewed-on: https://chromium-review.googlesource.com/878642
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50779}
2018-01-23 07:32:40 +00:00
Michael Lippautz
cddf3e3f07 [object-stats] Add contexts and scope info
Bug: v8:7266
Change-Id: Ibc8df4219ea990c3e1bf7a586356689080ab9eb9
Reviewed-on: https://chromium-review.googlesource.com/879182
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50773}
2018-01-22 18:54:07 +00:00
Michael Lippautz
6f55fdc82f [object-stats] Visualizer: Show percentages in details selection
No-try: true
Bug: v8:7266
Change-Id: I778fcf6b8e1abe5eac6e2f0d2600e4c5ec9fe549
Reviewed-on: https://chromium-review.googlesource.com/878821
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50769}
2018-01-22 16:30:05 +00:00
Michal Majewski
b5e6a1517e [test] Add stress deopt to num fuzzer
Bug: v8:6917
Change-Id: I9f23515de0a1ae89babe41a42ab37fb2dfb67b48
Reviewed-on: https://chromium-review.googlesource.com/876324
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50767}
2018-01-22 15:45:56 +00:00
Michael Lippautz
021f02b579 [object-stats] Add virtual types
- JSObject: Record elements and properties
- JSCollecton: Record table
- Record global caches

Bug: v8:7266
Change-Id: I16b2eb511bed3dc0fb6f7af0e7037c6d42f03885
Reviewed-on: https://chromium-review.googlesource.com/878326
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50766}
2018-01-22 15:37:59 +00:00
Michael Achenbach
174485e9c8 [test] Add master/buildermap to prepare rollout of test processors
Bug: v8:7343
Change-Id: I673a490e04f7bae56199591db69b7f1c84022fc0
Reviewed-on: https://chromium-review.googlesource.com/878541
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50764}
2018-01-22 15:15:32 +00:00
Michael Achenbach
4224421622 [test] Add swarming option to numfuzz
This is added only to uniformly call all tools by the infra side.

NOTRY=true
TBR=sergiyb@chromium.org

Bug: v8:6917
Change-Id: I85a14ea51abfe1bfc775fd73d2fee02bfb2fb31e
Reviewed-on: https://chromium-review.googlesource.com/878361
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50754}
2018-01-22 12:48:11 +00:00
Michael Achenbach
7497fa1ab6 [test] Add rerun and json output to numfuzz
This adds flags to numfuzz for rerunning flaky tests and for storing
json test results. With those flags added, the infra-side can call
numfuzz with the same API as the standard test-runner.

TBR=sergiyb@chromium.org

Bug: v8:6917
Change-Id: I02d1cd02d90677c83f10e072383f3650c041cab1
Reviewed-on: https://chromium-review.googlesource.com/877890
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50753}
2018-01-22 12:26:36 +00:00
Michael Achenbach
9d7c40ea76 [test] Fail when no tests are run
TBR=sergiyb@chromium.org

Bug: v8:7337
Change-Id: I1732f6e587305ce4ab41a65f73e943c7eb9e1d15
Reviewed-on: https://chromium-review.googlesource.com/877760
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50747}
2018-01-22 09:57:53 +00:00
Michael Lippautz
8889faec94 [object-stats] Add overall counter to viewer
No-try: true
Bug: v8:7266
Change-Id: If1f67688e46e443f8e9e38f5481ce591213d2228
Reviewed-on: https://chromium-review.googlesource.com/877883
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50745}
2018-01-22 09:28:33 +00:00
Michal Majewski
df1b44b63f [test] Fix infinite loop and fail result in the num fuzzer
1. Fix infinite loop caused by time based fuzzing
2. Shallow copy of the result to avoid dropping output
by different processor.

Bug: v8:6917
Change-Id: Icf823e853be9d3cc8dfd46ed2fb954979bf02d2f
Reviewed-on: https://chromium-review.googlesource.com/877761
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50737}
2018-01-20 20:47:14 +00:00
Michal Majewski
fb9e22123d [test] Running num fuzzer for specific time
Bug: v8:6917
Change-Id: I7576a3b8a7fb95244b241532f50759e1c88f6a5a
Reviewed-on: https://chromium-review.googlesource.com/876427
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50734}
2018-01-19 20:05:19 +00:00
Michael Lippautz
e5266c24c3 [gm.py] Use autoninja instead of ninja
Avoids detecting local cores and guessing remote jobs.

No-try: true
Change-Id: I4a825b8dd922802c5f539419313888fd3b21b870
Reviewed-on: https://chromium-review.googlesource.com/876009
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50733}
2018-01-19 19:31:58 +00:00
Michal Majewski
50a91fe9ee [test] Fix subtest creation
Update flags before recalculating outcomes.

Bug: v8:6917
Change-Id: I5f54f7d14fd60f7e35a976e5200d3f7f0e74a5b7
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/876364
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50731}
2018-01-19 18:37:08 +00:00
Michal Majewski
61c562b026 [test] Implement gc fuzzer with test processors
Bug: v8:6917
Change-Id: I2a7ecc6897c8ccd6ed862cf2b0b484673ee359f6
Reviewed-on: https://chromium-review.googlesource.com/871310
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50728}
2018-01-19 16:58:49 +00:00
Michael Achenbach
eda125998b [test] Temporarily remove benchmarks from deopt fuzzer
The tests currently time out due to too many deopt points and hence too many
tests generated.

TBR=sergiyb@chromium.org

Bug: v8:6900
Change-Id: I0998097024a4ed9c087728bb5ef288ab17d3371e
Reviewed-on: https://chromium-review.googlesource.com/876322
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50727}
2018-01-19 16:12:58 +00:00
Michael Lippautz
7015675a44 [object-stats] Allow zooming in histograms
No-try: true
Tbr: cbruni@chromium.org
Bug: v8:7266
Change-Id: I65ad82a8ae7b2b499ba3f2bf9fbec178edf7616a
Reviewed-on: https://chromium-review.googlesource.com/876202
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50724}
2018-01-19 14:37:27 +00:00
Michael Achenbach
d65b53cf23 [test] Add benchmarks to deopt-fuzzer and remove obsolete configs
This adds the benchmarks suite to the deopt fuzzer and removes the
obsolete deopt configs, which since a while are part of the num-fuzz
configs.

TBR=sergiyb@chromium.org

Bug: v8:6900
Change-Id: I9202e2a66a132eca5940b4444fda97816b034e54
Reviewed-on: https://chromium-review.googlesource.com/876085
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50720}
2018-01-19 13:47:06 +00:00
Michael Achenbach
8124e06993 [test] Prepare rollout of new test-runner features
TBR=sergiyb@chromium.org
NOTRY=true

Bug: v8:6917
Change-Id: Ic4f9d151be887fa5795ebe62dcdd3b849cc176ab
Reviewed-on: https://chromium-review.googlesource.com/875965
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50715}
2018-01-19 13:18:36 +00:00
Michael Lippautz
91618802bf [object-stats] Redo recording of non-existing instance types
- Base recording just on the concept of virtual instance types.
- Re-add dropped types incrementally.

Bug: v8:7266
Change-Id: Ic8209ce8c6067e24536a0c62404e1160f86377db
Reviewed-on: https://chromium-review.googlesource.com/873646
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50714}
2018-01-19 12:20:45 +00:00
Michael Achenbach
0ca3078d6f Whitespace change to test fuzzers
TBR=easterbunny

Change-Id: I9f466f6eb0072e6576512d0bb0cead5924a12513
Reviewed-on: https://chromium-review.googlesource.com/875983
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50711}
2018-01-19 11:25:43 +00:00
Michael Achenbach
a751e73725 [test] Add random-gc-stress mode to test runner
TBR=sergiyb@chromium.org

Bug: v8:6972
Change-Id: Ia4225f0a2a102ad6b59d2436d7f32aaee90458e7
Reviewed-on: https://chromium-review.googlesource.com/875962
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50710}
2018-01-19 11:14:15 +00:00
Michael Achenbach
d63c331966 [test] Add more stress options to gc fuzzer
This adds gc stress and scavenge stress to legacy gc fuzzer. Each
flag can be used in separation or combined.

TBR=sergiyb@chromium.org
NOTRY=true

Bug: v8:6972
Change-Id: Id03ef96bd42b77415dd201e7f78b3b42786dd3bc
Reviewed-on: https://chromium-review.googlesource.com/874452
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50708}
2018-01-19 10:34:04 +00:00
Yang Guo
2d72051d88 [node] move build path fully into gyp file.
R=machenbach@chromium.org

Bug: v8:6105
Change-Id: Ieb0de4d0ee031d61d7af1a89607bfbcb64151bcb
Reviewed-on: https://chromium-review.googlesource.com/874353
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50705}
2018-01-19 09:58:32 +00:00
Michael Achenbach
f2f3a6857e [test] Prepare making stress-marking mode explicit in gc fuzzer
This prepares to add the stress-marking flag on the infra side.

TBR=sergiyb@chromium.org
NOTRY=true

Bug: v8:6972
Change-Id: Ibee30beadb167d06fd7965dfd3cc05fb523158cb
Reviewed-on: https://chromium-review.googlesource.com/874350
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50697}
2018-01-18 17:59:59 +00:00
Sigurd Schneider
8432d3815a [turbolizer] Fix scrolling in disassembly view
Bug: v8:7327
Change-Id: Ic33a0d86f055ac5ec3607d8e57d796428f4b9d20
Reviewed-on: https://chromium-review.googlesource.com/873378
Reviewed-by: Georg Neis <neis@chromium.org>
Reviewed-by: Daniel Clifford <danno@chromium.org>
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50682}
2018-01-18 13:47:35 +00:00
Camillo Bruni
cf500ac109 [object-stats] Distinguish FeedbackVector entries
Record seperate virtual instance types for entries in FeedbackVectors:
- FEEDBACK_VECTOR_ENTRY_TYPE

 Bug: v8:7266

Change-Id: Ibea0615ecd23099e0107505e5d33cf194aade7c0
Reviewed-on: https://chromium-review.googlesource.com/866878
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50678}
2018-01-18 13:00:25 +00:00
Michael Lippautz
8888d5e48b [object-stats] Add histogram
No-try: true
Bug: v8:7266
Change-Id: I8b8ec94c1909e7404774afd576968cf843c043ff
Reviewed-on: https://chromium-review.googlesource.com/873033
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50673}
2018-01-18 11:57:35 +00:00
Yang Guo
8d2ab9305d [node] pass host OS to build_gn.py.
R=machenbach@chromium.org

Bug: v8:6105
Change-Id: Ie4a9ade13e280153c7ed55af03f9ff4c2d3cdd09
Reviewed-on: https://chromium-review.googlesource.com/873010
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50669}
2018-01-18 10:11:22 +00:00
Michael Lippautz
b68cdf2594 [object-stats] CSV export and simple fixes
Allow exporting the current selection as CSV.

No-try: true
Bug: v8:7266
Change-Id: Idd275e749506d2a195a132efa5ec08ebb21ca72f
Reviewed-on: https://chromium-review.googlesource.com/870781
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50668}
2018-01-18 08:41:23 +00:00
Michael Achenbach
06f0365165 [test] Run test-runner system tests also when tests change.
NOTRY=true

Bug: v8:6917
Change-Id: I08a09ba6f39fc3be7a11e520d2a59ced1354f892
Reviewed-on: https://chromium-review.googlesource.com/868291
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50659}
2018-01-17 15:01:33 +00:00
Michael Achenbach
c85808fe6b [foozzie] Add flag experiment on correctness fuzzer for atomic gc-stress
NOTRY=true
TBR=hpayer@chromium.org

Bug: v8:7012
Change-Id: If8517c27871af17a979d2766cc7f21b94035caa8
Reviewed-on: https://chromium-review.googlesource.com/870550
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50658}
2018-01-17 14:30:54 +00:00
Michal Majewski
9e69733b3c [test] Move shard methods to the base runner
Bug: v8:6917
Change-Id: I0b81ebfe289b459e30ad85a4a62ed244cbd20b65
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/870123
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50657}
2018-01-17 14:29:48 +00:00
Michal Majewski
daed2eb723 [test] Move command from test to the result
Bug: v8:6917
Change-Id: I54f908609fadd88bb23bf9fc566d1e2f3ff5e18e
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/870353
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50653}
2018-01-17 12:59:54 +00:00
Michal Majewski
0bfc1b2562 [test] Do not pass unnecessary results
Bug: v8:6917
Change-Id: I1a355bdfe3f873091a7d7c32a937a533a7d8b3d4
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/867053
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50650}
2018-01-17 11:32:12 +00:00
Michal Majewski
96d06a6351 [test] Fix args parsing and name filter
Bug: v8:6917
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng;luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I14c7e0a140bfe828ee8199606db36cab12be14ff
Reviewed-on: https://chromium-review.googlesource.com/868135
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50649}
2018-01-17 10:32:12 +00:00
Michal Majewski
4ac4e3581f [test] Run gc fuzzer on benchmarks test suite
Bug: v8:6917
Change-Id: I0ee15a41b6028bdbf8448f066b0bc47a049ca587
Reviewed-on: https://chromium-review.googlesource.com/868154
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50647}
2018-01-17 09:59:15 +00:00
Michal Majewski
a6973d9fd2 [test] Add sharded system test for test processors
Bug: v8:6917
Change-Id: If9c097548a5879d693174c73e9952db7b25ef2e7
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/868437
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50646}
2018-01-17 09:54:09 +00:00
Michal Majewski
00ac7641a6 [test] Drop starting message from indicators
Since test processors create tests dynamically we cannot simply
count how many tests will be run. Instead we count only base tests
that we've loaded, before creating variants.

Bug: v8:6917
Change-Id: Ibc5b9a73f6afad423572afa575f477ca661a99d5
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/868290
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50642}
2018-01-17 09:31:19 +00:00
Yang Guo
1f3cdb701a Enable --build-v8-with-gn for Node.js bots.
Bug: v8:6105
Change-Id: Idfc10bdab9c69d2d5f751197e3df068406bd521a
Reviewed-on: https://chromium-review.googlesource.com/868131
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50638}
2018-01-17 07:39:58 +00:00
Michael Lippautz
fa8c68348e [object-stats] Cateogrize a few more instance types
No-try: true
Bug: v8:7266
Change-Id: I3e0d95d7c59577941e1154e21949b2714f56f652
Reviewed-on: https://chromium-review.googlesource.com/868292
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50629}
2018-01-16 20:29:58 +00:00
Michael Achenbach
6c72df9ed0 Reland "[test] Add test runner system tests for flaky tests"
This is a reland of 96f5579669
Original change's description:
> [test] Add test runner system tests for flaky tests
>
> This uses a temporary file in the mocked d8 script to let d8 flip
> between FAIL and PASS on rerun.
>
> This adds a separate test root with dedicated test suite for testing
> flakes to no interfere with existing status file configs.
>
> NOTRY=true
>
> Bug: v8:6917
> Change-Id: Id43753650195fb74cceb2a3ee9014100cabad546
> Reviewed-on: https://chromium-review.googlesource.com/867917
> Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50621}

TBR=sergiyb@chromium.org
NOTRY=true

Bug: v8:6917
Change-Id: I4e7bca272dfd8778fbb8d012fcd6fd8406158e43
Reviewed-on: https://chromium-review.googlesource.com/868433
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50625}
2018-01-16 15:01:56 +00:00
Michael Achenbach
bc130d803c Revert "[test] Add test runner system tests for flaky tests"
This reverts commit 96f5579669.

Reason for revert: breaks CI presubmit:
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20presubmit/builds/22115

Original change's description:
> [test] Add test runner system tests for flaky tests
> 
> This uses a temporary file in the mocked d8 script to let d8 flip
> between FAIL and PASS on rerun.
> 
> This adds a separate test root with dedicated test suite for testing
> flakes to no interfere with existing status file configs.
> 
> NOTRY=true
> 
> Bug: v8:6917
> Change-Id: Id43753650195fb74cceb2a3ee9014100cabad546
> Reviewed-on: https://chromium-review.googlesource.com/867917
> Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50621}

TBR=machenbach@chromium.org,sergiyb@chromium.org,majeski@google.com

Change-Id: I103bf8f0e926a3f56921f14bdd7e875ce839ea71
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:6917
Reviewed-on: https://chromium-review.googlesource.com/868530
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50624}
2018-01-16 14:39:30 +00:00
Michael Lippautz
0dddc6fd46 [object-stats] Add reader for Chrome's trace file format
Allows reading GC object stats data from an unpacked Chrome trace file.

No-try: true
Bug: v8:7266
Change-Id: I1b851a5b9c5937bd80ae08129d3daee8b4397500
Reviewed-on: https://chromium-review.googlesource.com/868211
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50622}
2018-01-16 14:30:59 +00:00
Michael Achenbach
96f5579669 [test] Add test runner system tests for flaky tests
This uses a temporary file in the mocked d8 script to let d8 flip
between FAIL and PASS on rerun.

This adds a separate test root with dedicated test suite for testing
flakes to no interfere with existing status file configs.

NOTRY=true

Bug: v8:6917
Change-Id: Id43753650195fb74cceb2a3ee9014100cabad546
Reviewed-on: https://chromium-review.googlesource.com/867917
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50621}
2018-01-16 14:25:39 +00:00
Yang Guo
1a0cc926ba [tools] return early in fetch_deps.py.
TBR=machenbach@chromium.org

Bug: v8:6105
Change-Id: I15fe26c8546e024794c165affd17ce104ecae4a1
Reviewed-on: https://chromium-review.googlesource.com/867870
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50616}
2018-01-16 11:34:44 +00:00
Michal Majewski
d53c4aa065 [test] Implement shard processor
Bug: v8:6917
Change-Id: I5b77e7445ca3a8eb5692659e94d3b8266479b415
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/866866
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50615}
2018-01-16 11:33:03 +00:00
Yang Guo
d8a965a07c [tools] tools/node/fetch_deps.py returns False.
This will act as a switch so that we can enable Node.js GN builds
via V8 change.

R=machenbach@chromium.org

Bug: v8:6105
Change-Id: Ie786a4dad7f53e4bbf7d8830bb72b1f8031cee12
Reviewed-on: https://chromium-review.googlesource.com/866839
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50612}
2018-01-16 10:34:23 +00:00
Michal Majewski
3bcc6b3e0e [test] Filter tests based on cmd line processor
Bug: v8:6917
Change-Id: I7fa8f1857f338551dd7acd1b25eb7e9feb376576
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/866720
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50602}
2018-01-16 08:50:57 +00:00
Michal Majewski
767deb504a [test] Move loading test suites to the base runner
Bug: v8:6917
Change-Id: I5ad7f9f28be5eb0d8cdc424c0ed5cb41623212e5
Reviewed-on: https://chromium-review.googlesource.com/866505
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50601}
2018-01-16 08:47:52 +00:00
Michael Achenbach
fa9489e12f [foozzie] Raise experiment percentage for gc fuzzing
NOTRY=true
TBR=hpayer@chromium.org

Bug: v8:7012
Change-Id: I4f1a2468ef60e383480f8ea04d069a43296b30b0
Reviewed-on: https://chromium-review.googlesource.com/866837
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50600}
2018-01-16 08:21:12 +00:00
Michael Lippautz
96de054c96 [object-stats] Fix heap visualizer
R: hpayer@chromium.org
No-try: true
Bug: v8:7266
Change-Id: Icc8f254d4f4e7c220cc322b3c98749da5e5ea3e6
Reviewed-on: https://chromium-review.googlesource.com/866831
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50594}
2018-01-15 20:30:07 +00:00
Camillo Bruni
7b9ea02a70 [object-stats] Support boilerplate objects and arrays
Record seperate virtual instance types for boilerplates and their properties
and elements. This CL adds:
- BOILERPLATE_PROPERTY_ARRAY_TYPE
- BOILERPLATE_NAME_DICTIONARY_TYPE
- BOILERPLATE_ELEMENTS_TYPE


Bug: v8:7266
Change-Id: I2e6643d4bf067aa52eb1950a696b6535b020b097
Reviewed-on: https://chromium-review.googlesource.com/867059
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50592}
2018-01-15 18:40:46 +00:00
Michael Lippautz
85c6c8ce46 [object-stats] Enable ungrouping in visualizer
No-try: true
Bug: v8:7266
Change-Id: I981ac5b4be6117bcc46383d033d639cc3b30b617
Reviewed-on: https://chromium-review.googlesource.com/867371
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50591}
2018-01-15 18:15:26 +00:00
Michael Lippautz
b80a698d72 [tools] V8 heap stats visualizer
Visualizes --trace-gc-object-stats output.

No-try: true
Bug: v8:7266
Change-Id: I5beb15d63e645484f07fe5f2341105c4cfe0b550
Reviewed-on: https://chromium-review.googlesource.com/860580
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50587}
2018-01-15 15:27:17 +00:00
Michael Achenbach
997d5a6a5c [test] Add code_serializer testing variant
Also sort all variants in configuration mapping.

Bug: v8:7285
Change-Id: I2d3032b911e48c34557e47e50345fb29da7bbe85
Reviewed-on: https://chromium-review.googlesource.com/866502
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50584}
2018-01-15 15:04:07 +00:00
Michael Achenbach
56fa0a535b [test] Remove deprecated FAST_VARIANTS modifier
Bug: v8:7264
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I0c07c92955c0b6c145c7b72e5014f828eaf59c9a
Reviewed-on: https://chromium-review.googlesource.com/865903
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50582}
2018-01-15 14:30:47 +00:00
Michael Achenbach
74a2a8f611 [foozzie] Add flag experiments for gc fuzzing
This will add three gc fuzzing flags with 5% likelihood each to the second
correctness fuzzing config. The random checks are determined by the
top-level random-seed passed to the script.

This change depends on setting the fuzzer random seed as default to the
standard random seed, since the former isn't explicitly passed by
clusterfuzz.

NOTRY=true
TBR=hpayer@chromium.org

Bug: v8:7012
Change-Id: I794dc48bb953b6a95bbc4fc4305ad561bc13b6ee
Reviewed-on: https://chromium-review.googlesource.com/865912
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50577}
2018-01-15 13:03:54 +00:00
Michal Majewski
bddfee9822 [test] Add special result for rerun and json indicator.
Bug: v8:6917
Change-Id: I5136f183bd1728a1ab90a9ebb2560d978e17ef28
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/863623
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50576}
2018-01-15 12:54:23 +00:00
Michal Majewski
60c17bf983 [test] Simplify passing results between test processors.
Bug: v8:6917
Change-Id: Id73e4892a0d1b3b9c5bdd70ccc136e7bd2edf360
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/863603
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50565}
2018-01-15 08:51:40 +00:00
Adam Klein
1fad273e1d Revert "[test] Add more d8-based test suites to d8_default"
This reverts commit 2de796fc57.

Reason for revert: Fails tests on Linux dbg:

https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug/builds/18708

Original change's description:
> [test] Add more d8-based test suites to d8_default
> 
> This will run those suites with gc stress, code serializer, and verify-
> predictable mode.
> 
> TBR=sergiyb@chromium.org
> 
> Bug: v8:7285
> Change-Id: I4184376cf3fc9dd161b1e85ec562ed4266f5b8cf
> Reviewed-on: https://chromium-review.googlesource.com/864922
> Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50555}

TBR=machenbach@chromium.org,yangguo@chromium.org,sergiyb@chromium.org,majeski@google.com

Change-Id: I8d769829bdb96820e57b1cefcf92fb6976a1031d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:7285
Reviewed-on: https://chromium-review.googlesource.com/865334
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Adam Klein <adamk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50556}
2018-01-12 20:08:25 +00:00
Michael Achenbach
2de796fc57 [test] Add more d8-based test suites to d8_default
This will run those suites with gc stress, code serializer, and verify-
predictable mode.

TBR=sergiyb@chromium.org

Bug: v8:7285
Change-Id: I4184376cf3fc9dd161b1e85ec562ed4266f5b8cf
Reviewed-on: https://chromium-review.googlesource.com/864922
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50555}
2018-01-12 19:18:24 +00:00
Michael Achenbach
914dc955e0 Whitespace change to test infra-change
TBR=easterbunny

Change-Id: I4229d55d8953c74a9b167527b0aae56c3b570a26
Reviewed-on: https://chromium-review.googlesource.com/864664
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50554}
2018-01-12 18:35:05 +00:00
Sergiy Byelozyorov
08cdc02316 Whitespace CL
TBR=sergiyb@chromium.org

Bug: chromium:784597
Change-Id: I4218842d46971c9594d12c51e12ab796c1ceabe6
Reviewed-on: https://chromium-review.googlesource.com/857006
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50552}
2018-01-12 16:30:44 +00:00
Michael Achenbach
df342b8ab1 [test] Add a d8_default test suite collection
This adds a reduced version of bot_default with only d8-based test suites.
Those can be used for gc stress testing, fuzzing and predictable mode.

This also adds a missing explicit build rule for the debugger test suite.
It's working as it's part of the isolate file, but incremental
re-isolation might break on code changes.

Running the tests is still commented out to allow the infra-side to
land. Afterwards, we'll activate the extra testing as a V8 CL
commenting the lines back in.

Bug: v8:7285
Change-Id: I7b758c212f0c4ae3d2f79beea5ec597cee479565
Reviewed-on: https://chromium-review.googlesource.com/864045
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50545}
2018-01-12 15:18:04 +00:00
Yang Guo
86ab878b5f Fix usage of os.path.normpath in fetch_deps.py.
TBR=machenbach@chromium.org

Bug: v8:6105
Change-Id: I52d241cfa05ee3787dda7cbdaca8b83fe7508218
Reviewed-on: https://chromium-review.googlesource.com/864043
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50536}
2018-01-12 13:50:54 +00:00
Michal Majewski
29b1c388e7 [test] Introduce stress sampling allocation profiler mode
Bug: v8:7209
Change-Id: Ia10479d7eea6ef2f352d008e2f4b74e2394ab79b
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/861623
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Ali Ijaz Sheikh <ofrobots@google.com>
Cr-Commit-Position: refs/heads/master@{#50527}
2018-01-12 11:34:16 +00:00
Michal Majewski
7f01c9303f [test] Implement variant generators as processors
Bug: v8:6917
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng;luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: Ib5bfdf4d6fee6102f62c7334a1b22146f1a1fc5b
Reviewed-on: https://chromium-review.googlesource.com/857376
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50525}
2018-01-12 10:39:20 +00:00
Sigurd Schneider
43d588cce6 [turbolizer] Eye candy that helps readability
- Turbolizer highlights input and output nodes on hover.
- The three panes support resizing now (snap to side still works).

Bug: 
Change-Id: Ida1513fd714a02ab772885ea1fdf6d9da8d540f6
Reviewed-on: https://chromium-review.googlesource.com/837068
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Reviewed-by: Daniel Clifford <danno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50523}
2018-01-12 09:35:30 +00:00
Yang Guo
73ba170a75 Pass v8_postmortem_support to gyp/gn bridge.
Also change fetch_deps.py to no longer be a no-op and rename
Main function for importing from other scripts.

R=machenbach@chromium.org

Bug: v8:6105
Change-Id: I067a212827316248f60e97ff27e9bb2dc20addfd
Reviewed-on: https://chromium-review.googlesource.com/860007
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50522}
2018-01-12 09:31:49 +00:00
Michael Achenbach
5e50857e2c [foozzie] Suppress test cases with async in slow-path mode
NOTRY=true
TBR=gsathya@chromium.org

Bug: chromium:800651
Change-Id: I72717fcd694609132b76431c13c26fb3f79432dd
Reviewed-on: https://chromium-review.googlesource.com/860926
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50509}
2018-01-11 15:14:55 +00:00
Michael Starzinger
4d09583ad9 [test] Restore "stress_incremental_marking" variant.
This removes the explicit --write-protect-code-memory flag from the list
of flags in the "stress_incremental_marking". The feature is enabled by
default by now and no longer needs explicit testing.

R=ulan@chromium.org
BUG=v8:6792

Change-Id: I5d6ba21dff261488bbe1b0148ce204bf78d57334
Reviewed-on: https://chromium-review.googlesource.com/860661
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50500}
2018-01-11 12:14:14 +00:00
Michal Majewski
463dbab3ec [test] Implemented status file filter as a processor
Bug: v8:6917
Change-Id: I4b10091a40372e1aa614ac26452e20ed481ab686
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/856498
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#50482}
2018-01-10 16:08:46 +00:00
Michal Majewski
53a367ece4 [test] Use analysis flag in gc fuzzer.
Bug: v8:6972
Change-Id: I0f3f933f14b26771b73daa053c17ce4cf8906bd7
Reviewed-on: https://chromium-review.googlesource.com/819635
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50459}
2018-01-09 17:51:19 +00:00
Michal Majewski
cfd43ee713 [test] Added test processor documentation.
Bug: v8:6917
Change-Id: I6ecfab76e6d2ee0b4ab86380e8cfbb68df07599e
Reviewed-on: https://chromium-review.googlesource.com/852295
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50457}
2018-01-09 17:05:13 +00:00
Yang Guo
11e80a3509 [snapshot] support attaching arbitrary v8::Data.
In collaboration with Qingyan Li <qingyan.liqy@alibaba-inc.com>.

R=jgruber@chromium.org, mlippautz@chromium.org

Bug: v8:7249
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: I87f62103ec5b31de274fa22ad275f1c1bcb3ed86
Reviewed-on: https://chromium-review.googlesource.com/846750
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50433}
2018-01-09 12:06:40 +00:00
Michal Majewski
ed619fa6c6 [test] Make variant names unique
Temporary workaround to avoid the same variant name for multiple
variants of the same test.

Bug: v8:6917
Change-Id: I9a25dcaf81d35da0dc2617c089cb4811c2a958cb
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/852833
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50428}
2018-01-09 11:18:40 +00:00
Michal Majewski
501413b9b9 [test] Implemented indicators as processors
Added simple system tests for different progress indicators.

Bug: v8:6917
Change-Id: I906ddfd06e82cc19d3b2210e09457456be00309b
Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/852495
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50406}
2018-01-08 13:08:40 +00:00
Michal Majewski
da3416f53a [test] Introduce test processors
Test processors can be enabled with --infra-staging flag.

Rerunning tests, execution and verbose progress indicator already
work as test processors.

Bug: v8:6917
Change-Id: I40fc42db94dbc8629e8000a3d363030045532fe3
Reviewed-on: https://chromium-review.googlesource.com/850398
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50399}
2018-01-08 11:27:47 +00:00
Yang Guo
d18f4ec150 Fix tools/node/fetch_deps.py wrt gclient PATH requirements.
Turns out gclient calls download_from_google_storage, which needs to be
included in PATH.

TBR=machenbach@chromium.org

Bug: v8:6105
Change-Id: I15d44d67152f6fa0d20ae7bc7e44bc5e0393b519
Reviewed-on: https://chromium-review.googlesource.com/852616
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50389}
2018-01-05 22:41:29 +00:00
Michael Achenbach
0ac7a48ae8 [foozzie] Add slow-path correctness fuzzing variants
TBR=jgruber@chromium.org
NOTRY=true

Bug: v8:7120
Change-Id: Ib8375e6ad811d9299c9a477ed39c6bc76c0c90dd
Reviewed-on: https://chromium-review.googlesource.com/852232
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50382}
2018-01-05 12:20:04 +00:00
Michael Achenbach
a43af00861 [foozzie] Add "trusted" correctness fuzzing variants
NOTRY=true

Bug: chromium:798982
Change-Id: I0aa2bee5bf33884fa9bfc15da3053d817e1a1b49
Reviewed-on: https://chromium-review.googlesource.com/852212
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50381}
2018-01-05 12:12:04 +00:00
Michael Achenbach
48d436b2ed [test] Add "trusted" testing variant to a subset of bots
Bug: chromium:798982
Change-Id: I096e2df5a5f8d038c980bc9f575857256f0a01df
Reviewed-on: https://chromium-review.googlesource.com/852073
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50378}
2018-01-05 10:36:31 +00:00
Michal Majewski
9a3773e665 [test] Fix predictable mode with output processors
Bug: v8:6917
Change-Id: I7bc5d09ff19a9cf7cb4bee68ca6cf34f5cfa8b19
Reviewed-on: https://chromium-review.googlesource.com/850874
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50365}
2018-01-04 19:16:45 +00:00
Michal Majewski
9f7d440e98 [test] Check output on the worker process.
I added additional exception logging in the execution.py since
errors in processing results were really difficult to debug.

There is a problem on Windows with class serialization when
it comes from dynamically loaded module. To fix it I moved all
output processors to the tools/testrunner/outproc/ and import
them in test/*/testcfg.py.

Bug: v8:6917
Change-Id: Ida604641d659b006e91faf1d56a37769ec47f5f3
Reviewed-on: https://chromium-review.googlesource.com/842784
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50361}
2018-01-04 14:12:31 +00:00
Michael Achenbach
c1e9bc02f8 Revert "Revert "[test] Move has unexpected output to outproc.""
This reverts commit 1685b5d27a.

Reason for revert: Was probably caused by infra change:
https://crrev.com/c/845781

Original change's description:
> Revert "[test] Move has unexpected output to outproc."
> 
> This reverts commit 71605b3ea4.
> 
> Reason for revert: Seems to break static-initializers step:
> https://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/22156
> 
> Original change's description:
> > [test] Move has unexpected output to outproc.
> > 
> > Expected outcomes optimized to serialize [PASS] as None.
> > 
> > Keeping expected outcomes inside output processors should be
> > optimized in the future. Few possible optimizations:
> > - separate classes for tests that are expected to PASS - done as
> > an example in mozilla test suite.
> > - cache output processors inside testcase.
> > - share output processors between copies of the same test - needs
> > some updates to the create_variant to update outproc only if
> > expected outcomes changed.
> > 
> > Bug: v8:6917
> > Change-Id: Ie73f1dcdf17fdfc65bce27228f818b1dd1e420c9
> > Reviewed-on: https://chromium-review.googlesource.com/843025
> > Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> > Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#50347}
> 
> TBR=machenbach@chromium.org,sergiyb@chromium.org,majeski@google.com
> 
> Change-Id: Ice1f3aee0a26f7f38996459d38fd6e0bd964113d
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: v8:6917
> Reviewed-on: https://chromium-review.googlesource.com/849572
> Reviewed-by: Bill Budge <bbudge@chromium.org>
> Commit-Queue: Bill Budge <bbudge@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50348}

TBR=bbudge@chromium.org,machenbach@chromium.org,sergiyb@chromium.org,majeski@google.com

Change-Id: I7a522b6487de6e96985d223524533493eb9171f0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:6917
Reviewed-on: https://chromium-review.googlesource.com/848975
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50350}
2018-01-04 07:39:21 +00:00
Bill Budge
1685b5d27a Revert "[test] Move has unexpected output to outproc."
This reverts commit 71605b3ea4.

Reason for revert: Seems to break static-initializers step:
https://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/22156

Original change's description:
> [test] Move has unexpected output to outproc.
> 
> Expected outcomes optimized to serialize [PASS] as None.
> 
> Keeping expected outcomes inside output processors should be
> optimized in the future. Few possible optimizations:
> - separate classes for tests that are expected to PASS - done as
> an example in mozilla test suite.
> - cache output processors inside testcase.
> - share output processors between copies of the same test - needs
> some updates to the create_variant to update outproc only if
> expected outcomes changed.
> 
> Bug: v8:6917
> Change-Id: Ie73f1dcdf17fdfc65bce27228f818b1dd1e420c9
> Reviewed-on: https://chromium-review.googlesource.com/843025
> Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#50347}

TBR=machenbach@chromium.org,sergiyb@chromium.org,majeski@google.com

Change-Id: Ice1f3aee0a26f7f38996459d38fd6e0bd964113d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:6917
Reviewed-on: https://chromium-review.googlesource.com/849572
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Bill Budge <bbudge@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50348}
2018-01-03 23:01:11 +00:00
Michal Majewski
71605b3ea4 [test] Move has unexpected output to outproc.
Expected outcomes optimized to serialize [PASS] as None.

Keeping expected outcomes inside output processors should be
optimized in the future. Few possible optimizations:
- separate classes for tests that are expected to PASS - done as
an example in mozilla test suite.
- cache output processors inside testcase.
- share output processors between copies of the same test - needs
some updates to the create_variant to update outproc only if
expected outcomes changed.

Bug: v8:6917
Change-Id: Ie73f1dcdf17fdfc65bce27228f818b1dd1e420c9
Reviewed-on: https://chromium-review.googlesource.com/843025
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50347}
2018-01-03 22:19:49 +00:00
Michael Achenbach
e8912359b8 [test] Refactor commands into OS-specific versions
This seperates OS-specific code of the Command class into a Posix and a
WindowsCommand to simplify scattered OS checks.

This also removes some temporary mac debug output that's obsolete after
https://crbug.com/v8/6927 got resolved.

TBR=sergiyb@chromium.org

Bug: v8:6917
Change-Id: Iaab3b527ce556dfba797a164ae58e8dd358eb56f
Reviewed-on: https://chromium-review.googlesource.com/847000
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50346}
2018-01-03 19:38:28 +00:00
Michael Achenbach
5a8e1f3f1b [test] Make coverage in test-runner tests work with multiprocessing
This replaces multiprocessing with threading in tests to make python
coverage work.

TBR=sergiyb@chromium.org

Bug: v8:6917
Change-Id: Idff763dfefa4a7fc782133d94089b3a5b00a194d
Reviewed-on: https://chromium-review.googlesource.com/844735
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50344}
2018-01-03 17:37:05 +00:00
Michael Achenbach
60bc8c078f [test] Continuously run test-runner tests
The tests already run on upload and commit. This makes them run on the
corresponding continuous tester.

NOTRY=true
TBR=sergiyb@chromium.org

Bug: v8:6917
Change-Id: I7dedd482ea54f0879854055c97b27f825f06d6e2
Reviewed-on: https://chromium-review.googlesource.com/846807
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50343}
2018-01-03 17:03:35 +00:00
Michael Achenbach
13485a6991 [test] Add basic test-runner system tests
This tests some high-level scenarios of the V8 test runner, with
fake executable, test-suite extension and build configs.

The runners are slightly modified to be easier testable. Args
are passed from the tests now and the V8 root folder can be faked
by the tests.

We support coverage if python coverage 4.0 is installed. Otherwise
we run without it.

Bug: v8:6917
Change-Id: Ib149fd88027cbdc3382bcaea2d82020582f79d2d
Reviewed-on: https://chromium-review.googlesource.com/831506
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50310}
2017-12-27 18:03:49 +00:00
Yang Guo
c8736f6899 Reduce max instance type enum value.
We collect instance type statistics in FatalProcessOutOfMemory into an
array, which is allocated to the max instance type value. While we want
to leave space to ensure new instance types do not affect constants in
the API, we can be more frugal.

We currently serialize 350 maps into the startup/context snapshot.  Even
if we assign a distinct instance type to each of these maps, we would
still have more than enough to spare with this change.

R=ulan@chromium.org

Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: I3e583c2c8da3342e9132d96046b5d80cd41afd72
Reviewed-on: https://chromium-review.googlesource.com/842542
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50302}
2017-12-22 19:08:18 +00:00
Sergiy Byelozyorov
bf8a5baa0f Whitespace CL
TBR=sergiyb@chromium.org

Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I0cc3a215862430a028e43e0749862729bda8973f
Reviewed-on: https://chromium-review.googlesource.com/842869
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50297}
2017-12-22 15:00:42 +00:00
Michael Achenbach
460af93123 [test] Enable slow-path variant on a subset of bots
Prepared by:
https://crrev.com/c/798412

Bug: v8:7120
Change-Id: I28a00f175673209e6d5f662e30a5448236e7a7c9
Reviewed-on: https://chromium-review.googlesource.com/800612
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50287}
2017-12-21 22:05:09 +00:00
Michael Achenbach
efdbc429bb [test] Enable staging test runner changes on fyi bots
Bug: v8:6917
Change-Id: Ica9b590d194da305416826eeed9f49963b8d97ca
Reviewed-on: https://chromium-review.googlesource.com/839776
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50281}
2017-12-21 17:32:09 +00:00
Sergiy Byelozyorov
d2a80528d8 Whitespace CL
TBR=sergiyb@chromium.org

Bug: chromium:747960
Change-Id: Ic59a39dce3bd3c23cc3553ca6c7bfba142199f92
Reviewed-on: https://chromium-review.googlesource.com/839871
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50278}
2017-12-21 16:59:39 +00:00
Michal Majewski
a130438e13 [test] Removed old output parsing functions.
All get outcome logic moved out from testsuite which makes output
processors serializable. Output processors that are not global
are stored inside testcase to share them with all test copies.

Bug: v8:6917
Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng
Change-Id: I625466b2b00565d885556f96cab03d8d16fa7ff4
Reviewed-on: https://chromium-review.googlesource.com/837069
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50275}
2017-12-21 15:25:33 +00:00
Michal Majewski
848487ad61 [test] Output processor for message
Bug: v8:6917
Change-Id: I51ec0be7ea961d3c81e03675cc65d03ecf526c3d
Reviewed-on: https://chromium-review.googlesource.com/836988
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50268}
2017-12-21 14:38:28 +00:00
Michal Majewski
b0db2dc6ae [test] Output processors for inspector and webkit
Bug: v8:6917
Change-Id: I81bff2190766b3ccbc5da43ff2f3105c6c95da67
Reviewed-on: https://chromium-review.googlesource.com/836557
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50263}
2017-12-21 12:55:35 +00:00
Sergiy Byelozyorov
ad7f6f9901 Whitespace CL
TBR=sergiyb@chromium.org

Bug: chromium:747960
Change-Id: I832c1a438330c0a44dd876ef35eb422fdacca895
Reviewed-on: https://chromium-review.googlesource.com/839445
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50262}
2017-12-21 12:33:07 +00:00
Sergiy Byelozyorov
a93b735a1a Whitespace CL
TBR=sergiyb@chromium.org

Bug: chromium:747960
Change-Id: I0af128fd5195b602b7cb302d38722ed86e123060
Reviewed-on: https://chromium-review.googlesource.com/839360
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50258}
2017-12-21 10:51:55 +00:00
Sergiy Byelozyorov
a8a11419d0 Whitespace CL
TBR=sergiyb@google.com

Bug: chromium:747960
Change-Id: I9846b955d34d2bbdf28f0d0903ef3fef5d9ba524
Reviewed-on: https://chromium-review.googlesource.com/837980
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50252}
2017-12-20 23:03:58 +00:00
Sergiy Byelozyorov
d0c042cd7a Whitespace CL
TBR=sergiyb@chromium.org

Bug: chromium:747960
Change-Id: Id191feb257f1e1154cce2f76427b4ddb4d0883fb
Reviewed-on: https://chromium-review.googlesource.com/837760
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50251}
2017-12-20 21:39:48 +00:00
Sergiy Byelozyorov
17f3fe94fd Whitespace CL
TBR=sergiyb@chromium.org

Bug: chromium:747960
Change-Id: I6718ef1a53439d4d443156c3ec7c269b72a39c36
Reviewed-on: https://chromium-review.googlesource.com/836870
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50245}
2017-12-20 19:26:31 +00:00
Camillo Bruni
b0e2074d9e [tools] New parse processor tool
From the log data generated with --log-function-events we can create a
detailed model of a function's lifetime. The parse processor displays
several stats at a given time (percent and count) on a per function or
byte basis:
- preparsing
- parsing
- eager/lazy compiling
- execution

Bug: chromium:757467
Change-Id: I0ad5c9369c6a0628704e3caffb3920444ea603a9
Reviewed-on: https://chromium-review.googlesource.com/758641
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50234}
2017-12-20 13:07:17 +00:00
Yang Guo
fded82269b Remove unused tools/v8-rolls.sh
We have tools/release/mergeinfo.py

R=verwaest@chromium.org

Change-Id: I9afb104f5c67be5f29ef33824c1ae5a4584ea1ad
Reviewed-on: https://chromium-review.googlesource.com/836610
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50230}
2017-12-20 12:13:01 +00:00
Michal Majewski
d705e15857 [test] Prepare initial version of output processor
First CL moving parsing output to a separate class.
Following CLs will move (and deduplicate) code from
testcases by sharing common features like comparing
stdout to the expected output.

Bug: v8:6917
Change-Id: I1174a985949a0b946cefbf7e7c91e8815cbb4f15
Reviewed-on: https://chromium-review.googlesource.com/834130
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50228}
2017-12-20 11:24:07 +00:00
Hannes Payer
6e086610e0 [heap] Remove --log-gc.
Bug: 
Change-Id: I7b085f89f22de7ea55156d2942f3437bbf9c5af8
Reviewed-on: https://chromium-review.googlesource.com/836588
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Hannes Payer <hpayer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50227}
2017-12-20 11:11:42 +00:00
Yang Guo
9c6bc7afc0 Leave spaces between instance types.
We used to frequently break the ABI when we introduced new instance
types because some instance types are hard-coded in v8.h.

Now that we have more instance types available, we can leave some
room to anticipate future new instance types.

Also take this opportunity to reorder some instance types.

Also see: https://github.com/nodejs/node/issues/17754

Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: I9b59eeab9dfcdf11d779f0b700fc5dce30d3eebe
Reviewed-on: https://chromium-review.googlesource.com/833874
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50223}
2017-12-20 07:34:39 +00:00
Michal Majewski
56b2b3be5e [test] Fix --report output.
Fix report mode and make it use testcase properties so statusfile
outcomes can be private.

Bug: v8:6917
Change-Id: Id38e89e0ba427c3bbb7ad12ba93e02beb7e46219
Reviewed-on: https://chromium-review.googlesource.com/833909
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50209}
2017-12-19 16:35:39 +00:00
Michal Majewski
5e6fd798f9 [test] Fixed target_name in json progress indicator
Pass shell name instead of an absolute path.

Bug: v8:796166
Change-Id: Ia9472e893fd2cb3fde2a94997f3e9daf30da06ea
Reviewed-on: https://chromium-review.googlesource.com/833917
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50207}
2017-12-19 15:23:54 +00:00
Michal Majewski
4695e97905 [test] Move getting outcomes to the statusfile
Bug: v8:6917
Change-Id: I175fa426546f2f3775a35f1094dfb19e06b2185d
Reviewed-on: https://chromium-review.googlesource.com/832394
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50203}
2017-12-19 14:35:16 +00:00
Michal Majewski
e0c4321479 [test] Prepare new API for statusfile parsing.
First step in moving all statusfile logic into statusfile.py.

Introduce StatusFile object that will be used for storing and managing
outcomes.

Bug: v8:6917
Change-Id: I024f9b1d029830345149422a08a8905e92545252
Reviewed-on: https://chromium-review.googlesource.com/832433
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50202}
2017-12-19 14:26:26 +00:00
Michal Majewski
c0173165ee [test] Update testsuite unittests.
Fix unittests since they were incompatible with the
new testcase and testsuite API.

Bug: v8:6917
Change-Id: I917bf58e21402e0b90bc91c0483ade0e7c90bdd6
Reviewed-on: https://chromium-review.googlesource.com/832392
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50201}
2017-12-19 14:13:56 +00:00
Michal Majewski
1f60466659 [test] Store outcomes in the testcase
Bug: v8:6917
Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng
Change-Id: Ia52d4bedbeff5b93915ef69a2dc78f6d92669061
Reviewed-on: https://chromium-review.googlesource.com/832467
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50200}
2017-12-19 14:10:06 +00:00
Sergiy Byelozyorov
2c4704abf5 Whitespace CL to trigger CI bots
TBR=sergiyb@chromium.org

No-Try: true
Change-Id: I16311dee2256f800f9d8fd297e1d45ae301fa207
Reviewed-on: https://chromium-review.googlesource.com/832452
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50181}
2017-12-19 03:08:42 +00:00
Sergiy Byelozyorov
d48bab7cc0 Whitespace CL to trigger CI builders
TBR=sergiyb@chromium.org

No-Try: true
Change-Id: I86256c61155e42c193a2532adc15392c0bf33e3b
Reviewed-on: https://chromium-review.googlesource.com/832451
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50180}
2017-12-19 03:02:52 +00:00