ART: Remove jack from test

Test: art/test.py --host
Change-Id: I31b0c0d57d344f54a8c0545fd32c81a893b4ec75
diff --git a/test.py b/test.py
index 047d812..bc15736 100755
--- a/test.py
+++ b/test.py
@@ -64,11 +64,8 @@
 
   build_command = 'make'
   build_command += ' -j' + str(options.n_threads)
-
   build_command += ' -C ' + ANDROID_BUILD_TOP
   build_command += ' ' + build_target
-  # Add 'dist' to avoid Jack issues b/36169180.
-  build_command += ' dist'
 
   print build_command
 
diff --git a/test/003-omnibus-opcodes/build b/test/003-omnibus-opcodes/build
index dba3549..4d3fb37 100644
--- a/test/003-omnibus-opcodes/build
+++ b/test/003-omnibus-opcodes/build
@@ -22,15 +22,7 @@
 rm classes/UnresClass.class
 ${JAVAC} -d classes `find src2 -name '*.java'`
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  ${JACK} --import classes.jill.jar --output-dex .
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} -JXmx256m --debug --dex --output=classes.dex classes
-  fi
-fi
-
 if [ ${NEED_DEX} = "true" ]; then
+  ${DX} -JXmx256m --debug --dex --output=classes.dex classes
   zip $TEST_NAME.jar classes.dex
 fi
diff --git a/test/005-annotations/build b/test/005-annotations/build
index 8b9f550..8eb07a9 100644
--- a/test/005-annotations/build
+++ b/test/005-annotations/build
@@ -28,16 +28,7 @@
 rm 'classes/android/test/anno/MissingAnnotation.class'
 rm 'classes/android/test/anno/ClassWithInnerAnnotationClass$MissingInnerAnnotationClass.class'
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  # Jack needs to emit annotations with CLASS retention.
-  ${JACK} -D jack.dex.annotation.class-retention=true --import classes.jill.jar --output-dex .
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} -JXmx256m --debug --dex --output=classes.dex classes
-  fi
-fi
-
 if [ ${NEED_DEX} = "true" ]; then
+  ${DX} -JXmx256m --debug --dex --output=classes.dex classes
   zip $TEST_NAME.jar classes.dex
 fi
diff --git a/test/022-interface/build b/test/022-interface/build
index 5cfc7f2..f6aad91 100644
--- a/test/022-interface/build
+++ b/test/022-interface/build
@@ -17,13 +17,6 @@
 # Stop if something fails.
 set -e
 
-# Use classes that are compiled with ecj that exposes an invokeinterface
-# issue when interfaces override methods in Object
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  ${JACK} --import classes.jill.jar --output-dex .
-else
-  ${DX} --debug --dex --dump-to=classes.lst --output=classes.dex classes
-fi
+${DX} --debug --dex --dump-to=classes.lst --output=classes.dex classes
 
 zip $TEST_NAME.jar classes.dex
diff --git a/test/023-many-interfaces/build b/test/023-many-interfaces/build
index b4b5bd4..faa3ce7 100644
--- a/test/023-many-interfaces/build
+++ b/test/023-many-interfaces/build
@@ -21,16 +21,4 @@
 gcc -Wall -Werror -o iface-gen iface-gen.c
 ./iface-gen
 
