Revert "Add usage to run-libcore-tests.sh"

Reason for revert: breaks ART buildbots.

This reverts commit 06e908361954fe843cb14a398e8c500bd70ae763.
diff --git a/tools/run-libcore-tests.sh b/tools/run-libcore-tests.sh
index 9fa580b..94e7f4a 100755
--- a/tools/run-libcore-tests.sh
+++ b/tools/run-libcore-tests.sh
@@ -14,14 +14,20 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Exit on errors.
-set -e
-
 if [ ! -d libcore ]; then
   echo "Script needs to be run at the root of the android tree"
   exit 1
 fi
 
+source build/envsetup.sh >&/dev/null # for get_build_var, setpaths
+setpaths # include platform prebuilt java, javac, etc in $PATH.
+
+if [ -z "$ANDROID_PRODUCT_OUT" ] ; then
+  JAVA_LIBRARIES=out/target/common/obj/JAVA_LIBRARIES
+else
+  JAVA_LIBRARIES=${ANDROID_PRODUCT_OUT}/../../common/obj/JAVA_LIBRARIES
+fi
+
 # "Root" (actually "system") directory on device (in the case of
 # target testing).
 android_root=${ART_TEST_ANDROID_ROOT:-/system}
@@ -29,12 +35,8 @@
 function classes_jar_path {
   local var="$1"
   local suffix="jar"
-  if [ -z "$ANDROID_PRODUCT_OUT" ] ; then
-    local java_libraries=out/target/common/obj/JAVA_LIBRARIES
-  else
-    local java_libraries=${ANDROID_PRODUCT_OUT}/../../common/obj/JAVA_LIBRARIES
-  fi
-  echo "${java_libraries}/${var}_intermediates/classes.${suffix}"
+
+  echo "${JAVA_LIBRARIES}/${var}_intermediates/classes.${suffix}"
 }
 
 function cparg {
@@ -55,41 +57,31 @@
   done
 }
 
-function usage {
-  local me=$(basename "${BASH_SOURCE[0]}")
-  (
-    cat << EOF
-  Usage: ${me} --mode=<mode> [options]
+# Note: This must start with the CORE_IMG_JARS in Android.common_path.mk
+# because that's what we use for compiling the core.art image.
+# It may contain additional modules from TEST_CORE_JARS.
+BOOT_CLASSPATH_JARS="core-oj core-libart core-icu4j okhttp bouncycastle apache-xml conscrypt"
 
-  Run libcore tests using the vogar testing tool.
+DEPS="core-tests jsr166-tests mockito-target"
 
-  Required parameters:
-    --mode=device|host     Specify where tests should be run.
+for lib in $DEPS
+do
+  if [[ ! -f "$(classes_jar_path "$lib")" ]]; then
+    echo "${lib} is missing. Before running, you must run art/tools/buildbot-build.sh"
+    exit 1
+  fi
+done
 
-  Optional parameters:
-    --debug                Use debug version of ART (device|host only).
-    --no-getrandom         Ignore failures from getrandom() (for kernel < 3.17).
-    --no-jit               Disable JIT (device|host only).
-    --Xgc:gcstress         Enable GC stress configuration (device|host only).
-
-  The script passes unrecognized options to the command-line created for vogar.
-
-  Examples:
-
-    1. Run full test suite on host:
-      ${me} --mode=host
-
-    2. Run full test suite on device:
-      ${me} --mode=device
-EOF
-  ) | sed -e 's/^  //' >&2 # Strip leading whitespace from heredoc.
-}
+expectations="--expectations art/tools/libcore_failures.txt"
 
 emulator="no"
 if [ "$ANDROID_SERIAL" = "emulator-5554" ]; then
   emulator="yes"
 fi
 
