Adds host execution to dexfuzz.
Use --host to execute fuzzed tests using the host-build of ART.
See the README for more information.
Also includes some refactoring of Executors/Devices.
Change-Id: I789d6b3e102074b22431d8afa5a5c966b2710272
diff --git a/tools/dexfuzz/README b/tools/dexfuzz/README
index c4795f2..a0658ec 100644
--- a/tools/dexfuzz/README
+++ b/tools/dexfuzz/README
@@ -21,7 +21,13 @@
How to run DexFuzz
==================
-1. Build dexfuzz with mmm tools/dexfuzz from within art/.
+DexFuzz can run its test programs on either an ADB-connected device, or a host-build of
+ART locally.
+
+Execution on an ADB-connected device
+------------------------------------
+
+1. Build dexfuzz with mmma tools/dexfuzz from within art/.
2. Make sure you have an Android device connected via ADB, that is capable of
having DEX files pushed to it and executed with the dalvikvm command.
3. Make sure you're in the Android build environment!
@@ -63,6 +69,19 @@
Add in --execute-dir=<dir on device> if you want to specify an execution directory.
(The default is /data/art-test/)
+Host Execution
+--------------
+
+DexFuzz now supports execution on your host machine.
+Follow steps 1, 3, 4, and 7 as above, but also observe the following:
+ - instead of specifying an ISA, use --host
+ - ANDROID_DATA must be set, pointing to a location where dex2oat will place
+ OAT files after compilation.
+ - Files will always be executed in the same directory where you are executing DexFuzz.
+
+Fuzzer Operation
+----------------
+
As the fuzzer works, you'll see output like:
|-----------------------------------------------------------------|