96d88e038d269742325394392a1aa98054c9de7b |
|
15-Feb-2016 |
Neil Fuller <nfuller@google.com> |
Retry implementing --debuggable VmCommandBuilder is also used for --mode jvm: "-Xcompiler-option --debuggable" cannot be inserted there; the "java" command rejects it. Bug: 27186214 (cherry-picked from commit 9712658a463c437f5437bcd981e7e6beacac0dc5) Change-Id: Ic4fab77aed0f6b844aae0ce1c503618bef7ceb5e
/external/vogar/src/vogar/android/HostRuntime.java
|
51e82d0c6bd72bbf8a7428f7e8f0881337910e2c |
|
11-Feb-2016 |
Neil Fuller <nfuller@google.com> |
Move to using jack for more things instead of dx Use jack to create .dex.jar files for --mode=host and --mode=device with --toolchain jack. Also allow for .jack files on the classpath. This is a quick-and-dirty change to keep things working for Jack. Jack is required for the Java 8 work to proceed without breaking the ART continuous build. This change deliberately leaves the existing (toolchain=jdk) untouched. These changes are just intended to modify the --toolchain jack behavior. --toolchain jdk should remain the same. Bug: 27115876 Bug: 26753820 (cherry-picked from commit 4b2e7ab15323b2b057e8bb7b0cf361bb2ab880e0) Change-Id: I02e7b7aa144f49e1fde8de16384b170be6f50cb0
/external/vogar/src/vogar/android/HostRuntime.java
|
411cb1fb67241125203629229600ecbd821eb9c7 |
|
19-Nov-2015 |
Paul Duffin <paulduffin@google.com> |
Fix escaping and grouping of arguments to the Target shells Vogar allows custom arguments to be passed to the classes being tested. If these contain special shell characters then the command line used to run the tests may not be correct. e.g. If the argument was "-Cvm.args=-Xmx256M -Xms256M" (which tells Caliper to run the benchmark in a process with an initial and maximum heap size of 256M) then when the command is actually run by the adb shell they are split into two arguments, "-Cvm.args=-Xmx256M" and "-Xms256M" which causes Caliper to fail as the latter is an unrecognized Caliper option. The solution is to simply escape any special shell characters with a backslash (\) to ensure that they are treated as literal characters. Another bug is that any use of an argument "-c" will result in all the following arguments being grouped into one, e.g. fred -c wilma barney betty will become fred -c "wilma barney betty" This behaviour is required when the -c option is part of "sh" "-c" but not in any other case. This is currently implemented in Command which is the wrong place as it's a generic class independent of the Target and the grouping is dependent on the target shell. After some investigation it turns out that while grouping isn't required for AdbTarget and SshTarget like it is for HostTarget neither does it break anything. Therefore, for simplicity's sake all targets will group their arguments into one when executing the command line. That will be done before it is appended to the targetProcessPrefix(). The escaping and grouping will be done by a new Target.ScriptBuilder class, instances of which will be created by a Target.newScriptBuilder() method that will make sure that the ScriptBuilder returned will be appropriate for the target shell. It will provide support for specifying inline environment variables, a working directory and adding tokens to the command line. It will escape where necessary, e.g. it will not escape the environment variable name or assignment but will escape the value. It will escape all the tokens. When asked to construct an appropriate command line to execute that script it will group the script contents into one argument and append it to a target specific prefix. VmCommandBuilder will use the new ScriptBuilder to build the command line that it then passes to Command. It will also be changed to track environment variables explicitly (will use the existing but unused env field and method) which it will then pass onto the ScriptBuilder. Finally, it will track the workingDirectory as well. DeviceRuntime and HostRuntime will both change how they use VmCommandBuilder to make use of the env(String, String) method and the new workingDirectory(File). Command will remove the processArgs() method and simply take a copy of its args. Added new tests for ScriptBuilder.escape(String) method and a JUnit 4 TestSuite AllTests that can be used to run all the tests that currently work within an IDE. Change-Id: I0351c9fd3fe9d42c1b454251cf78ff74fafb08b2
/external/vogar/src/vogar/android/HostRuntime.java
|
af11af97e4456b8b28b6914dfede7ca6c1272c1a |
|
19-Sep-2015 |
Alex Light <allight@google.com> |
Fix vogar Change-Id: Ie24556b9fc9c487033dbb3e69bb7ede426d3b991
/external/vogar/src/vogar/android/HostRuntime.java
|
128163bc9658aad4a0b331ff9a777a7719d8c459 |
|
18-Sep-2015 |
Alex Light <allight@google.com> |
Make vogar work if one uses OUT_DIR Change-Id: I19824d792d5dcbed32846912fb36654894fcc0ac
/external/vogar/src/vogar/android/HostRuntime.java
|
f76a1e929a3ad46e7612a9307efffffc47222cc4 |
|
31-Jul-2015 |
Rayhaan Jaufeerally <rayhaan@google.com> |
JNI check flag in Vogar. Add a flag to toggle the use of -Xcheck:jni when not in benchmark mode. (see b/22310991). Change-Id: Ibb3c78f154ff0653790f3ef75615015b4b26f64d
/external/vogar/src/vogar/android/HostRuntime.java
|
fca99ba6a930cd7a36b1807c0201f49a80cadcf6 |
|
13-Jul-2015 |
Rayhaan Jaufeerally <rayhaan@google.com> |
Experimental support for jack on host mode. This includes adding a --toolchain={jack,jdk} option which chooses what to compile sources with. Currently only works with host mode and pending on b/22382563 to be able to properly compile code with dependencies on the surrounding package. This depends on the prebuilt jack jar file in AOSP. Change-Id: Id4d5eaa51318009fd8a147e4c548be3c62f9c5aa
/external/vogar/src/vogar/android/HostRuntime.java
|
6373ab628b4a93a375b8cfde633229816ba101af |
|
09-Jul-2015 |
Rayhaan Jaufeerally <rayhaan@google.com> |
Drop support for legacy modes: DEVICE_DALVIK, DEVICE_ART_KITKAT, HOST_DALVIK, HOST_ART_KITKAT. Change-Id: I62825c2055e6865d531bf549e1a75177c0103b74
/external/vogar/src/vogar/android/HostRuntime.java
|
b3c0729475d1ca64d6c64d2d42f190093c7ff300 |
|
25-Jun-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Add environment variable now required by ART on host. We switched ART to using dlopen instead of our own .oat file loader. We load the boot image at a fixed address, which requires LD_USE_LOAD_BIAS to be set for dlopen to work. Change-Id: I63f36e3128233a80531e146ae104eac550bb7220
/external/vogar/src/vogar/android/HostRuntime.java
|
83672b1eeb88b7b8e04126a8656ac4594f676a54 |
|
22-Apr-2015 |
Elliott Hughes <enh@google.com> |
Fix vogar's idea of quoting. This patch switches us over to using "sh -c" on the host and "adb shell sh -c" on the device for consistency. Before we were using exec(2) directly on the host and relying on a bug in adb shell on the device. This patch stops exploiting that bug (which was fixed as bug http://b/20323053) and stops using exec(2) locally to keep us honest. We should probably remove SshTarget, but that's a job for another patch. Bug: http://b/19734868 Bug: http://b/20323053 Change-Id: I9a74050e10502ff062fe404f8359aecdb82afbe2
/external/vogar/src/vogar/android/HostRuntime.java
|
6c6446ae4491f6e0aae46d7af1b272df79696dd8 |
|
25-Nov-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Only set verify:none for dalvik. It has the side effect of disabling ART's compiler (which relies on the verifier). Change-Id: I3201f861897fadef5962d31c600279ca21c39b68
/external/vogar/src/vogar/android/HostRuntime.java
|
0bfe27ed7e3a2a83e45688ecb420df7b30a59a85 |
|
16-Sep-2014 |
nfuller@google.com <nfuller@google.com@aa685c63-decc-881d-cd2b-7fa72aad72e1> |
Use --var=x64 to run the 64-bit version of ART on platforms that support it. --var=x32 is still the default. git-svn-id: http://vogar.googlecode.com/svn/trunk@300 aa685c63-decc-881d-cd2b-7fa72aad72e1
/external/vogar/src/vogar/android/HostRuntime.java
|
c620846e4044b3b3a8abfc42ddba4adca4e545d9 |
|
05-Aug-2014 |
nfuller@google.com <nfuller@google.com@aa685c63-decc-881d-cd2b-7fa72aad72e1> |
Adding back support for Dalvik. Laying groundwork for 64-bit ART support (--var) Fixing app_process / activity modes. Refactoring / renaming classes to better reflect their purpose. --mode device and --mode host are for ART-only releases. --mode device_dalvik and --mode host_dalvik are for Dalvik releases. --mode device_art_kitkat and --mode host_art_kitkat are for running ART on KitKat releases. Host mode appears broken, not sure why. --mode app_process is ART-specific now unless run with an SDK. --mode activity didn't appear to work. It works for simple tests now with ART or with an SDK. L introduced some changes to System property behavior which broke TestEnvironment and have been worked around. git-svn-id: http://vogar.googlecode.com/svn/trunk@299 aa685c63-decc-881d-cd2b-7fa72aad72e1
/external/vogar/src/vogar/android/HostRuntime.java
|