Skip to content

Commit 4080ea7

Browse files
aartbikcommit-bot@chromium.org
authored andcommitted
[vm/fuzzer] Add ia32,arm32,arm64 modes to KBC
Rationale: Bytecode implementation is ready for some more exhaustive testing. Fuzz on! Change-Id: I648cc447ebb830bda56ae6659ca5bc65d13c76b6 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112405 Reviewed-by: Ben Konyi <bkonyi@google.com> Commit-Queue: Aart Bik <ajcbik@google.com>
1 parent 6d9c651 commit 4080ea7

File tree

2 files changed

+29
-20
lines changed

2 files changed

+29
-20
lines changed

runtime/tools/dartfuzz/README.md

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -50,26 +50,19 @@ where
5050
--dart-top : sets DART_TOP explicitly through command line
5151
--mode1 : m1
5252
--mode2 : m2, and values one of
53-
jit-[debug-]ia32 = Dart JIT (ia32)
54-
jit-[debug-]x64 = Dart JIT (x64)
55-
jit-[debug-]arm32 = Dart JIT (simarm)
56-
jit-[debug-]arm64 = Dart JIT (simarm64)
57-
jit-[debug-]dbc32 = Dart JIT (simdbc)
58-
jit-[debug-]dbc64 = Dart JIT (simdbc64)
59-
aot-[debug-]x64 = Dart AOT (x64)
60-
aot-[debug-]arm32 = Dart AOT (simarm)
61-
aot-[debug-]arm64 = Dart AOT (simarm64)
62-
kbc-int-[debug-]x64 = Dart KBC (interpreted bytecode)
63-
kbc-mix-[debug-]x64 = Dart KBC (mixed-mode bytecode)
64-
kbc-cmp-[debug-]x64 = Dart KBC (compiled bytecode)
65-
djs-x64 = dart2js + Node.JS
53+
jit-[debug-][ia32|x64|arm32|arm64|dbc32|dbc64] = Dart JIT
54+
aot-[debug-][x64|arm32|arm64] = Dart AOT
55+
kbc-[int|mix|cmp]-[debug-][ia32|x64|arm32|arm64] = Dart KBC
56+
(interpreted/
57+
mixed-mode/
58+
compiled bytecode)
59+
djs-x64 = dart2js + Node.JS
6660
--[no-]rerun : re-run a testcase if there is only a divergence in
67-
the return codes (not in the output);
61+
the return codes outside the range [-255,+255];
6862
if the second run produces no divergence the previous
6963
one will be ignored (true by default)
7064

71-
72-
If no modes are given, a random JIT and/or AOT combination is used.
65+
If no modes are given, a random combination is used.
7366

7467
This fuzz testing tool must have access to the top of a Dart SDK
7568
development tree (DART_TOP) in which all proper binaries have been

runtime/tools/dartfuzz/dartfuzz_test.dart

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,9 @@ abstract class TestRunner {
6363
prefix += '-CMP';
6464
extraFlags += ['--use-bytecode-compiler'];
6565
}
66-
// Every once in a while, go directly from source for kbc-*-x64.
66+
// Every once in a while, go directly from source for kbc.
6767
bool kbcSrc = false;
68-
if (mode.startsWith('kbc') &&
69-
mode.endsWith('x64') &&
70-
rand.nextInt(4) == 0) {
68+
if (mode.startsWith('kbc') && rand.nextInt(4) == 0) {
7169
prefix += '-SRC';
7270
kbcSrc = true;
7371
}
@@ -593,12 +591,30 @@ class DartFuzzTestSession {
593591
'jit-arm64',
594592
'aot-debug-x64',
595593
'aot-x64',
594+
'kbc-int-debug-ia32',
595+
'kbc-cmp-debug-ia32',
596+
'kbc-mix-debug-ia32',
596597
'kbc-int-debug-x64',
597598
'kbc-cmp-debug-x64',
598599
'kbc-mix-debug-x64',
600+
'kbc-int-debug-arm32',
601+
'kbc-cmp-debug-arm32',
602+
'kbc-mix-debug-arm32',
603+
'kbc-int-debug-arm64',
604+
'kbc-cmp-debug-arm64',
605+
'kbc-mix-debug-arm64',
606+
'kbc-int-ia32',
607+
'kbc-cmp-ia32',
608+
'kbc-mix-ia32',
599609
'kbc-int-x64',
600610
'kbc-cmp-x64',
601611
'kbc-mix-x64',
612+
'kbc-int-arm32',
613+
'kbc-cmp-arm32',
614+
'kbc-mix-arm32',
615+
'kbc-int-arm64',
616+
'kbc-cmp-arm64',
617+
'kbc-mix-arm64',
602618
];
603619

604620
// Modes not used on cluster runs because they have outstanding issues.

0 commit comments

Comments
 (0)