blob: b27d5cad62051bbb138a1c089d7f6a59a9f3aa80 [file] [log] [blame]
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package dexfuzz.executors;
import dexfuzz.listeners.BaseListener;
public class X86OptimizingBackendExecutor extends Executor {
public X86OptimizingBackendExecutor(BaseListener listener, Device device) {
super("x86 Optimizing Backend", 5, listener, Architecture.X86, device);
}
@Override
public void execute(String programName) {
StringBuilder commandBuilder = new StringBuilder();
commandBuilder.append("dalvikvm32 -Xcompiler-option --compiler-backend=Optimizing ");
commandBuilder.append("-cp ").append(testLocation).append("/").append(programName).append(" ");
commandBuilder.append(executeClass);
executionResult = executeOnDevice(commandBuilder.toString(), true);
}
@Override
public void deleteGeneratedOatFile(String programName) {
String command = "rm -f /data/dalvik-cache/x86/" + getOatFileName(programName);
executeOnDevice(command, false);
}
@Override
public boolean needsCleanCodeCache() {
return true;
}
}