8003890: corelibs test scripts should pass TESTVMOPTS
Reviewed-by: chegar, alanb
Contributed-by: Mark Sheppard <mark.sheppard@oracle.com>
diff --git a/test/java/io/File/GetXSpace.sh b/test/java/io/File/GetXSpace.sh
index 67fae42..a7e3a1c 100644
--- a/test/java/io/File/GetXSpace.sh
+++ b/test/java/io/File/GetXSpace.sh
@@ -53,7 +53,7 @@
 }
 
 runTest() {
-  ${TESTJAVA}/bin/java -cp ${TESTCLASSES} GetXSpace $* 
+  ${TESTJAVA}/bin/java ${TESTVMOPTS} -cp ${TESTCLASSES} GetXSpace $* 
   if [ $? -eq 0 ]
   then echo "Passed"
   else
diff --git a/test/java/io/File/MacPathTest.sh b/test/java/io/File/MacPathTest.sh
index ebba514..ecaa5e0 100644
--- a/test/java/io/File/MacPathTest.sh
+++ b/test/java/io/File/MacPathTest.sh
@@ -36,4 +36,4 @@
   TESTCLASSES=.
 fi
 
-export LC_ALL=en_US.UTF-8 ;${TESTJAVA}/bin/java -cp ${TESTCLASSES} MacPathTest
+export LC_ALL=en_US.UTF-8 ;${TESTJAVA}/bin/java ${TESTVMOPTS} -cp ${TESTCLASSES} MacPathTest
diff --git a/test/java/io/File/basic.sh b/test/java/io/File/basic.sh
index 74a0f71..69abf3d 100644
--- a/test/java/io/File/basic.sh
+++ b/test/java/io/File/basic.sh
@@ -44,7 +44,7 @@
     ;;
 esac
 mkdir x.Basic.dir
-if $TESTJAVA/bin/java $* -classpath "$TESTCLASSES" Basic; then
+if $TESTJAVA/bin/java ${TESTVMOPTS} $* -classpath "$TESTCLASSES" Basic; then
   [ -f x.Basic.rw ] && (echo "x.Basic.rw not deleted"; exit 1)
   ([ -d x.Basic.dir ] || [ \! -d x.Basic.dir2 ]) \
     && (echo "x.Basic.dir not renamed"; exit 1)
diff --git a/test/java/io/FileOutputStream/FileOpen.sh b/test/java/io/FileOutputStream/FileOpen.sh
index a29d3f1..d79c262 100644
--- a/test/java/io/FileOutputStream/FileOpen.sh
+++ b/test/java/io/FileOutputStream/FileOpen.sh
@@ -50,20 +50,20 @@
 	${TESTJAVA}/bin/javac -d . ${TESTSRC}\\FileOpenNeg.java
 
 	echo "Opening Writable Normal File.."
-	${TESTJAVA}/bin/java FileOpenPos ${hfile}
+	${TESTJAVA}/bin/java ${TESTVMOPTS} FileOpenPos ${hfile}
 
 	echo "Opening Writable Hidden File.."
 	${ATTRIB} +h ${hfile}
-	${TESTJAVA}/bin/java FileOpenNeg ${hfile}
+	${TESTJAVA}/bin/java ${TESTVMOPTS} FileOpenNeg ${hfile}
 
 	echo "Opening Read-Only Normal File.."
 	${ATTRIB} -h ${hfile}
 	${ATTRIB} +r ${hfile}
-	${TESTJAVA}/bin/java FileOpenNeg ${hfile}
+	${TESTJAVA}/bin/java ${TESTVMOPTS} FileOpenNeg ${hfile}
 
 	echo "Opening Read-Only Hidden File.." 
 	${ATTRIB} +h ${hfile}
-	${TESTJAVA}/bin/java FileOpenNeg ${hfile}
+	${TESTJAVA}/bin/java ${TESTVMOPTS} FileOpenNeg ${hfile}
 
         rm -f ${hfile}
 	exit
diff --git a/test/java/io/Serializable/class/run.sh b/test/java/io/Serializable/class/run.sh
index 470efe1..26ad083 100644
--- a/test/java/io/Serializable/class/run.sh
+++ b/test/java/io/Serializable/class/run.sh
@@ -45,85 +45,85 @@
 rm -f A.java     
 cp ${TESTSRC}/NonSerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -s A
-${TESTJAVA}/bin/java Test -d
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -d
 echo
 
 echo Write NonSerial1, Read NonSerial2
 rm -f A.java     
 cp ${TESTSRC}/NonSerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
 rm -f A.java     
 cp ${TESTSRC}/NonSerialA_2.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -d
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -d
 echo
 
 echo Write NonSerial1, Read Serial1
 rm -f A.java     
 cp ${TESTSRC}/NonSerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java 
-${TESTJAVA}/bin/java Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
 rm -f A.java     
 cp ${TESTSRC}/SerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -d
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -d
 echo
 
 echo Write Serial1, Read NonSerial1
 rm -f A.java     
 cp ${TESTSRC}/SerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java 
-${TESTJAVA}/bin/java Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
 rm -f A.java     
 cp ${TESTSRC}/NonSerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -doe
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -doe
 echo
 
 echo Write Serial1, Read Serial2
 rm -f A.java     
 cp ${TESTSRC}/SerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java 
-${TESTJAVA}/bin/java Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
 rm -f A.java     
 cp ${TESTSRC}/SerialA_2.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -d
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -d
 echo
 
 echo Write Serial2, Read Serial1
 rm -f A.java     
 cp ${TESTSRC}/SerialA_2.java A.java
 ${TESTJAVA}/bin/javac A.java 
-${TESTJAVA}/bin/java Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
 rm -f A.java     
 cp ${TESTSRC}/SerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -d
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -d
 echo
 
 echo Write Serial1, Read Serial3
 rm -f A.java     
 cp ${TESTSRC}/SerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java 
-${TESTJAVA}/bin/java Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
 rm -f A.java     
 cp ${TESTSRC}/SerialA_3.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -de
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -de
 echo
 
 echo Write Serial3, Read Serial1
 rm -f A.java     
 cp ${TESTSRC}/SerialA_3.java A.java
 ${TESTJAVA}/bin/javac A.java 
-${TESTJAVA}/bin/java Test -s A
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -s A
 rm -f A.java     
 cp ${TESTSRC}/SerialA_1.java A.java
 ${TESTJAVA}/bin/javac A.java
-${TESTJAVA}/bin/java Test -de
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test -de
 echo
 
 echo Passed
diff --git a/test/java/io/Serializable/evolution/AddedExternField/run.sh b/test/java/io/Serializable/evolution/AddedExternField/run.sh
index bc5edb0..6bb2003 100644
--- a/test/java/io/Serializable/evolution/AddedExternField/run.sh
+++ b/test/java/io/Serializable/evolution/AddedExternField/run.sh
@@ -27,7 +27,7 @@
 
 rm *.class tmp.ser
 javac WriteAddedField.java
-java WriteAddedField
+java ${TESTVMOPTS} WriteAddedField
 rm *.class
 javac ReadAddedField.java
-java ReadAddedField
+java ${TESTVMOPTS} ReadAddedField
diff --git a/test/java/io/Serializable/evolution/RenamePackage/run.sh b/test/java/io/Serializable/evolution/RenamePackage/run.sh
index 13c4387..afa751a 100644
--- a/test/java/io/Serializable/evolution/RenamePackage/run.sh
+++ b/test/java/io/Serializable/evolution/RenamePackage/run.sh
@@ -86,13 +86,13 @@
 
 # Run Case 1. Map test.SerialDriver within stream to install.SerialDriver.
 CLASSPATH="${TESTCLASSES}/oclasses${PS}${TESTCLASSES}/share"; export CLASSPATH;
-${JAVA} test.SerialDriver -s
+${JAVA} ${TESTVMOPTS} test.SerialDriver -s
 CLASSPATH="${TESTCLASSES}/nclasses${PS}${TESTCLASSES}/share"; export CLASSPATH;
-${JAVA} install.SerialDriver -d
+${JAVA} ${TESTVMOPTS} install.SerialDriver -d
 rm stream.ser
 
 # Run Case 2. Map install.SerialDriver within stream to test.SerialDriver.
 CLASSPATH="${TESTCLASSES}/nclasses${PS}${TESTCLASSES}/share"; export CLASSPATH;
-${JAVA} install.SerialDriver -s
+${JAVA} ${TESTVMOPTS} install.SerialDriver -s
 CLASSPATH="${TESTCLASSES}/oclasses${PS}${TESTCLASSES}/share"; export CLASSPATH;
-${JAVA} test.SerialDriver -d
+${JAVA} ${TESTVMOPTS} test.SerialDriver -d
diff --git a/test/java/io/Serializable/maskSyntheticModifier/run.sh b/test/java/io/Serializable/maskSyntheticModifier/run.sh
index 80ebb76..075e0df 100644
--- a/test/java/io/Serializable/maskSyntheticModifier/run.sh
+++ b/test/java/io/Serializable/maskSyntheticModifier/run.sh
@@ -41,5 +41,5 @@
 set -ex
 cp ${TESTSRC}/Foo.class .
 ${TESTJAVA}/bin/javac -d . ${TESTSRC}/Test.java
-${TESTJAVA}/bin/java Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test
 rm -f *.class
diff --git a/test/java/io/Serializable/packageAccess/run.sh b/test/java/io/Serializable/packageAccess/run.sh
index ee43141..3a7f0c1 100644
--- a/test/java/io/Serializable/packageAccess/run.sh
+++ b/test/java/io/Serializable/packageAccess/run.sh
@@ -45,5 +45,5 @@
 ${TESTJAVA}/bin/jar cf foo.jar B.class D.class
 rm -f B.class D.class
 
-${TESTJAVA}/bin/java Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test
 rm -f *.class *.jar
diff --git a/test/java/io/Serializable/resolveClass/consTest/run.sh b/test/java/io/Serializable/resolveClass/consTest/run.sh
index da7cfe2..62cc8ff 100644
--- a/test/java/io/Serializable/resolveClass/consTest/run.sh
+++ b/test/java/io/Serializable/resolveClass/consTest/run.sh
@@ -44,5 +44,5 @@
 ${TESTJAVA}/bin/jar cf boot.jar *.class
 rm -f *.class
 ${TESTJAVA}/bin/javac -classpath boot.jar -d . ${TESTSRC}/Test.java
-${TESTJAVA}/bin/java -Xbootclasspath/a:boot.jar Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} -Xbootclasspath/a:boot.jar Test
 rm -f *.class *.jar
diff --git a/test/java/io/Serializable/resolveClass/deserializeButton/run.sh b/test/java/io/Serializable/resolveClass/deserializeButton/run.sh
index 251ef60..48208ae 100644
--- a/test/java/io/Serializable/resolveClass/deserializeButton/run.sh
+++ b/test/java/io/Serializable/resolveClass/deserializeButton/run.sh
@@ -46,5 +46,5 @@
 ${TESTJAVA}/bin/jar cf cb.jar *.class
 rm -f *.class
 ${TESTJAVA}/bin/javac -d . ${TESTSRC}/Test.java
-${TESTJAVA}/bin/java Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test
 rm -f *.class *.jar
diff --git a/test/java/io/Serializable/subclass/run.sh b/test/java/io/Serializable/subclass/run.sh
index 9864345..d7f1d89 100644
--- a/test/java/io/Serializable/subclass/run.sh
+++ b/test/java/io/Serializable/subclass/run.sh
@@ -25,6 +25,6 @@
 # @bug 4100915
 mkdir classes
 javac -d classes *.java
-java -classpath classes -Djava.policy=Allow.policy Test 
+java ${TESTVMOPTS} -classpath classes -Djava.policy=Allow.policy Test 
 # ENABLE next line when new method for invoking a main with a SecureClassLoader is known
 #java -classpath classes -Djava.policy=NotAllow.policy Test -expectSecurityException
diff --git a/test/java/io/Serializable/superclassDataLoss/run.sh b/test/java/io/Serializable/superclassDataLoss/run.sh
index c8d1284..4447374 100644
--- a/test/java/io/Serializable/superclassDataLoss/run.sh
+++ b/test/java/io/Serializable/superclassDataLoss/run.sh
@@ -46,5 +46,5 @@
 rm -f A.class B.class
 
 ${TESTJAVA}/bin/javac -d . ${TESTSRC}/Test.java
-${TESTJAVA}/bin/java Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test
 rm -f *.class *.jar
diff --git a/test/java/io/Serializable/unnamedPackageSwitch/run.sh b/test/java/io/Serializable/unnamedPackageSwitch/run.sh
index 384495d..f31e5c1 100644
--- a/test/java/io/Serializable/unnamedPackageSwitch/run.sh
+++ b/test/java/io/Serializable/unnamedPackageSwitch/run.sh
@@ -41,4 +41,4 @@
 set -ex
 
 ${TESTJAVA}/bin/javac -d . ${TESTSRC}/A.java ${TESTSRC}/Test.java
-${TESTJAVA}/bin/java Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test
diff --git a/test/java/lang/Class/forName/NonJavaNames.sh b/test/java/lang/Class/forName/NonJavaNames.sh
index b12f045..1465a3b 100644
--- a/test/java/lang/Class/forName/NonJavaNames.sh
+++ b/test/java/lang/Class/forName/NonJavaNames.sh
@@ -94,7 +94,7 @@
 COPYSEMICOLON="cp ${TESTSRC}/classes/semicolon.class ${TESTCLASSES}/;.class"
 $COPYSEMICOLON
 
-JAVA="$TESTJAVA/bin/java -classpath ${TESTSRC}/classes${SEP}${TESTCLASSES}"
+JAVA="$TESTJAVA/bin/java ${TESTVMOPTS} -classpath ${TESTSRC}/classes${SEP}${TESTCLASSES}"
 
 $JAVA NonJavaNames
 RESULT=$?
diff --git a/test/java/lang/ClassLoader/Assert.sh b/test/java/lang/ClassLoader/Assert.sh
index 8e6909f..9bc5e01 100644
--- a/test/java/lang/ClassLoader/Assert.sh
+++ b/test/java/lang/ClassLoader/Assert.sh
@@ -49,7 +49,7 @@
 
 ${TESTJAVA}/bin/javac Assert.java 
 
-${TESTJAVA}/bin/java Assert
+${TESTJAVA}/bin/java ${TESTVMOPTS} Assert
 
 result=$?
 if [ $result -eq 0 ]
diff --git a/test/java/lang/ClassLoader/deadlock/TestCrossDelegate.sh b/test/java/lang/ClassLoader/deadlock/TestCrossDelegate.sh
index 17940ea..930ba2f 100644
--- a/test/java/lang/ClassLoader/deadlock/TestCrossDelegate.sh
+++ b/test/java/lang/ClassLoader/deadlock/TestCrossDelegate.sh
@@ -98,6 +98,7 @@
 
 # run test
 ${TESTJAVA}${FS}bin${FS}java \
+        ${TESTVMOPTS} \
         -verbose:class -XX:+TraceClassLoading -cp . \
         -Dtest.classes=${TESTCLASSES} \
         Starter cross
diff --git a/test/java/lang/ClassLoader/deadlock/TestOneWayDelegate.sh b/test/java/lang/ClassLoader/deadlock/TestOneWayDelegate.sh
index 5c2f017..311a276 100644
--- a/test/java/lang/ClassLoader/deadlock/TestOneWayDelegate.sh
+++ b/test/java/lang/ClassLoader/deadlock/TestOneWayDelegate.sh
@@ -93,6 +93,7 @@
 
 # run test
 ${TESTJAVA}${FS}bin${FS}java \
+        ${TESTVMOPTS} \
         -verbose:class -XX:+TraceClassLoading -cp . \
         -Dtest.classes=${TESTCLASSES} \
         Starter one-way
diff --git a/test/java/lang/ClassLoader/getdotresource.sh b/test/java/lang/ClassLoader/getdotresource.sh
index 7cf63c6..a6a0723 100644
--- a/test/java/lang/ClassLoader/getdotresource.sh
+++ b/test/java/lang/ClassLoader/getdotresource.sh
@@ -33,5 +33,5 @@
 if [ x"$TESTSRC" = x ]; then TESTSRC=.; fi
 
 # now start the test
-${TESTJAVA}/bin/java -Djava.ext.dirs=$TESTSRC -cp $TESTCLASSES GetDotResource
+${TESTJAVA}/bin/java ${TESTVMOPTS} -Djava.ext.dirs=$TESTSRC -cp $TESTCLASSES GetDotResource
 
diff --git a/test/java/lang/Runtime/exec/setcwd.sh b/test/java/lang/Runtime/exec/setcwd.sh
index 14cd010..7fe1559 100644
--- a/test/java/lang/Runtime/exec/setcwd.sh
+++ b/test/java/lang/Runtime/exec/setcwd.sh
@@ -37,5 +37,5 @@
 cp ${TESTCLASSES}/SetCwd.class foo
 
 # now start the test
-${TESTJAVA}/bin/java SetCwd
+${TESTJAVA}/bin/java ${TESTVMOPTS} SetCwd
 
diff --git a/test/java/lang/StringCoding/CheckEncodings.sh b/test/java/lang/StringCoding/CheckEncodings.sh
index 6b5fc83..edc5f9a 100644
--- a/test/java/lang/StringCoding/CheckEncodings.sh
+++ b/test/java/lang/StringCoding/CheckEncodings.sh
@@ -49,7 +49,7 @@
   echo "Testing:" ${1}
   set LC_ALL="${1}"; export LC_ALL
   locale
-  ${TESTJAVA}/bin/java -version 2>&1
+  ${TESTJAVA}/bin/java ${TESTVMOPTS} -version 2>&1
   expectPass $?
 }
 
diff --git a/test/java/lang/System/finalization/FinExit.sh b/test/java/lang/System/finalization/FinExit.sh
index 53bc675..e5eec43 100644
--- a/test/java/lang/System/finalization/FinExit.sh
+++ b/test/java/lang/System/finalization/FinExit.sh
@@ -26,7 +26,7 @@
 #
 
 # We only want the first character, Windows might add CRLF
-x=`$TESTJAVA/bin/java -cp "$TESTCLASSES" FinExit | cut -c1`
+x=`$TESTJAVA/bin/java ${TESTVMOPTS} -cp "$TESTCLASSES" FinExit | cut -c1`
 echo $x
 if [ "x$x" != "x1" ]; then
   echo On-exit finalizer invoked twice
diff --git a/test/java/lang/annotation/loaderLeak/LoaderLeak.sh b/test/java/lang/annotation/loaderLeak/LoaderLeak.sh
index c7315f5..bc72b93 100644
--- a/test/java/lang/annotation/loaderLeak/LoaderLeak.sh
+++ b/test/java/lang/annotation/loaderLeak/LoaderLeak.sh
@@ -69,7 +69,7 @@
 cp ${TESTSRC}${FS}*.java .
 ${TESTJAVA}${FS}bin${FS}javac -d classes A.java B.java C.java
 ${TESTJAVA}${FS}bin${FS}javac Main.java
-${TESTJAVA}${FS}bin${FS}java Main
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} Main
 result=$?
 if [ $result -eq 0 ]
 then
@@ -78,7 +78,7 @@
   echo "Failed 1 of 2"
   exit $result
 fi
-${TESTJAVA}${FS}bin${FS}java Main foo
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} Main foo
 result=$?
 if [ $result -eq 0 ]
 then
diff --git a/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh b/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh
index 1f8d823..571a3d9 100644
--- a/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh
+++ b/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh
@@ -52,7 +52,7 @@
 runOne()
 {
    echo "$TESTJAVA/bin/java -classpath $TESTCLASSES $@"
-   $TESTJAVA/bin/java -classpath $TESTCLASSES $@
+   $TESTJAVA/bin/java ${TESTVMOPTS} -classpath $TESTCLASSES $@
 }
 
 # Retry 5 times to be more resilent to system load fluctation.
diff --git a/test/java/net/Authenticator/B4933582.sh b/test/java/net/Authenticator/B4933582.sh
index 6618836..1dfed10 100644
--- a/test/java/net/Authenticator/B4933582.sh
+++ b/test/java/net/Authenticator/B4933582.sh
@@ -45,5 +45,5 @@
 esac
 ${TESTJAVA}${FS}bin${FS}javac -d . -classpath "${TESTSRC}${FS}..${FS}..${FS}..${FS}sun${FS}net${FS}www${FS}httptest" ${TESTSRC}${FS}B4933582.java
 rm -f cache.ser auth.save
-${TESTJAVA}${FS}bin${FS}java -classpath "${TESTSRC}${FS}..${FS}..${FS}..${FS}sun${FS}net${FS}www${FS}httptest${PS}." B4933582 first
-${TESTJAVA}${FS}bin${FS}java -classpath "${TESTSRC}${FS}..${FS}..${FS}..${FS}sun${FS}net${FS}www${FS}httptest${PS}." B4933582 second
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath "${TESTSRC}${FS}..${FS}..${FS}..${FS}sun${FS}net${FS}www${FS}httptest${PS}." B4933582 first
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath "${TESTSRC}${FS}..${FS}..${FS}..${FS}sun${FS}net${FS}www${FS}httptest${PS}." B4933582 second
diff --git a/test/java/net/DatagramSocket/SetDatagramSocketImplFactory/ADatagramSocket.sh b/test/java/net/DatagramSocket/SetDatagramSocketImplFactory/ADatagramSocket.sh
index 372c04d..271b21d 100644
--- a/test/java/net/DatagramSocket/SetDatagramSocketImplFactory/ADatagramSocket.sh
+++ b/test/java/net/DatagramSocket/SetDatagramSocketImplFactory/ADatagramSocket.sh
@@ -49,4 +49,4 @@
     ;;
 esac
 
-${TESTJAVA}${FILESEP}bin${FILESEP}java -Xbootclasspath/p:${TESTCLASSES} ADatagramSocket true
+${TESTJAVA}${FILESEP}bin${FILESEP}java ${TESTVMOPTS} -Xbootclasspath/p:${TESTCLASSES} ADatagramSocket true
diff --git a/test/java/net/InetAddress/ptr/lookup.sh b/test/java/net/InetAddress/ptr/lookup.sh
index 2fd0831..3ff73a3 100644
--- a/test/java/net/InetAddress/ptr/lookup.sh
+++ b/test/java/net/InetAddress/ptr/lookup.sh
@@ -53,13 +53,13 @@
 
 # IPv4 reverse lookup
 echo ''
-OUT1=`$JAVA -Djava.net.preferIPv4Stack=true Lookup -q=PTR $ADDR`
+OUT1=`$JAVA ${TESTVMOPTS} -Djava.net.preferIPv4Stack=true Lookup -q=PTR $ADDR`
 echo "(IPv4) $ADDR --> $OUT1"
 
 
 # reverse lookup (default)
 echo ''
-OUT2=`$JAVA Lookup -q=PTR $ADDR`
+OUT2=`$JAVA ${TESTVMOPTS} Lookup -q=PTR $ADDR`
 echo "(default) $ADDR --> $OUT2"
 
 
diff --git a/test/java/net/ServerSocket/AcceptCauseFileDescriptorLeak.sh b/test/java/net/ServerSocket/AcceptCauseFileDescriptorLeak.sh
index 5b03948..df85f49 100644
--- a/test/java/net/ServerSocket/AcceptCauseFileDescriptorLeak.sh
+++ b/test/java/net/ServerSocket/AcceptCauseFileDescriptorLeak.sh
@@ -45,4 +45,4 @@
     ulimit -n 1024
 fi
 
-${TESTJAVA}/bin/java AcceptCauseFileDescriptorLeak
+${TESTJAVA}/bin/java ${TESTVMOPTS} AcceptCauseFileDescriptorLeak
diff --git a/test/java/net/Socket/OldSocketImpl.sh b/test/java/net/Socket/OldSocketImpl.sh
index 5f429d1..bbe055f 100644
--- a/test/java/net/Socket/OldSocketImpl.sh
+++ b/test/java/net/Socket/OldSocketImpl.sh
@@ -50,7 +50,7 @@
 # with 1.3 and in OldStyleImpl.jar
 
 # run
-${TESTJAVA}${FS}bin${FS}java -cp ${TESTSRC}${FS}OldSocketImpl.jar OldSocketImpl
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -cp ${TESTSRC}${FS}OldSocketImpl.jar OldSocketImpl
 result=$?
 if [ "$result" -ne "0" ]; then
     exit 1
diff --git a/test/java/net/URL/B5086147.sh b/test/java/net/URL/B5086147.sh
index e92a8ee..e5830b9 100644
--- a/test/java/net/URL/B5086147.sh
+++ b/test/java/net/URL/B5086147.sh
@@ -47,7 +47,7 @@
 failures=0
 
 echo ''
-${TESTJAVA}${FS}bin${FS}java B5086147
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} B5086147
 if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 
 if [ "$failures" != "0" ]; then
diff --git a/test/java/net/URL/runconstructor.sh b/test/java/net/URL/runconstructor.sh
index 340f1e9..5a8f090 100644
--- a/test/java/net/URL/runconstructor.sh
+++ b/test/java/net/URL/runconstructor.sh
@@ -50,7 +50,7 @@
 
 go() {
     echo ''
-    ${TESTJAVA}${FS}bin${FS}java Constructor $1
+    ${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} Constructor $1
     if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 }
 
diff --git a/test/java/net/URLClassLoader/B5077773.sh b/test/java/net/URLClassLoader/B5077773.sh
index b489769..725829e 100644
--- a/test/java/net/URLClassLoader/B5077773.sh
+++ b/test/java/net/URLClassLoader/B5077773.sh
@@ -61,5 +61,5 @@
 ${TESTJAVA}${FS}bin${FS}javac -d . ${TESTSRC}${FS}B5077773.java
 
 WD=`pwd`
-${TESTJAVA}${FS}bin${FS}java B5077773
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} B5077773
 
diff --git a/test/java/net/URLClassLoader/getresourceasstream/test.sh b/test/java/net/URLClassLoader/getresourceasstream/test.sh
index 11aa9bf..1654f31 100644
--- a/test/java/net/URLClassLoader/getresourceasstream/test.sh
+++ b/test/java/net/URLClassLoader/getresourceasstream/test.sh
@@ -46,11 +46,11 @@
 ${TESTJAVA}/bin/javac -d . ${TESTSRC}/Test.java
 cp ${TESTSRC}/test.jar .
 
-${TESTJAVA}/bin/java Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} Test
 checkExit 
 
 # try with security manager
 
-${TESTJAVA}/bin/java -Djava.security.policy=file:./policy -Djava.security.manager Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} -Djava.security.policy=file:./policy -Djava.security.manager Test
 checkExit 
 exit 0
diff --git a/test/java/net/URLClassLoader/sealing/checksealed.sh b/test/java/net/URLClassLoader/sealing/checksealed.sh
index c2a048a..b675eb2 100644
--- a/test/java/net/URLClassLoader/sealing/checksealed.sh
+++ b/test/java/net/URLClassLoader/sealing/checksealed.sh
@@ -56,7 +56,7 @@
 CLASSPATH=".${PS}${TESTSRC}${FS}a${PS}${TESTSRC}${FS}b.jar"
 
 ${TESTJAVA}${FS}bin${FS}javac -classpath "${CLASSPATH}" -d . ${TESTSRC}${FS}CheckSealed.java
-${TESTJAVA}${FS}bin${FS}java -cp "${CLASSPATH}" CheckSealed 1
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -cp "${CLASSPATH}" CheckSealed 1
 if [ $? != 0 ]; then exit 1; fi
-${TESTJAVA}${FS}bin${FS}java -cp "${CLASSPATH}" CheckSealed 2
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -cp "${CLASSPATH}" CheckSealed 2
 if [ $? != 0 ]; then exit 1; fi
diff --git a/test/java/net/URLConnection/6212146/test.sh b/test/java/net/URLConnection/6212146/test.sh
index 56a628a..22c6473 100644
--- a/test/java/net/URLConnection/6212146/test.sh
+++ b/test/java/net/URLConnection/6212146/test.sh
@@ -67,7 +67,7 @@
 
 WD=`pwd`
 ulimit -H -n 300
-${TESTJAVA}${FS}bin${FS}java Test ${WD}/jars/ test.jar
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} Test ${WD}/jars/ test.jar
 result=$?
 rm -rf jars
 exit $?
diff --git a/test/java/net/URLConnection/UNCTest.sh b/test/java/net/URLConnection/UNCTest.sh
index 502403b..aa9f184 100644
--- a/test/java/net/URLConnection/UNCTest.sh
+++ b/test/java/net/URLConnection/UNCTest.sh
@@ -36,7 +36,7 @@
 case "$OS" in
     Windows_95 | Windows_98 | Windows_NT )
 	${TESTJAVA}/bin/javac -d . ${TESTSRC}\\UNCTest.java
-	${TESTJAVA}/bin/java UNCTest ${UNC}
+	${TESTJAVA}/bin/java ${TESTVMOPTS} UNCTest ${UNC}
 	exit
         ;;
 
diff --git a/test/java/nio/Buffer/LimitDirectMemory.sh b/test/java/nio/Buffer/LimitDirectMemory.sh
index 38e8c0c..027d627 100644
--- a/test/java/nio/Buffer/LimitDirectMemory.sh
+++ b/test/java/nio/Buffer/LimitDirectMemory.sh
@@ -34,7 +34,7 @@
 
 runTest() {
   echo "Testing: $*"
-  ${TESTJAVA}/bin/java $*
+  ${TESTJAVA}/bin/java ${TESTVMOPTS} $*
   if [ $? -eq 0 ]
   then echo "--- passed as expected"
   else
@@ -43,10 +43,11 @@
   fi
 }
 
+
 launchFail() {
   echo "Testing: -XX:MaxDirectMemorySize=$* -cp ${TESTCLASSES} \
      LimitDirectMemory true DEFAULT DEFAULT+1M"
-  ${TESTJAVA}/bin/java -XX:MaxDirectMemorySize=$* -cp ${TESTCLASSES} \
+  ${TESTJAVA}/bin/java ${TESTVMOPTS} -XX:MaxDirectMemorySize=$* -cp ${TESTCLASSES} \
      LimitDirectMemory true DEFAULT DEFAULT+1M > ${TMP1} 2>&1
   cat ${TMP1}
   cat ${TMP1} | grep -s "Unrecognized VM option: \'MaxDirectMemorySize="
diff --git a/test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh b/test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh
index 6849315..8136634 100644
--- a/test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh
+++ b/test/java/nio/channels/AsynchronousChannelGroup/run_any_task.sh
@@ -46,7 +46,7 @@
     -C "${TESTCLASSES}" Attack.class
 
 echo "Running test ..."
-$JAVA -XX:-UseVMInterruptibleIO \
-    -Xbootclasspath/a:"${TESTCLASSES}/Privileged.jar" \
-    -classpath "${TESTCLASSES}" \
-    AsExecutor
+$JAVA ${TESTVMOPTS} \
+      -Xbootclasspath/a:"${TESTCLASSES}/Privileged.jar" \
+      -classpath "${TESTCLASSES}" \
+      AsExecutor
diff --git a/test/java/nio/channels/spi/AsynchronousChannelProvider/custom_provider.sh b/test/java/nio/channels/spi/AsynchronousChannelProvider/custom_provider.sh
index c334192..bf82465 100644
--- a/test/java/nio/channels/spi/AsynchronousChannelProvider/custom_provider.sh
+++ b/test/java/nio/channels/spi/AsynchronousChannelProvider/custom_provider.sh
@@ -51,7 +51,7 @@
 
 go() {
     echo ''
-    $JAVA $1 $2 $3 2>&1
+    $JAVA ${TESTVMOPTS} $1 $2 $3 2>&1
     if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 }
 
diff --git a/test/java/nio/charset/Charset/default.sh b/test/java/nio/charset/Charset/default.sh
index 5a91ea1..c93aa71 100644
--- a/test/java/nio/charset/Charset/default.sh
+++ b/test/java/nio/charset/Charset/default.sh
@@ -64,7 +64,7 @@
   ecs="$1"; shift
 
   echo -n "$L: "
-  cs="`LC_ALL=$L $JAVA -cp $TESTCLASSES Default`"
+  cs="`LC_ALL=$L $JAVA ${TESTVMOPTS} -cp $TESTCLASSES Default`"
   if [ $? != 0 ]; then
     exit 1
   elif [ "`tolower $cs`" != "`tolower $ecs`" ]; then
diff --git a/test/java/nio/charset/coders/CheckSJISMappingProp.sh b/test/java/nio/charset/coders/CheckSJISMappingProp.sh
index 49caa0d..fd76d5a 100644
--- a/test/java/nio/charset/coders/CheckSJISMappingProp.sh
+++ b/test/java/nio/charset/coders/CheckSJISMappingProp.sh
@@ -51,7 +51,7 @@
 }
 
 
-JAVA="${TESTJAVA}/bin/java -cp ${TESTCLASSES}"
+JAVA="${TESTJAVA}/bin/java ${TESTVMOPTS} -cp ${TESTCLASSES}"
 runTest() {
   echo "Testing:" ${1}
   LC_ALL="$1" ; export LC_ALL
diff --git a/test/java/nio/charset/spi/basic.sh b/test/java/nio/charset/spi/basic.sh
index c1bdd45..e4f89c5 100644
--- a/test/java/nio/charset/spi/basic.sh
+++ b/test/java/nio/charset/spi/basic.sh
@@ -116,7 +116,7 @@
 		     av="$av -Djava.security.manager
 		         -Djava.security.policy==$TESTSRC/charsetProvider.sp";;
     esac
-    if (set -x; $JAVA $av Test $css) 2>&1; then
+    if (set -x; $JAVA ${TESTVMOPTS} $av Test $css) 2>&1; then
       continue;
     else
       failures=`expr $failures + 1`
diff --git a/test/java/nio/file/Files/delete_on_close.sh b/test/java/nio/file/Files/delete_on_close.sh
index 7ffa009..f6a5868 100644
--- a/test/java/nio/file/Files/delete_on_close.sh
+++ b/test/java/nio/file/Files/delete_on_close.sh
@@ -51,7 +51,7 @@
 
 TMPFILE="$$.tmp"
 touch $TMPFILE
-$JAVA DeleteOnClose $TMPFILE 2>&1
+$JAVA ${TESTVMOPTS} DeleteOnClose $TMPFILE 2>&1
 if [ $? != 0 ]; then exit 1; fi
 if [ -f $TMPFILE ]; then
     echo "$TMPFILE was not deleted"
diff --git a/test/java/nio/file/Files/walkFileTree/walk_file_tree.sh b/test/java/nio/file/Files/walkFileTree/walk_file_tree.sh
index dee0dd0..6c9d7dc 100644
--- a/test/java/nio/file/Files/walkFileTree/walk_file_tree.sh
+++ b/test/java/nio/file/Files/walkFileTree/walk_file_tree.sh
@@ -56,7 +56,7 @@
 failures=0
 
 # print the file tree and compare output with find(1)
-$JAVA PrintFileTree "$ROOT" > out1
+$JAVA ${TESTVMOPTS} PrintFileTree "$ROOT" > out1
 find "$ROOT" > out2
 diff out1 out2
 if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
@@ -66,26 +66,26 @@
 # not. For that reason we run PrintFileTree with the -printCycles
 # option when the output without this option differs to find(1).
 find "$ROOT" -follow > out1
-$JAVA PrintFileTree -follow "$ROOT" > out2
+$JAVA ${TESTVMOPTS} PrintFileTree -follow "$ROOT" > out2
 diff out1 out2
 if [ $? != 0 ];
   then 
     # re-run printing cycles to stdout
-    $JAVA PrintFileTree -follow -printCycles "$ROOT" > out2
+    $JAVA ${TESTVMOPTS} PrintFileTree -follow -printCycles "$ROOT" > out2
     diff out1 out2
     if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
   fi
 
 # test SKIP_SIBLINGS
-$JAVA SkipSiblings "$ROOT"
+$JAVA ${TESTVMOPTS} SkipSiblings "$ROOT"
 if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 
 # test TERMINATE
-$JAVA TerminateWalk "$ROOT"
+$JAVA ${TESTVMOPTS} TerminateWalk "$ROOT"
 if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 
 # test maxDepth
-$JAVA MaxDepth "$ROOT"
+$JAVA ${TESTVMOPTS} MaxDepth "$ROOT"
 if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 
 # clean-up
diff --git a/test/java/nio/file/Path/MacPathTest.sh b/test/java/nio/file/Path/MacPathTest.sh
index e81c62a..e5d410b 100644
--- a/test/java/nio/file/Path/MacPathTest.sh
+++ b/test/java/nio/file/Path/MacPathTest.sh
@@ -36,4 +36,4 @@
   TESTCLASSES=.
 fi
 
-export LC_ALL=en_US.UTF-8; ${TESTJAVA}/bin/java -cp ${TESTCLASSES} MacPathTest
+export LC_ALL=en_US.UTF-8; ${TESTJAVA}/bin/java ${TESTVMOPTS} -cp ${TESTCLASSES} MacPathTest
diff --git a/test/java/rmi/activation/Activatable/extLoadedImpl/ext.sh b/test/java/rmi/activation/Activatable/extLoadedImpl/ext.sh
index 9232496..4f758b4 100644
--- a/test/java/rmi/activation/Activatable/extLoadedImpl/ext.sh
+++ b/test/java/rmi/activation/Activatable/extLoadedImpl/ext.sh
@@ -28,7 +28,7 @@
 # set to the impl's class loader) when the impl is activated.
 # @library ../../../testlibrary
 # @build TestLibrary RMID ActivationLibrary
-#     ExtLoadedImplTest ExtLoadedImpl ExtLoadedImpl_Stub CheckLoader
+# @build ExtLoadedImplTest ExtLoadedImpl ExtLoadedImpl_Stub CheckLoader
 # @run shell ext.sh
 
 OS=`uname -s`
@@ -51,5 +51,5 @@
 mkdir -p ext
 $TESTJAVA/bin/jar cf ext/ext.jar -C $TESTCLASSES ExtLoadedImpl.class -C $TESTCLASSES ExtLoadedImpl_Stub.class -C $TESTCLASSES CheckLoader.class
 
-$TESTJAVA/bin/java -cp classes -Dtest.src=$TESTSRC -Dtest.classes=$TESTCLASSES -Djava.security.policy=$TESTSRC/security.policy -Djava.ext.dirs=ext ExtLoadedImplTest
+$TESTJAVA/bin/java ${TESTVMOPTS} -cp classes -Dtest.src=$TESTSRC -Dtest.classes=$TESTCLASSES -Djava.security.policy=$TESTSRC/security.policy -Djava.ext.dirs=ext ExtLoadedImplTest
 
diff --git a/test/java/rmi/registry/readTest/readTest.sh b/test/java/rmi/registry/readTest/readTest.sh
index 47221ae..5fda0a5 100644
--- a/test/java/rmi/registry/readTest/readTest.sh
+++ b/test/java/rmi/registry/readTest/readTest.sh
@@ -25,7 +25,7 @@
 # @bug 7102369 7094468 7100592
 # @library ../../testlibrary
 # @build TestLibrary
-# @summary remove java.rmi.server.codebase property parsing from RegistryImpl
+# @summary remove java.rmi.server.codebase property parsing from registyimpl
 # @run shell readTest.sh
 
 OS=`uname -s`
@@ -76,7 +76,7 @@
     ;;  
 esac
 # trailing / after code base is important for rmi codebase property.
-${TESTJAVA}${FS}bin${FS}java -cp $TEST_CLASSPATH -Djava.rmi.server.codebase=${FILEURL}$CODEBASE/ readTest > OUT.TXT 2>&1 &
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -cp $TEST_CLASSPATH -Djava.rmi.server.codebase=${FILEURL}$CODEBASE/ readTest > OUT.TXT 2>&1 &
 TEST_PID=$!
 #bulk of testcase - let it run for a while
 sleep 5
diff --git a/test/java/rmi/reliability/benchmark/runSerialBench.sh b/test/java/rmi/reliability/benchmark/runSerialBench.sh
index 28fa90a..82a2837 100644
--- a/test/java/rmi/reliability/benchmark/runSerialBench.sh
+++ b/test/java/rmi/reliability/benchmark/runSerialBench.sh
@@ -27,22 +27,22 @@
 #          used to run the test under JTREG.
 #
 # @build bench.BenchInfo bench.HtmlReporter bench.Util bench.Benchmark 
-#     bench.Reporter bench.XmlReporter bench.ConfigFormatException 
-#     bench.Harness bench.TextReporter
-#     bench.serial.BooleanArrays bench.serial.Booleans
-#     bench.serial.ByteArrays bench.serial.Bytes bench.serial.CharArrays
-#     bench.serial.Chars bench.serial.ClassDesc bench.serial.Cons
-#     bench.serial.CustomDefaultObjTrees bench.serial.CustomObjTrees
-#     bench.serial.DoubleArrays bench.serial.Doubles
-#     bench.serial.ExternObjTrees bench.serial.FloatArrays
-#     bench.serial.Floats bench.serial.GetPutFieldTrees
-#     bench.serial.IntArrays bench.serial.Ints bench.serial.LongArrays
-#     bench.serial.Longs bench.serial.Main bench.serial.ObjArrays
-#     bench.serial.ObjTrees bench.serial.ProxyArrays
-#     bench.serial.ProxyClassDesc bench.serial.RepeatObjs
-#     bench.serial.ReplaceTrees bench.serial.ShortArrays
-#     bench.serial.Shorts bench.serial.SmallObjTrees
-#     bench.serial.StreamBuffer bench.serial.Strings
+# @build bench.Reporter bench.XmlReporter bench.ConfigFormatException 
+# @build bench.Harness bench.TextReporter
+# @build bench.serial.BooleanArrays bench.serial.Booleans
+# @build bench.serial.ByteArrays bench.serial.Bytes bench.serial.CharArrays
+# @build bench.serial.Chars bench.serial.ClassDesc bench.serial.Cons
+# @build bench.serial.CustomDefaultObjTrees bench.serial.CustomObjTrees
+# @build bench.serial.DoubleArrays bench.serial.Doubles
+# @build bench.serial.ExternObjTrees bench.serial.FloatArrays
+# @build bench.serial.Floats bench.serial.GetPutFieldTrees
+# @build bench.serial.IntArrays bench.serial.Ints bench.serial.LongArrays
+# @build bench.serial.Longs bench.serial.Main bench.serial.ObjArrays
+# @build bench.serial.ObjTrees bench.serial.ProxyArrays
+# @build bench.serial.ProxyClassDesc bench.serial.RepeatObjs
+# @build bench.serial.ReplaceTrees bench.serial.ShortArrays
+# @build bench.serial.Shorts bench.serial.SmallObjTrees
+# @build bench.serial.StreamBuffer bench.serial.Strings
 #
 # @run shell/timeout=1800 runSerialBench.sh
 #
@@ -51,7 +51,7 @@
 echo "Starting serialization benchmark "
 
 $TESTJAVA/bin/java \
-    -server \
+    ${TESTVMOPTS} \
     -cp $TESTCLASSES \
     bench.serial.Main \
     -c $TESTSRC/bench/serial/jtreg-config &
diff --git a/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh b/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh
index a503697..a62cba4 100644
--- a/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh
+++ b/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh
@@ -87,7 +87,7 @@
         ${TESTSRC}${FILESEP}provider${FILESEP}HashProvider.java
 
 # run the test
-${TESTJAVA}${FILESEP}bin${FILESEP}java \
+${TESTJAVA}${FILESEP}bin${FILESEP}java ${TESTVMOPTS} \
         -classpath "${TESTCLASSES}${PATHSEP}${TESTSRC}${FILESEP}Deadlock.jar" \
 	-Djava.awt.headless=true \
         ClassLoaderDeadlock
diff --git a/test/java/security/Security/ClassLoaderDeadlock/Deadlock.sh b/test/java/security/Security/ClassLoaderDeadlock/Deadlock.sh
index 53555ee..e1ed144 100644
--- a/test/java/security/Security/ClassLoaderDeadlock/Deadlock.sh
+++ b/test/java/security/Security/ClassLoaderDeadlock/Deadlock.sh
@@ -62,5 +62,5 @@
 
 JAVA="${TESTJAVA}${FILESEP}bin${FILESEP}java"
 
-${JAVA} -cp "${TESTCLASSES}${PATHSEP}${TESTSRC}${FILESEP}Deadlock.jar" Deadlock
+${JAVA} ${TESTVMOPTS} -cp "${TESTCLASSES}${PATHSEP}${TESTSRC}${FILESEP}Deadlock.jar" Deadlock
 
diff --git a/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh b/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh
index 1109496..acf8ff2 100644
--- a/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh
+++ b/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh
@@ -100,8 +100,8 @@
 rm Deadlock2*.class
 
 # create serialized object and run the test
-${TESTJAVA}${FILESEP}bin${FILESEP}java CreateSerialized
-${TESTJAVA}${FILESEP}bin${FILESEP}java -Djava.ext.dirs=${TESTCLASSES}${FILESEP}testlib Deadlock2
+${TESTJAVA}${FILESEP}bin${FILESEP}java ${TESTVMOPTS} CreateSerialized
+${TESTJAVA}${FILESEP}bin${FILESEP}java ${TESTVMOPTS} -Djava.ext.dirs=${TESTCLASSES}${FILESEP}testlib Deadlock2
 STATUS=$?
 
 # clean up
diff --git a/test/java/security/Security/signedfirst/Dyn.sh b/test/java/security/Security/signedfirst/Dyn.sh
index d87e5ff..64d0dd3 100644
--- a/test/java/security/Security/signedfirst/Dyn.sh
+++ b/test/java/security/Security/signedfirst/Dyn.sh
@@ -83,7 +83,7 @@
         ${TESTSRC}${FILESEP}DynSignedProvFirst.java
 
 # run the test
-${TESTJAVA}${FILESEP}bin${FILESEP}java \
+${TESTJAVA}${FILESEP}bin${FILESEP}java ${TESTVMOPTS} \
         -classpath "${TESTCLASSES}${PATHSEP}${TESTSRC}${FILESEP}exp.jar" \
         DynSignedProvFirst
 
diff --git a/test/java/security/Security/signedfirst/Static.sh b/test/java/security/Security/signedfirst/Static.sh
index 6b41adf..544a3b1 100644
--- a/test/java/security/Security/signedfirst/Static.sh
+++ b/test/java/security/Security/signedfirst/Static.sh
@@ -84,7 +84,7 @@
 
 # run the test
 cd ${TESTSRC}${FILESEP}
-${TESTJAVA}${FILESEP}bin${FILESEP}java \
+${TESTJAVA}${FILESEP}bin${FILESEP}java ${TESTVMOPTS} \
         -classpath "${TESTCLASSES}${PATHSEP}${TESTSRC}${FILESEP}exp.jar" \
         -Djava.security.properties=file:${TESTSRC}${FILESEP}Static.props \
         StaticSignedProvFirst
diff --git a/test/java/security/cert/CertificateFactory/slowstream.sh b/test/java/security/cert/CertificateFactory/slowstream.sh
index fbca87e..72d3fcf 100644
--- a/test/java/security/cert/CertificateFactory/slowstream.sh
+++ b/test/java/security/cert/CertificateFactory/slowstream.sh
@@ -46,5 +46,5 @@
 esac
 
 ${TESTJAVA}${FS}bin${FS}javac -d . ${TESTSRC}${FS}SlowStream.java
-${TESTJAVA}${FS}bin${FS}java -Dtest.src=${TESTSRC} SlowStreamWriter | \
-        ${TESTJAVA}${FS}bin${FS}java SlowStreamReader
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -Dtest.src=${TESTSRC} SlowStreamWriter | \
+        ${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} SlowStreamReader
diff --git a/test/java/util/Currency/PropertiesTest.sh b/test/java/util/Currency/PropertiesTest.sh
index 874e7ac..6c16851 100644
--- a/test/java/util/Currency/PropertiesTest.sh
+++ b/test/java/util/Currency/PropertiesTest.sh
@@ -70,7 +70,7 @@
 
 run() {
     echo ''
-    sh -xc "${TESTJAVA}${FS}bin${FS}java -cp ${TESTCLASSES} $*" 2>&1
+    sh -xc "${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -cp ${TESTCLASSES} $*" 2>&1
     if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 }
 
@@ -113,7 +113,7 @@
 
 # run
 echo ''
-sh -xc "${WRITABLEJDK}${FS}bin${FS}java -cp ${TESTCLASSES} PropertiesTest -d dump3"
+sh -xc "${WRITABLEJDK}${FS}bin${FS}java ${TESTVMOPTS} -cp ${TESTCLASSES} PropertiesTest -d dump3"
 if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 
 # Cleanup
diff --git a/test/java/util/Locale/LocaleCategory.sh b/test/java/util/Locale/LocaleCategory.sh
index 34becd3..84b6119 100644
--- a/test/java/util/Locale/LocaleCategory.sh
+++ b/test/java/util/Locale/LocaleCategory.sh
@@ -69,7 +69,7 @@
 # test user.xxx.display user.xxx.format properties
 
 # run
-RUNCMD="${TESTJAVA}${FS}bin${FS}java -classpath ${TESTCLASSES} -Duser.language.display=ja -Duser.language.format=zh LocaleCategory"
+RUNCMD="${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} -Duser.language.display=ja -Duser.language.format=zh LocaleCategory"
 
 echo ${RUNCMD}
 ${RUNCMD}
@@ -85,7 +85,7 @@
 # test user.xxx properties overriding user.xxx.display/format
 
 # run
-RUNCMD="${TESTJAVA}${FS}bin${FS}java -classpath ${TESTCLASSES} -Duser.language=en -Duser.language.display=ja -Duser.language.format=zh LocaleCategory"
+RUNCMD="${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} -Duser.language=en -Duser.language.display=ja -Duser.language.format=zh LocaleCategory"
 
 echo ${RUNCMD}
 ${RUNCMD}
diff --git a/test/java/util/Locale/LocaleProviders.sh b/test/java/util/Locale/LocaleProviders.sh
index 59e43fc..3cf0d4e 100644
--- a/test/java/util/Locale/LocaleProviders.sh
+++ b/test/java/util/Locale/LocaleProviders.sh
@@ -96,12 +96,12 @@
 ${TESTJAVA}${FS}bin${FS}jar cvf ${SPIDIR}${FS}tznp.jar -C ${SPIDIR}${FS}dest .
 
 # get the platform default locales
-PLATDEF=`${TESTJAVA}${FS}bin${FS}java -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale display`
+PLATDEF=`${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale display`
 DEFLANG=`echo ${PLATDEF} | sed -e "s/,.*//"`
 DEFCTRY=`echo ${PLATDEF} | sed -e "s/.*,//"`
 echo "DEFLANG=${DEFLANG}"
 echo "DEFCTRY=${DEFCTRY}"
-PLATDEF=`${TESTJAVA}${FS}bin${FS}java -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale format`
+PLATDEF=`${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale format`
 DEFFMTLANG=`echo ${PLATDEF} | sed -e "s/,.*//"`
 DEFFMTCTRY=`echo ${PLATDEF} | sed -e "s/.*,//"`
 echo "DEFFMTLANG=${DEFFMTLANG}"
@@ -109,7 +109,7 @@
 
 runTest()
 {
-    RUNCMD="${TESTJAVA}${FS}bin${FS}java -classpath ${TESTCLASSES} -Djava.locale.providers=$PREFLIST LocaleProviders $METHODNAME $PARAM1 $PARAM2 $PARAM3"
+    RUNCMD="${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} -Djava.locale.providers=$PREFLIST LocaleProviders $METHODNAME $PARAM1 $PARAM2 $PARAM3"
     echo ${RUNCMD}
     ${RUNCMD}
     result=$?
diff --git a/test/java/util/PluggableLocale/ExecTest.sh b/test/java/util/PluggableLocale/ExecTest.sh
index 18bd8d1..c01e9e8 100644
--- a/test/java/util/PluggableLocale/ExecTest.sh
+++ b/test/java/util/PluggableLocale/ExecTest.sh
@@ -119,9 +119,9 @@
 # run
 if [ "$3" = "true" ]
 then
-  RUNCMD="${TESTJAVA}${FS}bin${FS}java -Djava.ext.dirs=${EXTDIRS} $2 "
+  RUNCMD="${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -Djava.ext.dirs=${EXTDIRS} $2 "
 else
-  RUNCMD="${TESTJAVA}${FS}bin${FS}java -classpath ${CLASSPATHARG} $2 "
+  RUNCMD="${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${CLASSPATHARG} $2 "
 fi
 
 echo ${RUNCMD}
diff --git a/test/java/util/ResourceBundle/Bug6299235Test.sh b/test/java/util/ResourceBundle/Bug6299235Test.sh
index ef17b41..8bcb74f 100644
--- a/test/java/util/ResourceBundle/Bug6299235Test.sh
+++ b/test/java/util/ResourceBundle/Bug6299235Test.sh
@@ -75,7 +75,7 @@
 
 cd ${TESTSRC}
 
-${TESTJAVA}/bin/java -cp ${TESTCLASSES} -Djava.ext.dirs=${NEW_EXT_DIR} Bug6299235Test
+${TESTJAVA}/bin/java ${TESTVMOPTS} -cp ${TESTCLASSES} -Djava.ext.dirs=${NEW_EXT_DIR} Bug6299235Test
 
 if [ $? -ne 0 ]
     then
diff --git a/test/java/util/ResourceBundle/Control/MissingResourceCauseTest.sh b/test/java/util/ResourceBundle/Control/MissingResourceCauseTest.sh
index 7bb7732..d23ada5 100644
--- a/test/java/util/ResourceBundle/Control/MissingResourceCauseTest.sh
+++ b/test/java/util/ResourceBundle/Control/MissingResourceCauseTest.sh
@@ -50,7 +50,7 @@
 : ${TESTCLASS:=.}
 : ${TESTSRC:=.}
 
-${TESTJAVA}/bin/java -esa -cp ${TESTCLASS}${DEL}${TESTSRC} MissingResourceCauseTest
+${TESTJAVA}/bin/java ${TESTVMOPTS} -esa -cp ${TESTCLASS}${DEL}${TESTSRC} MissingResourceCauseTest
 STATUS=$?
 chmod 666 $UNREADABLE
 rm -f $UNREADABLE
diff --git a/test/java/util/ServiceLoader/basic.sh b/test/java/util/ServiceLoader/basic.sh
index 259b2e1..72d68fa 100644
--- a/test/java/util/ServiceLoader/basic.sh
+++ b/test/java/util/ServiceLoader/basic.sh
@@ -94,7 +94,7 @@
   cp="$1"; shift
   if [ -z "$cp" ]; then cp="$TESTCLASSES"; else cp="$TESTCLASSES$SEP$cp"; fi
   vmargs="$1"; shift
-  sh -xc "'$JAVA' -cp $cp $vmargs $T $*" 2>&1
+  sh -xc "'$JAVA' ${TESTVMOPTS} -cp $cp $vmargs $T $*" 2>&1
   if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
 }
 
diff --git a/test/java/util/TimeZone/OldIDMappingTest.sh b/test/java/util/TimeZone/OldIDMappingTest.sh
index 0f776e4..f7d67ba 100644
--- a/test/java/util/TimeZone/OldIDMappingTest.sh
+++ b/test/java/util/TimeZone/OldIDMappingTest.sh
@@ -40,7 +40,7 @@
     if [ x"$I" != x ]; then
 	D="-Dsun.timezone.ids.oldmapping=${I}"
     fi
-    if ! ${JAVA} ${D} -cp ${TESTCLASSES} OldIDMappingTest -new; then
+    if ! ${JAVA} ${D} ${TESTVMOPTS} -cp ${TESTCLASSES} OldIDMappingTest -new; then
 	STATUS=1
     fi
 done
@@ -51,7 +51,7 @@
     if [ "x$I" != x ]; then
 	D="-Dsun.timezone.ids.oldmapping=${I}"
     fi
-    if ! ${JAVA} ${D} -cp ${TESTCLASSES} OldIDMappingTest -old; then
+    if ! ${JAVA} ${D} ${TESTVMOPTS} -cp ${TESTCLASSES} OldIDMappingTest -old; then
 	STATUS=1
     fi
 done
diff --git a/test/java/util/TimeZone/TimeZoneDatePermissionCheck.sh b/test/java/util/TimeZone/TimeZoneDatePermissionCheck.sh
index 226228f..4a295ce 100644
--- a/test/java/util/TimeZone/TimeZoneDatePermissionCheck.sh
+++ b/test/java/util/TimeZone/TimeZoneDatePermissionCheck.sh
@@ -53,6 +53,6 @@
 # run it with the security manager on, plus accesscontroller debugging
 # will go into infinite recursion trying to get enough permissions for
 # printing Date of failing certificate unless fix is applied.
-${TESTJAVA}/bin/java -Djava.security.manager \
+${TESTJAVA}/bin/java ${TESTVMOPTS} -Djava.security.manager \
   -Djava.security.debug=access,failure,policy \
   -cp ${TESTCLASSES}/timezonedatetest.jar TimeZoneDatePermissionCheck
diff --git a/test/java/util/prefs/CheckUserPrefsStorage.sh b/test/java/util/prefs/CheckUserPrefsStorage.sh
index 5314b12..2821069 100644
--- a/test/java/util/prefs/CheckUserPrefsStorage.sh
+++ b/test/java/util/prefs/CheckUserPrefsStorage.sh
@@ -50,14 +50,14 @@
 esac
 
 # run CheckUserPrefFirst - creates and stores a user pref
-${TESTJAVA}${FS}bin${FS}java -cp ${TESTCLASSES} -Djava.util.prefs.userRoot=. CheckUserPrefFirst
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -cp ${TESTCLASSES} -Djava.util.prefs.userRoot=. CheckUserPrefFirst
 result=$?
 if [ "$result" -ne "0" ]; then
     exit 1
 fi
 
 # run CheckUserPrefLater - Looks for the stored pref
-${TESTJAVA}${FS}bin${FS}java -cp ${TESTCLASSES} -Djava.util.prefs.userRoot=. CheckUserPrefLater
+${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -cp ${TESTCLASSES} -Djava.util.prefs.userRoot=. CheckUserPrefLater
 result=$?
 if [ "$result" -ne "0" ]; then
     exit 1
diff --git a/test/java/util/prefs/PrefsSpi.sh b/test/java/util/prefs/PrefsSpi.sh
index b140b30..877522e 100644
--- a/test/java/util/prefs/PrefsSpi.sh
+++ b/test/java/util/prefs/PrefsSpi.sh
@@ -87,17 +87,17 @@
 
 case "`uname`" in Windows*|CYGWIN* ) CPS=';';; *) CPS=':';; esac
 
-Sys "$java" "-cp" "$TESTCLASSES${CPS}extDir/PrefsSpi.jar" \
+Sys "$java" "${TESTVMOPTS}" "-cp" "$TESTCLASSES${CPS}extDir/PrefsSpi.jar" \
     -Djava.util.prefs.PreferencesFactory=StubPreferencesFactory \
     -Djava.util.prefs.userRoot=. \
     PrefsSpi "StubPreferences"
-Sys "$java" "-cp" "$TESTCLASSES" \
+Sys "$java" "${TESTVMOPTS}" "-cp" "$TESTCLASSES" \
     -Djava.util.prefs.userRoot=. \
     PrefsSpi "java.util.prefs.*"
-Sys "$java" "-cp" "$TESTCLASSES${CPS}extDir/PrefsSpi.jar" \
+Sys "$java" "${TESTVMOPTS}" "-cp" "$TESTCLASSES${CPS}extDir/PrefsSpi.jar" \
     -Djava.util.prefs.userRoot=. \
     PrefsSpi "StubPreferences"
-Sys "$java" "-cp" "$TESTCLASSES" "-Djava.ext.dirs=extDir" \
+Sys "$java" "${TESTVMOPTS}" "-cp" "$TESTCLASSES" "-Djava.ext.dirs=extDir" \
     -Djava.util.prefs.userRoot=. \
     PrefsSpi "StubPreferences"
 
diff --git a/test/java/util/spi/ResourceBundleControlProvider/UserDefaultControlTest.sh b/test/java/util/spi/ResourceBundleControlProvider/UserDefaultControlTest.sh
index c6b9123..5381426 100644
--- a/test/java/util/spi/ResourceBundleControlProvider/UserDefaultControlTest.sh
+++ b/test/java/util/spi/ResourceBundleControlProvider/UserDefaultControlTest.sh
@@ -21,4 +21,5 @@
 # questions.
 #
 
-${TESTJAVA}/bin/java -Djava.ext.dirs=${TESTSRC} -cp ${TESTCLASSES} UserDefaultControlTest
\ No newline at end of file
+${TESTJAVA}/bin/java ${TESTVMOPTS} -Djava.ext.dirs=${TESTSRC} -cp ${TESTCLASSES} UserDefaultControlTest
+
diff --git a/test/java/util/zip/3GBZipFiles.sh b/test/java/util/zip/3GBZipFiles.sh
index 9caf109..65db4e2 100644
--- a/test/java/util/zip/3GBZipFiles.sh
+++ b/test/java/util/zip/3GBZipFiles.sh
@@ -1,4 +1,3 @@
-#
 # Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
@@ -83,7 +82,7 @@
     huge-*) filesize_="$hugeSize" ;;
     tiny-*) filesize_="$tinySize" ;;
   esac
-  sys "$JAVA" "-cp" "$TESTCLASSES" "FileBuilder" \
+  sys "$JAVA" ${TESTVMOPTS} "-cp" "$TESTCLASSES" "FileBuilder" \
    "$filetype_" "$filename_" "$filesize_"
 }
 
diff --git a/test/java/util/zip/ZipFile/deletetempjar.sh b/test/java/util/zip/ZipFile/deletetempjar.sh
index afa47fe..bad1a0f 100644
--- a/test/java/util/zip/ZipFile/deletetempjar.sh
+++ b/test/java/util/zip/ZipFile/deletetempjar.sh
@@ -30,7 +30,7 @@
   TESTCLASSES=.
 fi
 
-tmpfile=`$TESTJAVA/bin/java -classpath $TESTCLASSES DeleteTempJar`
+tmpfile=`$TESTJAVA/bin/java ${TESTVMOPTS} -classpath $TESTCLASSES DeleteTempJar`
 rc=$?
 if [ $rc != 0 ]; then
     echo Unexpected failure with exit status $rc