+# Use JIT compiling by default.
+use_jit=true
+
 # Packages that currently work correctly with the expectation files.
 working_packages=("libcore.android.system"
                   "libcore.build"
@@ -135,89 +127,59 @@
 # changes in case of failures.
 # "org.apache.harmony.security"
 
-# Use JIT compiling by default.
-use_jit=true
-
+vogar_args=$@
 gcstress=false
 debug=false
 
 # Run tests that use the getrandom() syscall? (Requires Linux 3.17+).
 getrandom=true
 
-# Execution mode specifies where to run tests (device|host).
-execution_mode=""
+# Don't use device mode by default.
+device_mode=false
 
-vogar_args=""
-while [ -n "$1" ]; do
-  case "$1" in
-    --mode=device)
-      # Use --mode=device_testdex not --mode=device for buildbot-build.sh.
-      # See commit 191cae33c7c24e for more details.
-      vogar_args="$vogar_args --mode=device_testdex"
-      vogar_args="$vogar_args --vm-arg -Ximage:/data/art-test/core.art"
-      execution_mode="device"
-      ;;
-    --mode=host)
-      # We explicitly give a wrong path for the image, to ensure vogar
-      # will create a boot image with the default compiler. Note that
-      # giving an existing image on host does not work because of
-      # classpath/resources differences when compiling the boot image.
-      vogar_args="$vogar_args $1 --vm-arg -Ximage:/non/existent/vogar.art"
-      execution_mode="host"
-      ;;
-    --no-getrandom)
-      getrandom=false
-      ;;
-    --no-jit)
-      use_jit=false
-      ;;
-    --debug)
-      vogar_args="$vogar_args --vm-arg -XXlib:libartd.so --vm-arg -XX:SlowDebug=true"
-      debug=true
-      ;;
-    -Xgc:gcstress)
-      vogar_args="$vogar_args $1"
-      gcstress=true
-      ;;
-    --help)
-      usage
-      exit 1
-      ;;
-    *)
-      vogar_args="$vogar_args $arg"
-      ;;
-  esac
-  shift
-done
-
-if [ -z "$execution_mode" ]; then
-  usage
-  exit 1
-fi
-
-#
-# Setup environment for running tests.
-#
-source build/envsetup.sh >&/dev/null # for get_build_var, setpaths
-setpaths # include platform prebuilt java, javac, etc in $PATH.
-
-# Note: This must start with the CORE_IMG_JARS in Android.common_path.mk
-# because that's what we use for compiling the core.art image.
-# It may contain additional modules from TEST_CORE_JARS.
-BOOT_CLASSPATH_JARS="core-oj core-libart core-icu4j okhttp bouncycastle apache-xml conscrypt"
-DEPS="core-tests jsr166-tests mockito-target"
-
-for lib in $DEPS
-do
-  if [[ ! -f "$(classes_jar_path "$lib")" ]]; then
-    echo "${lib} is missing. Before running, you must run art/tools/buildbot-build.sh"
-    exit 1
+while true; do
+  if [[ "$1" == "--mode=device" ]]; then
+    device_mode=true
+    # Remove the --mode=device from the arguments and replace it with --mode=device_testdex
+    vogar_args=${vogar_args/$1}
+    vogar_args="$vogar_args --mode=device_testdex"
+    vogar_args="$vogar_args --vm-arg -Ximage:/data/art-test/core.art"
+    vogar_args="$vogar_args $(boot_classpath_arg /system/framework -testdex $BOOT_CLASSPATH_JARS)"
+    shift
+  elif [[ "$1" == "--mode=host" ]]; then
+    # We explicitly give a wrong path for the image, to ensure vogar
+    # will create a boot image with the default compiler. Note that
+    # giving an existing image on host does not work because of
+    # classpath/resources differences when compiling the boot image.
+    vogar_args="$vogar_args --vm-arg -Ximage:/non/existent/vogar.art"
+    shift
+  elif [[ "$1" == "--no-jit" ]]; then
+    # Remove the --no-jit from the arguments.
+    vogar_args=${vogar_args/$1}
+    use_jit=false
+    shift
+  elif [[ "$1" == "--debug" ]]; then
+    # Remove the --debug from the arguments.
+    vogar_args=${vogar_args/$1}
+    vogar_args="$vogar_args --vm-arg -XXlib:libartd.so --vm-arg -XX:SlowDebug=true"
+    debug=true
+    shift
+  elif [[ "$1" == "-Xgc:gcstress" ]]; then
+    gcstress=true
+    shift
+  elif [[ "$1" == "--no-getrandom" ]]; then
+    # Remove the option from Vogar arguments.
+    vogar_args=${vogar_args/$1}
+    getrandom=false
+    shift
+  elif [[ "$1" == "" ]]; then
+    break
+  else
+    shift
   fi
 done
 
-if [ $execution_mode = "device" ]; then
-  vogar_args="$vogar_args $(boot_classpath_arg /system/framework -testdex $BOOT_CLASSPATH_JARS)"
-
+if $device_mode; then
   # Honor environment variable ART_TEST_CHROOT.
   if [[ -n "$ART_TEST_CHROOT" ]]; then
     # Set Vogar's `--chroot` option.
@@ -229,20 +191,18 @@
     vogar_args="$vogar_args --device-dir=/data/local/tmp"
   fi
   vogar_args="$vogar_args --vm-command=$android_root/bin/art"
+fi
 
-  # Increase the timeout, as vogar cannot set individual test
-  # timeout when being asked to run packages, and some tests go above
-  # the default timeout.
-  if $gcstress; then
-    if $debug; then
-       vogar_args="$vogar_args --timeout 1440"
-    else
-      vogar_args="$vogar_args --timeout 900"
-    fi
-  else
-    vogar_args="$vogar_args --timeout 480"
-  fi
-fi  # $execution_mode = "device"
+# Increase the timeout, as vogar cannot set individual test
+# timeout when being asked to run packages, and some tests go above
+# the default timeout.
+if $gcstress && $debug && $device_mode; then
+  vogar_args="$vogar_args --timeout 1440"
+elif $gcstress && $device_mode; then
+  vogar_args="$vogar_args --timeout 900"
+else
+  vogar_args="$vogar_args --timeout 480"
+fi
 
 # set the toolchain to use.
 vogar_args="$vogar_args --toolchain d8 --language CUR"