-if [ ${USE_JACK} = "true" ]; then
-  # Use the default Jack commands
-  ./default-build
-else
-  mkdir classes
-  ${JAVAC} -d classes src/*.java
-
-  # dx needs more memory for that test so do not pass Xmx option here.
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} --debug --dex --dump-to=classes.lst --output=classes.dex classes
-    zip $TEST_NAME.jar classes.dex
-  fi
-fi
+./default-build "$@"
diff --git a/test/056-const-string-jumbo/build b/test/056-const-string-jumbo/build
index 5344ac3..47641d5 100644
--- a/test/056-const-string-jumbo/build
+++ b/test/056-const-string-jumbo/build
@@ -39,17 +39,10 @@
     printf("}\n") > fileName;
 }'
 
-if [ ${USE_JACK} = "true" ]; then
-  ${JACK} --output-dex . src
-else
-  mkdir classes
-  ${JAVAC} -d classes src/*.java
-
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} -JXmx500m --debug --dex --no-optimize --positions=none --no-locals --output=classes.dex classes
-  fi
-fi
+mkdir classes
+${JAVAC} -d classes src/*.java
 
 if [ ${NEED_DEX} = "true" ]; then
+  ${DX} -JXmx500m --debug --dex --no-optimize --positions=none --no-locals --output=classes.dex classes
   zip $TEST_NAME.jar classes.dex
 fi
diff --git a/test/091-override-package-private-method/build b/test/091-override-package-private-method/build
index 073a4ba..ea12b3a 100755
--- a/test/091-override-package-private-method/build
+++ b/test/091-override-package-private-method/build
@@ -23,19 +23,9 @@
 mkdir classes-ex
 mv classes/OverridePackagePrivateMethodSuper.class classes-ex
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  jar cf classes-ex.jill.jar -C classes-ex .
-
-  ${JACK} --import classes.jill.jar --output-dex .
+if [ ${NEED_DEX} = "true" ]; then
+  ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes
   zip $TEST_NAME.jar classes.dex
-  ${JACK} --import classes-ex.jill.jar --output-dex .
+  ${DX} -JXmx256m --debug --dex --dump-to=classes-ex.lst --output=classes.dex --dump-width=1000 classes-ex
   zip ${TEST_NAME}-ex.jar classes.dex
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes
-    zip $TEST_NAME.jar classes.dex
-    ${DX} -JXmx256m --debug --dex --dump-to=classes-ex.lst --output=classes.dex --dump-width=1000 classes-ex
-    zip ${TEST_NAME}-ex.jar classes.dex
-  fi
 fi
diff --git a/test/111-unresolvable-exception/build b/test/111-unresolvable-exception/build
index cf19f60..6fe73af 100644
--- a/test/111-unresolvable-exception/build
+++ b/test/111-unresolvable-exception/build
@@ -21,15 +21,7 @@
 ${JAVAC} -d classes `find src -name '*.java'`
 rm classes/TestException.class
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  ${JACK} --import classes.jill.jar --output-dex .
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex classes
-  fi
-fi
-
 if [ ${NEED_DEX} = "true" ]; then
+  ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex classes
   zip $TEST_NAME.jar classes.dex
 fi
diff --git a/test/113-multidex/build b/test/113-multidex/build
index b980e50..f945563 100644
--- a/test/113-multidex/build
+++ b/test/113-multidex/build
@@ -27,25 +27,11 @@
 ${JAVAC} -d classes2 `find src -name '*.java'`
 rm classes2/Second.class classes2/FillerA.class classes2/FillerB.class classes2/Inf*.class
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  jar cf classes2.jill.jar -C classes2 .
-
-  ${JACK} --import classes.jill.jar --output-dex .
-  mv classes.dex classes-1.dex
-  ${JACK} --import classes2.jill.jar --output-dex .
-  mv classes.dex classes2.dex
-  mv classes-1.dex classes.dex
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    # All except Main
-    ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex classes
-
-    # Only Main
-    ${DX} -JXmx256m --debug --dex --dump-to=classes2.lst --output=classes2.dex classes2
-  fi
-fi
-
 if [ ${NEED_DEX} = "true" ]; then
+  # All except Main
+  ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex classes
+
+  # Only Main
+  ${DX} -JXmx256m --debug --dex --dump-to=classes2.lst --output=classes2.dex classes2
   zip $TEST_NAME.jar classes.dex classes2.dex
 fi
diff --git a/test/124-missing-classes/build b/test/124-missing-classes/build
index ea45cd2..b13aa6e 100644
--- a/test/124-missing-classes/build
+++ b/test/124-missing-classes/build
@@ -26,15 +26,7 @@
 rm 'classes/MissingClass.class'
 rm 'classes/Main$MissingInnerClass.class'
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  ${JACK} --import classes.jill.jar --output-dex .
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} -JXmx256m --debug --dex --output=classes.dex classes
-  fi
-fi
-
 if [ ${NEED_DEX} = "true" ]; then
+  ${DX} -JXmx256m --debug --dex --output=classes.dex classes
   zip $TEST_NAME.jar classes.dex
 fi
diff --git a/test/126-miranda-multidex/build b/test/126-miranda-multidex/build
index 2a5e7da..cf19855 100644
--- a/test/126-miranda-multidex/build
+++ b/test/126-miranda-multidex/build
@@ -27,25 +27,11 @@
 ${JAVAC} -d classes2 `find src -name '*.java'`
 rm classes2/Main.class classes2/MirandaAbstract.class classes2/MirandaClass*.class classes2/MirandaInterface2*.class
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  jar cf classes2.jill.jar -C classes2 .
-
-  ${JACK} --import classes.jill.jar --output-dex .
-  mv classes.dex classes-1.dex
-  ${JACK} --import classes2.jill.jar --output-dex .
-  mv classes.dex classes2.dex
-  mv classes-1.dex classes.dex
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    # All except Main
-    ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex classes
-
-    # Only Main
-    ${DX} -JXmx256m --debug --dex --dump-to=classes2.lst --output=classes2.dex classes2
-  fi
-fi
-
 if [ ${NEED_DEX} = "true" ]; then
+  # All except Main
+  ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex classes
+
+  # Only Main
+  ${DX} -JXmx256m --debug --dex --dump-to=classes2.lst --output=classes2.dex classes2
   zip $TEST_NAME.jar classes.dex classes2.dex
 fi
diff --git a/test/127-checker-secondarydex/build b/test/127-checker-secondarydex/build
index 7ce46ac..712774f 100755
--- a/test/127-checker-secondarydex/build
+++ b/test/127-checker-secondarydex/build
@@ -23,19 +23,9 @@
 mkdir classes-ex
 mv classes/Super.class classes-ex
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  jar cf classes-ex.jill.jar -C classes-ex .
-
-  ${JACK} --import classes.jill.jar --output-dex .
+if [ ${NEED_DEX} = "true" ]; then
+  ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes
   zip $TEST_NAME.jar classes.dex
-  ${JACK} --import classes-ex.jill.jar --output-dex .
+  ${DX} -JXmx256m --debug --dex --dump-to=classes-ex.lst --output=classes.dex --dump-width=1000 classes-ex
   zip ${TEST_NAME}-ex.jar classes.dex
-else
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes
-    zip $TEST_NAME.jar classes.dex
-    ${DX} -JXmx256m --debug --dex --dump-to=classes-ex.lst --output=classes.dex --dump-width=1000 classes-ex
-    zip ${TEST_NAME}-ex.jar classes.dex
-  fi
 fi
diff --git a/test/138-duplicate-classes-check2/build b/test/138-duplicate-classes-check2/build
index d346251..76d535a 100755
--- a/test/138-duplicate-classes-check2/build
+++ b/test/138-duplicate-classes-check2/build
@@ -24,15 +24,7 @@
 ${JAVAC} -d classes-ex `find src-ex -name '*.java'`
 rm classes-ex/A.class
 
-if [ ${USE_JACK} = "true" ]; then
-  jar cf classes.jill.jar -C classes .
-  ${JACK} --import classes.jill.jar --output-dex .
-  zip ${TEST_NAME}.jar classes.dex
-
-  jar cf classes-ex.jill.jar -C classes-ex .
-  ${JACK} --import classes-ex.jill.jar --output-dex .
-  zip ${TEST_NAME}-ex.jar classes.dex
-elif [ ${NEED_DEX} = "true" ]; then
+if [ ${NEED_DEX} = "true" ]; then
   ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes
   zip ${TEST_NAME}.jar classes.dex
   ${DX} -JXmx256m --debug --dex --dump-to=classes-ex.lst --output=classes.dex --dump-width=1000 classes-ex
diff --git a/test/1929-exception-catch-exception/smali/art/Test1929$Impl.smali b/test/1929-exception-catch-exception/smali/art/Test1929$Impl.smali
index 4edd56f..605b408 100644
--- a/test/1929-exception-catch-exception/smali/art/Test1929$Impl.smali
+++ b/test/1929-exception-catch-exception/smali/art/Test1929$Impl.smali
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-# The standard dx/jack/d8 all would leave the move-exception instructions outside of either catch
+# The standard dx/d8 would leave the move-exception instructions outside of either catch
 # block. This is different from the RI which will leave the corresponding aload.
 #
 # See b/65203529 for more information.
diff --git a/test/1929-exception-catch-exception/src/art/Test1929.java b/test/1929-exception-catch-exception/src/art/Test1929.java
index e2deb3f..c0995a8 100644
--- a/test/1929-exception-catch-exception/src/art/Test1929.java
+++ b/test/1929-exception-catch-exception/src/art/Test1929.java
@@ -149,7 +149,7 @@
     public void run() { throwCatchBaseTestException(); }
   }
 
-  // dx/d8/jack all do an optimization around catch blocks that (while legal) breaks assumptions
+  // dx and d8 do an optimization around catch blocks that (while legal) breaks assumptions
   // this test relies on so we have the actual implementation be corrected smali. This does work
   // for RI however.
 
diff --git a/test/303-verification-stress/build b/test/303-verification-stress/build
index b67eaf2..ba79541 100644
--- a/test/303-verification-stress/build
+++ b/test/303-verification-stress/build
@@ -21,16 +21,11 @@
 gcc -Wall -Werror -o classes-gen classes-gen.c
 ./classes-gen
 
-if [ ${USE_JACK} = "true" ]; then
-  # Use the default Jack commands
-  ./default-build
-else
-  mkdir classes
-  ${JAVAC} -d classes src/*.java
+mkdir classes
+${JAVAC} -d classes src/*.java
 
-  # dx needs more memory for that test so do not pass Xmx option here.
-  if [ ${NEED_DEX} = "true" ]; then
-    ${DX} --debug --dex --output=classes.dex classes
-    zip $TEST_NAME.jar classes.dex
-  fi
+# dx needs more memory for that test so do not pass Xmx option here.
+if [ ${NEED_DEX} = "true" ]; then
+  ${DX} --debug --dex --output=classes.dex classes
+  zip $TEST_NAME.jar classes.dex
 fi
diff --git a/test/442-checker-constant-folding/build b/test/442-checker-constant-folding/build
index 947ec9a..42b99ad 100755
--- a/test/442-checker-constant-folding/build
+++ b/test/442-checker-constant-folding/build
@@ -14,12 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
 # See b/65168732
 export DX=$ANDROID_HOST_OUT/bin/dx
 
diff --git a/test/450-checker-types/build b/test/450-checker-types/build
index 49292c9..10ffcc5 100755
--- a/test/450-checker-types/build
+++ b/test/450-checker-types/build
@@ -14,10 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
+# See b/65168732
+export USE_D8=false
 
 ./default-build "$@"
diff --git a/test/458-checker-instruct-simplification/build b/test/458-checker-instruct-simplification/build
index 3721955..10ffcc5 100755
--- a/test/458-checker-instruct-simplification/build
+++ b/test/458-checker-instruct-simplification/build
@@ -14,12 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
 # See b/65168732
 export USE_D8=false
 
diff --git a/test/463-checker-boolean-simplifier/build b/test/463-checker-boolean-simplifier/build
index 3721955..10ffcc5 100755
--- a/test/463-checker-boolean-simplifier/build
+++ b/test/463-checker-boolean-simplifier/build
@@ -14,12 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
 # See b/65168732
 export USE_D8=false
 
diff --git a/test/536-checker-intrinsic-optimization/build b/test/536-checker-intrinsic-optimization/build
deleted file mode 100755
index 49292c9..0000000
--- a/test/536-checker-intrinsic-optimization/build
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2017 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.
-
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
-./default-build "$@"
diff --git a/test/537-checker-inline-and-unverified/build b/test/537-checker-inline-and-unverified/build
deleted file mode 100755
index 49292c9..0000000
--- a/test/537-checker-inline-and-unverified/build
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2017 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.
-
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
-./default-build "$@"
diff --git a/test/565-checker-doublenegbitwise/build b/test/565-checker-doublenegbitwise/build
index 3721955..10ffcc5 100755
--- a/test/565-checker-doublenegbitwise/build
+++ b/test/565-checker-doublenegbitwise/build
@@ -14,12 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
 # See b/65168732
 export USE_D8=false
 
diff --git a/test/586-checker-null-array-get/build b/test/586-checker-null-array-get/build
deleted file mode 100755
index 49292c9..0000000
--- a/test/586-checker-null-array-get/build
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2017 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.
-
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
-./default-build "$@"
diff --git a/test/593-checker-boolean-2-integral-conv/build b/test/593-checker-boolean-2-integral-conv/build
deleted file mode 100755
index 49292c9..0000000
--- a/test/593-checker-boolean-2-integral-conv/build
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2017 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.
-
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
-./default-build "$@"
diff --git a/test/633-checker-rtp-getclass/build b/test/633-checker-rtp-getclass/build
deleted file mode 100755
index 49292c9..0000000
--- a/test/633-checker-rtp-getclass/build
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2017 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.
-
-# This checker test is incompatible with jack bytecode output,
-# so force it to use javac/dx.
-export USE_JACK=false
-# Also disable desugar because it is missing in jack platform builds.
-export DESUGAR=false
-
-./default-build "$@"
diff --git a/test/636-arm64-veneer-pool/build b/test/636-arm64-veneer-pool/build
deleted file mode 100755
index 43f9018..0000000
--- a/test/636-arm64-veneer-pool/build
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2017 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.
-# Make us exit on a failure.
-
-set -e
-
-# Use javac+dx instead of jack.
-export USE_JACK=false
-
-# Don't use desugar because the bootclasspath jars will be missing
-# on a platform build compiled with ANDROID_COMPILE_WITH_JACK=true.
-export USE_DESUGAR=false
-
-./default-build "$@"
diff --git a/test/641-checker-arraycopy/build b/test/641-checker-arraycopy/build
deleted file mode 100644
index 12e4423..0000000
--- a/test/641-checker-arraycopy/build
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2017 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.
-
-# make us exit on a failure
-set -e
-
-# Don't use jack for this test, to ensure we don't use
-# the typed System.arraycopy versions directly.
-export USE_JACK=false
-
-# Don't use desugar because the bootclasspath jars will be missing
-# on a platform build compiled with ANDROID_COMPILE_WITH_JACK=true.
-export USE_DESUGAR=false
-
-./default-build "$@"
diff --git a/test/910-methods/check b/test/910-methods/check
index 76b23cb..61846ad 100644
--- a/test/910-methods/check
+++ b/test/910-methods/check
@@ -14,11 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Jack has a different set of bytecode offsets/method IDs in the expected.txt
-if [[ "$USE_JACK" == true ]]; then
-  patch -p0 expected.txt < expected_jack.diff
-fi
-
 ./default-check "$@"
 if [[ "$?" == "0" ]]; then
   exit 0;
diff --git a/test/910-methods/expected_jack.diff b/test/910-methods/expected_jack.diff
deleted file mode 100644
index 2fe6953..0000000
--- a/test/910-methods/expected_jack.diff
+++ /dev/null
@@ -1,4 +0,0 @@
-7c7
-< Location end: 39
----
-> Location end: 40
diff --git a/test/911-get-stack-trace/check b/test/911-get-stack-trace/check
index a46ea9e..ee00266 100644
--- a/test/911-get-stack-trace/check
+++ b/test/911-get-stack-trace/check
@@ -14,11 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Jack has a different set of bytecode offsets/method IDs in the expected.txt
-if [[ "$USE_JACK" == true ]]; then
-  patch -p0 expected.txt < expected_jack.diff
-fi
-
 if [[ "$DX" == 'd8' ]]; then
   patch -p0 expected.txt < expected_d8.diff
 fi
diff --git a/test/911-get-stack-trace/expected_jack.diff b/test/911-get-stack-trace/expected_jack.diff
deleted file mode 100644
index b748194..0000000
--- a/test/911-get-stack-trace/expected_jack.diff
+++ /dev/null
@@ -1,32 +0,0 @@
-24c24
-<  doTest ()V 34 25
----
->  doTest ()V 38 25
-44c44
-<  doTest ()V 38 26
----
->  doTest ()V 42 26
-65c65
-<  doTest ()V 60 32
----
->  doTest ()V 65 32
-363c363
-<  doTest ()V 122 59
----
->  doTest ()V 128 59
-598c598
-<  doTest ()V 127 61
----
->  doTest ()V 133 61
-630c630
-<  doTest ()V 112 54
----
->  doTest ()V 116 54
-677c677
-<  doTest ()V 117 56
----
->  doTest ()V 121 56
-792c792
-< [public static void art.Frames.doTestSameThread(), 35]
----
-> [public static void art.Frames.doTestSameThread(), 38]
diff --git a/test/913-heaps/check b/test/913-heaps/check
index f4892d0..c3b47f5 100644
--- a/test/913-heaps/check
+++ b/test/913-heaps/check
@@ -15,10 +15,7 @@
 # limitations under the License.
 
 # Jack/D8 has a different set of bytecode offsets/method IDs in the expected.txt
-
-if [[ "$USE_JACK" == true ]]; then
-  patch -p0 expected.txt < expected_jack.diff
-elif [[ "$USE_D8" == true ]]; then
+if [[ "$USE_D8" == true ]]; then
   patch -p0 expected.txt < expected_d8.diff
 fi
 
diff --git a/test/913-heaps/expected_jack.diff b/test/913-heaps/expected_jack.diff
deleted file mode 100644
index 32fef02..0000000
--- a/test/913-heaps/expected_jack.diff
+++ /dev/null
@@ -1,50 +0,0 @@
-4c4
-< root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 30])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 32])--> 1@1000 [size=16, length=-1]
-49,50c49,50
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=11,location= 8])--> 1@1000 [size=16, length=-1]
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 8])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=13,location= 10])--> 1@1000 [size=16, length=-1]
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 10])--> 1@1000 [size=16, length=-1]
-102c102
-< root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 30])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 32])--> 1@1000 [size=16, length=-1]
-115,116c115,116
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=11,location= 8])--> 1@1000 [size=16, length=-1]
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 8])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=13,location= 10])--> 1@1000 [size=16, length=-1]
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 10])--> 1@1000 [size=16, length=-1]
-162c162
-< root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 30])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 32])--> 1@1000 [size=16, length=-1]
-177,178c177,178
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=11,location= 8])--> 1@1000 [size=16, length=-1]
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 8])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=13,location= 10])--> 1@1000 [size=16, length=-1]
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 10])--> 1@1000 [size=16, length=-1]
-201c201
-< root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 30])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 32])--> 1@1000 [size=16, length=-1]
-246,247c246,247
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=11,location= 8])--> 1@1000 [size=16, length=-1]
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 8])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=13,location= 10])--> 1@1000 [size=16, length=-1]
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 10])--> 1@1000 [size=16, length=-1]
-347c347
-< root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 30])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 32])--> 1@1000 [size=16, length=-1]
-366,367c366,367
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=11,location= 8])--> 1@1000 [size=16, length=-1]
-< root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 8])--> 1@1000 [size=16, length=-1]
----
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=13,location= 10])--> 1@1000 [size=16, length=-1]
-> root@root --(stack-local[id=1,tag=3000,depth=1,method=doFollowReferencesTestImpl,vreg=5,location= 10])--> 1@1000 [size=16, length=-1]
diff --git a/test/968-default-partial-compile-gen/build b/test/968-default-partial-compile-gen/build
index 00ccb89..c8f0384 100755
--- a/test/968-default-partial-compile-gen/build
+++ b/test/968-default-partial-compile-gen/build
@@ -17,8 +17,6 @@
 # make us exit on a failure
 set -e
 
-# TODO: Support running with jack.
-
 if [[ $@ == *"--jvm"* ]]; then
   # Build the Java files if we are running a --jvm test
   mkdir -p classes
diff --git a/test/970-iface-super-resolution-gen/build b/test/970-iface-super-resolution-gen/build
index 7217fac..0594501 100755
--- a/test/970-iface-super-resolution-gen/build
+++ b/test/970-iface-super-resolution-gen/build
@@ -20,16 +20,6 @@
 # Should we compile with Java source code. By default we will use Smali.
 USES_JAVA_SOURCE="false"
 if [[ $@ == *"--jvm"* ]]; then
-  USES_JAVA_SOURCE="true"
-elif [[ "$USE_JACK" == "true" ]]; then
-  if $JACK -D jack.java.source.version=1.8 -D jack.android.min-api-level=24 2>/dev/null; then
-    USES_JAVA_SOURCE="true"
-  else
-    echo "WARNING: Cannot use jack because it does not support JLS 1.8. Falling back to smali" >&2
-  fi
-fi
-
-if [[ "$USES_JAVA_SOURCE" == "true" ]]; then
   # Build the Java files
   mkdir -p src
   mkdir -p src2
diff --git a/test/971-iface-super/build b/test/971-iface-super/build
index 00ccb89..c8f0384 100755
--- a/test/971-iface-super/build
+++ b/test/971-iface-super/build
@@ -17,8 +17,6 @@
 # make us exit on a failure
 set -e
 
-# TODO: Support running with jack.
-
 if [[ $@ == *"--jvm"* ]]; then
   # Build the Java files if we are running a --jvm test
   mkdir -p classes
diff --git a/test/etc/default-build b/test/etc/default-build
index e06b367..d0ebe80 100755
--- a/test/etc/default-build
+++ b/test/etc/default-build
@@ -109,7 +109,7 @@
 WITH_ZIP_ALIGN=false
 ZIP_ALIGN_BYTES="-1"
 
-DX_FLAGS="--min-sdk-version=24"
+DX_FLAGS="--min-sdk-version=26"
 DX_VM_FLAGS=""
 EXPERIMENTAL=""
 
@@ -120,13 +120,6 @@
 DEFAULT_EXPERIMENT="no-experiment"
 
 # Setup experimental flag mappings in a bash associative array.
-declare -A JACK_EXPERIMENTAL_ARGS
-JACK_EXPERIMENTAL_ARGS["agents"]="-D jack.java.source.version=1.8 -D jack.android.min-api-level=24"
-JACK_EXPERIMENTAL_ARGS["default-methods"]="-D jack.java.source.version=1.8 -D jack.android.min-api-level=24"
-JACK_EXPERIMENTAL_ARGS["lambdas"]="-D jack.java.source.version=1.8 -D jack.android.min-api-level=24"
-JACK_EXPERIMENTAL_ARGS["method-handles"]="-D jack.java.source.version=1.7 -D jack.android.min-api-level=o-b1"
-JACK_EXPERIMENTAL_ARGS[${DEFAULT_EXPERIMENT}]="-D jack.java.source.version=1.8 -D jack.android.min-api-level=24"
-
 declare -A SMALI_EXPERIMENTAL_ARGS
 SMALI_EXPERIMENTAL_ARGS["default-methods"]="--api 24"
 SMALI_EXPERIMENTAL_ARGS["method-handles"]="--api 26"
@@ -223,19 +216,8 @@
 # Be sure to get any default arguments if not doing any experiments.
 EXPERIMENTAL="${EXPERIMENTAL} ${DEFAULT_EXPERIMENT}"
 
-if [ "${JACK_SERVER}" = "false" ]; then
-  # Run in single-threaded mode for the continuous buildbot.
-  JACK_ARGS="${JACK_ARGS} -D sched.runner=single-threaded"
-else
-  # Run with 4 threads to reduce memory footprint and thread contention.
-  JACK_ARGS="${JACK_ARGS} -D sched.runner=multi-threaded"
-  JACK_ARGS="${JACK_ARGS} -D sched.runner.thread.kind=fixed"
-  JACK_ARGS="${JACK_ARGS} -D sched.runner.thread.fixed.count=4"
-fi
-
 # Add args from the experimental mappings.
 for experiment in ${EXPERIMENTAL}; do
-  JACK_ARGS="${JACK_ARGS} ${JACK_EXPERIMENTAL_ARGS[${experiment}]}"
   SMALI_ARGS="${SMALI_ARGS} ${SMALI_EXPERIMENTAL_ARGS[${experiment}]}"
   JAVAC_ARGS="${JAVAC_ARGS} ${JAVAC_EXPERIMENTAL_ARGS[${experiment}]}"
   DX_FLAGS="${DX_FLAGS} ${DX_EXPERIMENTAL_ARGS[${experiment}]}"
@@ -406,79 +388,39 @@
   mkdir classes-ex
   javac_with_bootclasspath -implicit:none -sourcepath src-dex2oat-unresolved -d classes `find src -name '*.java'`
   javac_with_bootclasspath -implicit:none -sourcepath src -d classes-ex `find src-dex2oat-unresolved -name '*.java'`
-  if [ ${USE_JACK} = "true" ]; then
-    jar cf classes.jill.jar -C classes .
-    jar cf classes-ex.jill.jar -C classes-ex .
-
-    ${JACK} --import classes-ex.jill.jar --output-dex .
+  if [ ${NEED_DEX} = "true" ]; then
+    make_dex classes-ex
+    mv classes-ex.dex classes.dex   # rename it so it shows up as "classes.dex" in the zip file.
     zip ${TEST_NAME}-ex.jar classes.dex
-    ${JACK} --import classes.jill.jar --output-dex .
-  else
-    if [ ${NEED_DEX} = "true" ]; then
-      make_dex classes-ex
-      mv classes-ex.dex classes.dex   # rename it so it shows up as "classes.dex" in the zip file.
-      zip ${TEST_NAME}-ex.jar classes.dex
-      make_dex classes
-    fi
+    make_dex classes
   fi
 else
-  if [ ${USE_JACK} = "true" ]; then
-    # Jack toolchain
-    if [[ "$HAS_SRC" == true || "$HAS_SRC_ART" == true ]]; then
-      if [ "${HAS_SRC_MULTIDEX}" = "true" ]; then
-        # Compile src and src-multidex in the same .jack file. We will apply multidex partitioning
-        # when creating the output .dex file.
-        ${JACK} ${JACK_ARGS} --output-jack src.jack $(maybe_dir src) src-multidex $(maybe_dir src-art)
-        jack_extra_args="${jack_extra_args} -D jack.dex.output.policy=minimal-multidex"
-        jack_extra_args="${jack_extra_args} -D jack.preprocessor=true"
-        jack_extra_args="${jack_extra_args} -D jack.preprocessor.file=multidex.jpp"
-      else
-        ${JACK} ${JACK_ARGS} --output-jack src.jack $(maybe_dir src) $(maybe_dir src-art)
-      fi
-      jack_extra_args="${jack_extra_args} --import src.jack"
-    fi
+  if [ "${HAS_SRC}" = "true" ]; then
+    mkdir -p classes
+    javac_with_bootclasspath -implicit:none -classpath src-multidex -d classes `find src -name '*.java'`
+  fi
 
-    if [ "${HAS_SRC2}" = "true" ]; then
-      ${JACK} ${JACK_ARGS} --output-jack src2.jack src2
-      # In case of duplicate classes, we want to take into account the classes from src2. Therefore
-      # we apply the 'keep-first' policy and import src2.jack file *before* the src.jack file.
-      jack_extra_args="${jack_extra_args} -D jack.import.type.policy=keep-first"
-      jack_extra_args="--import src2.jack ${jack_extra_args}"
-    fi
+  if [ "${HAS_SRC_ART}" = "true" ]; then
+    mkdir -p classes
+    javac_with_bootclasspath -implicit:none -classpath src-multidex -d classes `find src-art -name '*.java'`
+  fi
 
-    # Compile jack files into a DEX file.
-    if [ "${HAS_SRC}" = "true" ] || [ "${HAS_SRC2}" = "true" ] || [ "${HAS_SRC_ART}" = "true" ]; then
-      ${JACK} ${JACK_ARGS} ${jack_extra_args} --output-dex .
+  if [ "${HAS_SRC_MULTIDEX}" = "true" ]; then
+    mkdir classes2
+    javac_with_bootclasspath -implicit:none -classpath src -d classes2 `find src-multidex -name '*.java'`
+    if [ ${NEED_DEX} = "true" ]; then
+      make_dex classes2
     fi
-  else
-    # Legacy toolchain with javac+dx
-    if [ "${HAS_SRC}" = "true" ]; then
-      mkdir -p classes
-      javac_with_bootclasspath -implicit:none -classpath src-multidex -d classes `find src -name '*.java'`
-    fi
+  fi
 
-    if [ "${HAS_SRC_ART}" = "true" ]; then
-      mkdir -p classes
-      javac_with_bootclasspath -implicit:none -classpath src-multidex -d classes `find src-art -name '*.java'`
-    fi
+  if [ "${HAS_SRC2}" = "true" ]; then
+    mkdir -p classes
+    javac_with_bootclasspath -classpath classes -d classes `find src2 -name '*.java'`
+  fi
 
-    if [ "${HAS_SRC_MULTIDEX}" = "true" ]; then
-      mkdir classes2
-      javac_with_bootclasspath -implicit:none -classpath src -d classes2 `find src-multidex -name '*.java'`
-      if [ ${NEED_DEX} = "true" ]; then
-        make_dex classes2
-      fi
-    fi
-
-    if [ "${HAS_SRC2}" = "true" ]; then
-      mkdir -p classes
-      javac_with_bootclasspath -classpath classes -d classes `find src2 -name '*.java'`
-    fi
-
-    if [[ "${HAS_SRC}" == "true" || "${HAS_SRC2}" == "true" || "${HAS_SRC_ART}" == "true" ]]; then
-      if [ ${NEED_DEX} = "true" ]; then
-        make_dex classes
-      fi
+  if [[ "${HAS_SRC}" == "true" || "${HAS_SRC2}" == "true" || "${HAS_SRC_ART}" == "true" ]]; then
+    if [ ${NEED_DEX} = "true" ]; then
+      make_dex classes
     fi
   fi
 fi
@@ -535,30 +477,20 @@
 
 
 if [ ${HAS_SRC_EX} = "true" ]; then
-  if [ ${USE_JACK} = "true" ]; then
-      # Rename previous "classes.dex" so it is not overwritten.
-      mv classes.dex classes-1.dex
-      #TODO find another way to append src.jack to the jack classpath
-      ${JACK}:src.jack ${JACK_ARGS} --output-dex . src-ex
-      zip $TEST_NAME-ex.jar classes.dex
-      # Restore previous "classes.dex" so it can be zipped.
-      mv classes-1.dex classes.dex
-  else
-    # Build src-ex into classes-ex.
-    # Includes 'src', 'src-art' source when compiling classes-ex, but exclude their .class files.
-    if [[ "${HAS_SRC}" == "true" ]]; then
-      mkdir -p classes-tmp-for-ex
-      javac_with_bootclasspath -d classes-tmp-for-ex `find src -name '*.java'`
-      src_tmp_for_ex="-cp classes-tmp-for-ex"
-    fi
-    if [[ "${HAS_SRC_ART}" == "true" ]]; then
-      mkdir -p classes-tmp-for-ex
-      javac_with_bootclasspath -d classes-tmp-for-ex `find src-art -name '*.java'`
-      src_tmp_for_ex="-cp classes-tmp-for-ex"
-    fi
-    mkdir classes-ex
-    javac_with_bootclasspath -d classes-ex $src_tmp_for_ex `find src-ex -name '*.java'`
+  # Build src-ex into classes-ex.
+  # Includes 'src', 'src-art' source when compiling classes-ex, but exclude their .class files.
+  if [[ "${HAS_SRC}" == "true" ]]; then
+    mkdir -p classes-tmp-for-ex
+    javac_with_bootclasspath -d classes-tmp-for-ex `find src -name '*.java'`
+    src_tmp_for_ex="-cp classes-tmp-for-ex"
   fi
+  if [[ "${HAS_SRC_ART}" == "true" ]]; then
+    mkdir -p classes-tmp-for-ex
+    javac_with_bootclasspath -d classes-tmp-for-ex `find src-art -name '*.java'`
+    src_tmp_for_ex="-cp classes-tmp-for-ex"
+  fi
+  mkdir classes-ex
+  javac_with_bootclasspath -d classes-ex $src_tmp_for_ex `find src-ex -name '*.java'`
 fi
 
 if [[ -d classes-ex ]] && [ ${NEED_DEX} = "true" ]; then
diff --git a/test/run-test b/test/run-test
index be0a88d..8e012d1 100755
--- a/test/run-test
+++ b/test/run-test
@@ -46,7 +46,6 @@
 export DEX_LOCATION=/data/run-test/${test_dir}
 export NEED_DEX="true"
 export USE_D8="true"
-export USE_JACK="false"
 export USE_DESUGAR="true"
 export SMALI_ARGS=""
 
@@ -72,11 +71,6 @@
   export SMALI="smali"
 fi
 
-# If jack was not set by the environment variable, assume it is in the path.
-if [ -z "$JACK" ]; then
-  export JACK="jack"
-fi
-
 # ANDROID_BUILD_TOP is not set in a build environment.
 if [ -z "$ANDROID_BUILD_TOP" ]; then
     export ANDROID_BUILD_TOP=$oldwd
@@ -87,13 +81,6 @@
     export ANDROID_HOST_OUT=${OUT_DIR:-$ANDROID_BUILD_TOP/out}/host/linux-x86
 fi
 
-# If JACK_CLASSPATH is not set, assume it only contains core-libart.
-if [ -z "$JACK_CLASSPATH" ]; then
-  export JACK_CLASSPATH="${ANDROID_HOST_OUT}/../common/obj/JAVA_LIBRARIES/core-libart-hostdex_intermediates/classes.jack:${ANDROID_HOST_OUT}/../common/obj/JAVA_LIBRARIES/core-oj-hostdex_intermediates/classes.jack"
-fi
-
-export JACK="$JACK -g -cp $JACK_CLASSPATH"
-
 # Allow changing DESUGAR script to something else, or to disable it with DESUGAR=false.
 if [ -z "$DESUGAR" ]; then
   export DESUGAR="$ANDROID_BUILD_TOP/art/tools/desugar.sh"
@@ -197,7 +184,6 @@
         image_args=""
         prebuild_mode="no"
         NEED_DEX="false"
-        USE_JACK="false"
         run_args="${run_args} --jvm"
         shift
     elif [ "x$1" = "x-O" ]; then
@@ -367,12 +353,6 @@
     elif [ "x$1" = "x--build-only" ]; then
         build_only="yes"
         shift
-    elif [ "x$1" = "x--build-with-javac-dx" ]; then
-        USE_JACK="false"
-        shift
-    elif [ "x$1" = "x--build-with-jack" ]; then
-        USE_JACK="true"
-        shift
     elif [ "x$1" = "x--output-path" ]; then
         shift
         tmp_dir=$1
@@ -678,7 +658,7 @@
 # For building with javac and dx always use Java 7. The dx compiler
 # only support byte codes from Java 7 or earlier (class file major
 # version 51 or lower).
-if [ "$USE_JACK" != "true" ] && [ "$NEED_DEX" = "true" ]; then
+if [ "$NEED_DEX" = "true" ]; then
   export JAVAC="${JAVAC} -source 1.7 -target 1.7"
 fi
 
@@ -711,9 +691,6 @@
         echo "    --gdb                 Run under gdb; incompatible with some tests."
         echo "    --gdb-arg             Pass an option to gdb."
         echo "    --build-only          Build test files only (off by default)."
-        echo "    --build-with-d8       Build test files with javac and d8 (off by default)."
-        echo "    --build-with-javac-dx Build test files with javac and dx (off by default)."
-        echo "    --build-with-jack     Build test files with jack and jill (on by default)."
         echo "    --interpreter         Enable interpreter only mode (off by default)."
         echo "    --jit                 Enable jit (off by default)."
         echo "    --optimizing          Enable optimizing compiler (default)."
diff --git a/test/testrunner/env.py b/test/testrunner/env.py
index 0c1c308..66ed0d0 100644
--- a/test/testrunner/env.py
+++ b/test/testrunner/env.py
@@ -68,9 +68,6 @@
 
 ANDROID_BUILD_TOP = _get_android_build_top()
 
-# Compiling with jack? Possible values in (True, False, 'default')
-ANDROID_COMPILE_WITH_JACK = _get_build_var_boolean('ANDROID_COMPILE_WITH_JACK', 'default')
-
 # Directory used for temporary test files on the host.
 ART_HOST_TEST_DIR = tempfile.mkdtemp(prefix = 'test-art-')
 
@@ -134,8 +131,8 @@
 HOST_OUT_EXECUTABLES = os.path.join(ANDROID_BUILD_TOP,
                                     _get_build_var("HOST_OUT_EXECUTABLES"))
 
-# Set up default values for $JACK, $DX, $SMALI, etc to the $HOST_OUT_EXECUTABLES/$name path.
-for tool in ['jack', 'dx', 'smali', 'jasmin', 'd8']:
+# Set up default values for $DX, $SMALI, etc to the $HOST_OUT_EXECUTABLES/$name path.
+for tool in ['dx', 'smali', 'jasmin', 'd8']:
   os.environ.setdefault(tool.upper(), HOST_OUT_EXECUTABLES + '/' + tool)
 
 ANDROID_JAVA_TOOLCHAIN = os.path.join(ANDROID_BUILD_TOP,
diff --git a/test/testrunner/run_build_test_target.py b/test/testrunner/run_build_test_target.py
index e0ccc3e..3160079 100755
--- a/test/testrunner/run_build_test_target.py
+++ b/test/testrunner/run_build_test_target.py
@@ -68,8 +68,6 @@
   build_command += ' -j' + str(n_threads)
   build_command += ' -C ' + env.ANDROID_BUILD_TOP
   build_command += ' ' + target.get('make')
-  # Add 'dist' to avoid Jack issues b/36169180.
-  build_command += ' dist'
   sys.stdout.write(str(build_command) + '\n')
   sys.stdout.flush()
   if subprocess.call(build_command.split()):
diff --git a/test/testrunner/testrunner.py b/test/testrunner/testrunner.py
index 254ffc9..09b9b21 100755
--- a/test/testrunner/testrunner.py
+++ b/test/testrunner/testrunner.py
@@ -482,12 +482,6 @@
           options_test += ' --instruction-set-features ' + \
                           env.HOST_2ND_ARCH_PREFIX_DEX2OAT_HOST_INSTRUCTION_SET_FEATURES
 
-      # Use the default run-test behavior unless ANDROID_COMPILE_WITH_JACK is explicitly set.
-      if env.ANDROID_COMPILE_WITH_JACK == True:
-        options_test += ' --build-with-jack'
-      elif env.ANDROID_COMPILE_WITH_JACK == False:
-        options_test += ' --build-with-javac-dx'
-
       # TODO(http://36039166): This is a temporary solution to
       # fix build breakages.
       options_test = (' --output-path %s') % (
@@ -1010,8 +1004,6 @@
     build_command += ' -j'
     build_command += ' -C ' + env.ANDROID_BUILD_TOP
     build_command += ' ' + build_targets
-    # Add 'dist' to avoid Jack issues b/36169180.
-    build_command += ' dist'
     if subprocess.call(build_command.split()):
       sys.exit(1)
   if user_requested_tests: