Merge
diff --git a/.hgtags-top-repo b/.hgtags-top-repo
index d10b683..67085b3 100644
--- a/.hgtags-top-repo
+++ b/.hgtags-top-repo
@@ -342,3 +342,4 @@
 75c3897541ecb52ee16d001ea605b12971df7303 jdk-9+97
 48987460c7d49a29013963ee44d090194396bb61 jdk-9+98
 7c0577bea4c65d69c5bef67023a89d2efa4fb2f7 jdk-9+99
+c1f30ac14db0eaff398429c04cd9fab92e1b4b2a jdk-9+100
diff --git a/common/autoconf/build-performance.m4 b/common/autoconf/build-performance.m4
index 5c2f1b6..463498f 100644
--- a/common/autoconf/build-performance.m4
+++ b/common/autoconf/build-performance.m4
@@ -253,6 +253,24 @@
 
 ################################################################################
 #
+# Runs icecc-create-env once and prints the error if it fails
+#
+# $1: arguments to icecc-create-env
+# $2: log file
+#
+AC_DEFUN([BPERF_RUN_ICECC_CREATE_ENV],
+[
+  cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
+      && ${ICECC_CREATE_ENV} $1 > $2 2>&1
+  if test "$?" != "0"; then
+    AC_MSG_NOTICE([icecc-create-env output:])
+    cat $2
+    AC_MSG_ERROR([Failed to create icecc compiler environment])
+  fi
+])
+
+################################################################################
+#
 # Optionally enable distributed compilation of native code using icecc/icecream
 #
 AC_DEFUN([BPERF_SETUP_ICECC],
@@ -271,16 +289,18 @@
     # be sent to the other hosts in the icecream cluster.
     icecc_create_env_log="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/icecc_create_env.log"
     ${MKDIR} -p ${CONFIGURESUPPORT_OUTPUTDIR}/icecc
-    AC_MSG_CHECKING([for icecc build environment for target compiler])
+    # Older versions of icecc does not have the --gcc parameter
+    if ${ICECC_CREATE_ENV} | $GREP -q -e --gcc; then
+      icecc_gcc_arg="--gcc"
+    fi
     if test "x${TOOLCHAIN_TYPE}" = "xgcc"; then
-      cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-          && ${ICECC_CREATE_ENV} --gcc ${CC} ${CXX} > ${icecc_create_env_log}
+      BPERF_RUN_ICECC_CREATE_ENV([${icecc_gcc_arg} ${CC} ${CXX}], \
+          ${icecc_create_env_log})
     elif test "x$TOOLCHAIN_TYPE" = "xclang"; then
       # For clang, the icecc compilerwrapper is needed. It usually resides next
       # to icecc-create-env.
       BASIC_REQUIRE_PROGS(ICECC_WRAPPER, compilerwrapper)
-      cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-          && ${ICECC_CREATE_ENV} --clang ${CC} ${ICECC_WRAPPER} > ${icecc_create_env_log}
+      BPERF_RUN_ICECC_CREATE_ENV([--clang ${CC} ${ICECC_WRAPPER}], ${icecc_create_env_log})
     else
       AC_MSG_ERROR([Can only create icecc compiler packages for toolchain types gcc and clang])
     fi
@@ -289,24 +309,31 @@
     # to find it.
     ICECC_ENV_BUNDLE_BASENAME="`${SED} -n '/^creating/s/creating //p' ${icecc_create_env_log}`"
     ICECC_ENV_BUNDLE="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/${ICECC_ENV_BUNDLE_BASENAME}"
+    if test ! -f ${ICECC_ENV_BUNDLE}; then
+      AC_MSG_ERROR([icecc-create-env did not produce an environment ${ICECC_ENV_BUNDLE}])
+    fi
+    AC_MSG_CHECKING([for icecc build environment for target compiler])
     AC_MSG_RESULT([${ICECC_ENV_BUNDLE}])
     ICECC="ICECC_VERSION=${ICECC_ENV_BUNDLE} ICECC_CC=${CC} ICECC_CXX=${CXX} ${ICECC_CMD}"
 
     if test "x${COMPILE_TYPE}" = "xcross"; then
       # If cross compiling, create a separate env package for the build compiler
-      AC_MSG_CHECKING([for icecc build environment for build compiler])
       # Assume "gcc" or "cc" is gcc and "clang" is clang. Otherwise bail.
+      icecc_create_env_log_build="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/icecc_create_env_build.log"
       if test "x${BUILD_CC##*/}" = "xgcc" ||  test "x${BUILD_CC##*/}" = "xcc"; then
-        cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-            && ${ICECC_CREATE_ENV} --gcc ${BUILD_CC} ${BUILD_CXX} > ${icecc_create_env_log}
+        BPERF_RUN_ICECC_CREATE_ENV([${icecc_gcc_arg} ${BUILD_CC} ${BUILD_CXX}], \
+            ${icecc_create_env_log_build})
       elif test "x${BUILD_CC##*/}" = "xclang"; then
-        cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-            && ${ICECC_CREATE_ENV} --clang ${BUILD_CC} ${ICECC_WRAPPER} > ${icecc_create_env_log}
+        BPERF_RUN_ICECC_CREATE_ENV([--clang ${BUILD_CC} ${ICECC_WRAPPER}], ${icecc_create_env_log_build})
       else
         AC_MSG_ERROR([Cannot create icecc compiler package for ${BUILD_CC}])
       fi
-      ICECC_ENV_BUNDLE_BASENAME="`${SED} -n '/^creating/s/creating //p' ${icecc_create_env_log}`"
+      ICECC_ENV_BUNDLE_BASENAME="`${SED} -n '/^creating/s/creating //p' ${icecc_create_env_log_build}`"
       ICECC_ENV_BUNDLE="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/${ICECC_ENV_BUNDLE_BASENAME}"
+      if test ! -f ${ICECC_ENV_BUNDLE}; then
+        AC_MSG_ERROR([icecc-create-env did not produce an environment ${ICECC_ENV_BUNDLE}])
+      fi
+      AC_MSG_CHECKING([for icecc build environment for build compiler])
       AC_MSG_RESULT([${ICECC_ENV_BUNDLE}])
       BUILD_ICECC="ICECC_VERSION=${ICECC_ENV_BUNDLE} ICECC_CC=${BUILD_CC} \
           ICECC_CXX=${BUILD_CXX} ${ICECC_CMD}"
diff --git a/common/autoconf/flags.m4 b/common/autoconf/flags.m4
index af375d2..927bb52 100644
--- a/common/autoconf/flags.m4
+++ b/common/autoconf/flags.m4
@@ -128,6 +128,26 @@
   else
     COMPILER_TARGET_BITS_FLAG="-m"
     COMPILER_COMMAND_FILE_FLAG="@"
+
+    # The solstudio linker does not support @-files.
+    if test "x$TOOLCHAIN_TYPE" = xsolstudio; then
+      COMPILER_COMMAND_FILE_FLAG=
+    fi
+
+    # Check if @file is supported by gcc
+    if test "x$TOOLCHAIN_TYPE" = xgcc; then
+      AC_MSG_CHECKING([if @file is supported by gcc])
+      # Extra emtpy "" to prevent ECHO from interpreting '--version' as argument
+      $ECHO "" "--version" > command.file
+      if $CXX @command.file 2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD; then
+        AC_MSG_RESULT(yes)
+        COMPILER_COMMAND_FILE_FLAG="@"
+      else
+        AC_MSG_RESULT(no)
+        COMPILER_COMMAND_FILE_FLAG=
+      fi
+      rm -rf command.file
+    fi
   fi
   AC_SUBST(COMPILER_TARGET_BITS_FLAG)
   AC_SUBST(COMPILER_COMMAND_FILE_FLAG)
diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh
index f5e0859..de0cce6 100644
--- a/common/autoconf/generated-configure.sh
+++ b/common/autoconf/generated-configure.sh
@@ -3794,6 +3794,15 @@
 
 ################################################################################
 #
+# Runs icecc-create-env once and prints the error if it fails
+#
+# $1: arguments to icecc-create-env
+# $2: log file
+#
+
+
+################################################################################
+#
 # Optionally enable distributed compilation of native code using icecc/icecream
 #
 
@@ -4308,7 +4317,7 @@
 
 
 #
-# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -4801,7 +4810,7 @@
 #CUSTOM_AUTOCONF_INCLUDE
 
 # Do not change or remove the following line, it is needed for consistency checks:
-DATE_WHEN_GENERATED=1450277321
+DATE_WHEN_GENERATED=1452261921
 
 ###############################################################################
 #
@@ -45930,6 +45939,29 @@
   else
     COMPILER_TARGET_BITS_FLAG="-m"
     COMPILER_COMMAND_FILE_FLAG="@"
+
+    # The solstudio linker does not support @-files.
+    if test "x$TOOLCHAIN_TYPE" = xsolstudio; then
+      COMPILER_COMMAND_FILE_FLAG=
+    fi
+
+    # Check if @file is supported by gcc
+    if test "x$TOOLCHAIN_TYPE" = xgcc; then
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if @file is supported by gcc" >&5
+$as_echo_n "checking if @file is supported by gcc... " >&6; }
+      # Extra emtpy "" to prevent ECHO from interpreting '--version' as argument
+      $ECHO "" "--version" > command.file
+      if $CXX @command.file 2>&5 >&5; then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        COMPILER_COMMAND_FILE_FLAG="@"
+      else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        COMPILER_COMMAND_FILE_FLAG=
+      fi
+      rm -rf command.file
+    fi
   fi
 
 
@@ -51742,12 +51774,28 @@
     fi
 
     if test "x${with_cups}" != x; then
-      CUPS_CFLAGS="-I${with_cups}/include"
-      CUPS_FOUND=yes
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cups headers" >&5
+$as_echo_n "checking for cups headers... " >&6; }
+      if test -s "${with_cups}/include/cups/cups.h"; then
+        CUPS_CFLAGS="-I${with_cups}/include"
+        CUPS_FOUND=yes
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_FOUND" >&5
+$as_echo "$CUPS_FOUND" >&6; }
+      else
+        as_fn_error $? "Can't find 'include/cups/cups.h' under ${with_cups} given with the --with-cups option." "$LINENO" 5
+      fi
     fi
     if test "x${with_cups_include}" != x; then
-      CUPS_CFLAGS="-I${with_cups_include}"
-      CUPS_FOUND=yes
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cups headers" >&5
+$as_echo_n "checking for cups headers... " >&6; }
+      if test -s "${with_cups_include}/cups/cups.h"; then
+        CUPS_CFLAGS="-I${with_cups_include}"
+        CUPS_FOUND=yes
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_FOUND" >&5
+$as_echo "$CUPS_FOUND" >&6; }
+      else
+        as_fn_error $? "Can't find 'cups/cups.h' under ${with_cups_include} given with the --with-cups-include option." "$LINENO" 5
+      fi
     fi
     if test "x$CUPS_FOUND" = xno; then
       # Are the cups headers installed in the default /usr/include location?
@@ -59543,11 +59591,23 @@
     # be sent to the other hosts in the icecream cluster.
     icecc_create_env_log="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/icecc_create_env.log"
     ${MKDIR} -p ${CONFIGURESUPPORT_OUTPUTDIR}/icecc
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for icecc build environment for target compiler" >&5
-$as_echo_n "checking for icecc build environment for target compiler... " >&6; }
+    # Older versions of icecc does not have the --gcc parameter
+    if ${ICECC_CREATE_ENV} | $GREP -q -e --gcc; then
+      icecc_gcc_arg="--gcc"
+    fi
     if test "x${TOOLCHAIN_TYPE}" = "xgcc"; then
-      cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-          && ${ICECC_CREATE_ENV} --gcc ${CC} ${CXX} > ${icecc_create_env_log}
+
+  cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
+      && ${ICECC_CREATE_ENV} ${icecc_gcc_arg} ${CC} ${CXX} > \
+          ${icecc_create_env_log} 2>&1
+  if test "$?" != "0"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: icecc-create-env output:" >&5
+$as_echo "$as_me: icecc-create-env output:" >&6;}
+    cat \
+          ${icecc_create_env_log}
+    as_fn_error $? "Failed to create icecc compiler environment" "$LINENO" 5
+  fi
+
     elif test "x$TOOLCHAIN_TYPE" = "xclang"; then
       # For clang, the icecc compilerwrapper is needed. It usually resides next
       # to icecc-create-env.
@@ -59755,8 +59815,16 @@
   fi
 
 
-      cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-          && ${ICECC_CREATE_ENV} --clang ${CC} ${ICECC_WRAPPER} > ${icecc_create_env_log}
+
+  cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
+      && ${ICECC_CREATE_ENV} --clang ${CC} ${ICECC_WRAPPER} > ${icecc_create_env_log} 2>&1
+  if test "$?" != "0"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: icecc-create-env output:" >&5
+$as_echo "$as_me: icecc-create-env output:" >&6;}
+    cat ${icecc_create_env_log}
+    as_fn_error $? "Failed to create icecc compiler environment" "$LINENO" 5
+  fi
+
     else
       as_fn_error $? "Can only create icecc compiler packages for toolchain types gcc and clang" "$LINENO" 5
     fi
@@ -59765,26 +59833,53 @@
     # to find it.
     ICECC_ENV_BUNDLE_BASENAME="`${SED} -n '/^creating/s/creating //p' ${icecc_create_env_log}`"
     ICECC_ENV_BUNDLE="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/${ICECC_ENV_BUNDLE_BASENAME}"
+    if test ! -f ${ICECC_ENV_BUNDLE}; then
+      as_fn_error $? "icecc-create-env did not produce an environment ${ICECC_ENV_BUNDLE}" "$LINENO" 5
+    fi
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for icecc build environment for target compiler" >&5
+$as_echo_n "checking for icecc build environment for target compiler... " >&6; }
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ICECC_ENV_BUNDLE}" >&5
 $as_echo "${ICECC_ENV_BUNDLE}" >&6; }
     ICECC="ICECC_VERSION=${ICECC_ENV_BUNDLE} ICECC_CC=${CC} ICECC_CXX=${CXX} ${ICECC_CMD}"
 
     if test "x${COMPILE_TYPE}" = "xcross"; then
       # If cross compiling, create a separate env package for the build compiler
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for icecc build environment for build compiler" >&5
-$as_echo_n "checking for icecc build environment for build compiler... " >&6; }
       # Assume "gcc" or "cc" is gcc and "clang" is clang. Otherwise bail.
+      icecc_create_env_log_build="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/icecc_create_env_build.log"
       if test "x${BUILD_CC##*/}" = "xgcc" ||  test "x${BUILD_CC##*/}" = "xcc"; then
-        cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-            && ${ICECC_CREATE_ENV} --gcc ${BUILD_CC} ${BUILD_CXX} > ${icecc_create_env_log}
+
+  cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
+      && ${ICECC_CREATE_ENV} ${icecc_gcc_arg} ${BUILD_CC} ${BUILD_CXX} > \
+            ${icecc_create_env_log_build} 2>&1
+  if test "$?" != "0"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: icecc-create-env output:" >&5
+$as_echo "$as_me: icecc-create-env output:" >&6;}
+    cat \
+            ${icecc_create_env_log_build}
+    as_fn_error $? "Failed to create icecc compiler environment" "$LINENO" 5
+  fi
+
       elif test "x${BUILD_CC##*/}" = "xclang"; then
-        cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
-            && ${ICECC_CREATE_ENV} --clang ${BUILD_CC} ${ICECC_WRAPPER} > ${icecc_create_env_log}
+
+  cd ${CONFIGURESUPPORT_OUTPUTDIR}/icecc \
+      && ${ICECC_CREATE_ENV} --clang ${BUILD_CC} ${ICECC_WRAPPER} > ${icecc_create_env_log_build} 2>&1
+  if test "$?" != "0"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: icecc-create-env output:" >&5
+$as_echo "$as_me: icecc-create-env output:" >&6;}
+    cat ${icecc_create_env_log_build}
+    as_fn_error $? "Failed to create icecc compiler environment" "$LINENO" 5
+  fi
+
       else
         as_fn_error $? "Cannot create icecc compiler package for ${BUILD_CC}" "$LINENO" 5
       fi
-      ICECC_ENV_BUNDLE_BASENAME="`${SED} -n '/^creating/s/creating //p' ${icecc_create_env_log}`"
+      ICECC_ENV_BUNDLE_BASENAME="`${SED} -n '/^creating/s/creating //p' ${icecc_create_env_log_build}`"
       ICECC_ENV_BUNDLE="${CONFIGURESUPPORT_OUTPUTDIR}/icecc/${ICECC_ENV_BUNDLE_BASENAME}"
+      if test ! -f ${ICECC_ENV_BUNDLE}; then
+        as_fn_error $? "icecc-create-env did not produce an environment ${ICECC_ENV_BUNDLE}" "$LINENO" 5
+      fi
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for icecc build environment for build compiler" >&5
+$as_echo_n "checking for icecc build environment for build compiler... " >&6; }
       { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ICECC_ENV_BUNDLE}" >&5
 $as_echo "${ICECC_ENV_BUNDLE}" >&6; }
       BUILD_ICECC="ICECC_VERSION=${ICECC_ENV_BUNDLE} ICECC_CC=${BUILD_CC} \
diff --git a/common/autoconf/lib-cups.m4 b/common/autoconf/lib-cups.m4
index 2280edb..8a61bc0 100644
--- a/common/autoconf/lib-cups.m4
+++ b/common/autoconf/lib-cups.m4
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -48,12 +48,24 @@
     fi
 
     if test "x${with_cups}" != x; then
-      CUPS_CFLAGS="-I${with_cups}/include"
-      CUPS_FOUND=yes
+      AC_MSG_CHECKING([for cups headers])
+      if test -s "${with_cups}/include/cups/cups.h"; then
+        CUPS_CFLAGS="-I${with_cups}/include"
+        CUPS_FOUND=yes
+        AC_MSG_RESULT([$CUPS_FOUND])
+      else
+        AC_MSG_ERROR([Can't find 'include/cups/cups.h' under ${with_cups} given with the --with-cups option.])
+      fi
     fi
     if test "x${with_cups_include}" != x; then
-      CUPS_CFLAGS="-I${with_cups_include}"
-      CUPS_FOUND=yes
+      AC_MSG_CHECKING([for cups headers])
+      if test -s "${with_cups_include}/cups/cups.h"; then
+        CUPS_CFLAGS="-I${with_cups_include}"
+        CUPS_FOUND=yes
+        AC_MSG_RESULT([$CUPS_FOUND])
+      else
+        AC_MSG_ERROR([Can't find 'cups/cups.h' under ${with_cups_include} given with the --with-cups-include option.])
+      fi
     fi
     if test "x$CUPS_FOUND" = xno; then
       # Are the cups headers installed in the default /usr/include location?
diff --git a/corba/.hgtags b/corba/.hgtags
index 9bd082d..4a5ada0 100644
--- a/corba/.hgtags
+++ b/corba/.hgtags
@@ -342,3 +342,4 @@
 10a482b863582376d4ca229090334b23b05159fc jdk-9+97
 ea285530245cf4e0edf0479121a41347d3030eba jdk-9+98
 180212ee1d8710691ba9944593dfc1ff3e4f1532 jdk-9+99
+791d0d3ac0138faeb6110bd840a4545bc1950df2 jdk-9+100
diff --git a/hotspot/.hgtags b/hotspot/.hgtags
index ac6cea4..271e540 100644
--- a/hotspot/.hgtags
+++ b/hotspot/.hgtags
@@ -502,3 +502,4 @@
 de592ea5f7ba0f8a8c5afc03bd169f7690c72b6f jdk-9+97
 e5b1a23be1e105417ba1c4c576ab373eb3fa2c2b jdk-9+98
 f008e8cc10d5b3212fb22d58c96fa01d38654f19 jdk-9+99
+bdb0acafc63c42e84d9d8195bf2e2b25ee9c3306 jdk-9+100
diff --git a/hotspot/src/share/vm/prims/jvm.cpp b/hotspot/src/share/vm/prims/jvm.cpp
index 463b421..b416aa7 100644
--- a/hotspot/src/share/vm/prims/jvm.cpp
+++ b/hotspot/src/share/vm/prims/jvm.cpp
@@ -285,7 +285,7 @@
   return os::javaTimeNanos();
 JVM_END
 
-// The function below is actually exposed by sun.misc.VM and not
+// The function below is actually exposed by jdk.internal.misc.VM and not
 // java.lang.System, but we choose to keep it here so that it stays next
 // to JVM_CurrentTimeMillis and JVM_NanoTime
 
diff --git a/jaxp/.hgtags b/jaxp/.hgtags
index a88e7f5..b016abb 100644
--- a/jaxp/.hgtags
+++ b/jaxp/.hgtags
@@ -342,3 +342,4 @@
 9c107c050335d7ee63b2a8b38ca5d498f19713a2 jdk-9+97
 52b01339235f24c93b679bd6b8fb36a1072ad0ac jdk-9+98
 52774b544850c791f1d1c67db2601b33739b18c9 jdk-9+99
+d45bcd374f6057851e3c2dcd45607cd362afadfa jdk-9+100
diff --git a/jaxws/.hgtags b/jaxws/.hgtags
index 26b9274..4f84f88 100644
--- a/jaxws/.hgtags
+++ b/jaxws/.hgtags
@@ -345,3 +345,4 @@
 7293db4716ee25b814e14f738b9acfb85700e3fa jdk-9+97
 67c84077edc3db6b24998b35970b37c01aae985e jdk-9+98
 97b31ca0dd77483cf20ff99a033a455673639578 jdk-9+99
+d0a97e57d2336238edf6a4cd60aafe67deb7258d jdk-9+100
diff --git a/jdk/.hgtags b/jdk/.hgtags
index 2af851e..9608d22 100644
--- a/jdk/.hgtags
+++ b/jdk/.hgtags
@@ -342,3 +342,4 @@
 fdd84b2265ddce7f50e084b7c8635189bba6f012 jdk-9+97
 f86ee68d1107dad41a27efc34306e0e56244a12e jdk-9+98
 e1a789be1535741274c9779f4d4ca3495196b5c3 jdk-9+99
+3d452840f48299a36842760d17c0c8402f0e1266 jdk-9+100
diff --git a/jdk/make/lib/NioLibraries.gmk b/jdk/make/lib/NioLibraries.gmk
index bc021b1..6b7d305 100644
--- a/jdk/make/lib/NioLibraries.gmk
+++ b/jdk/make/lib/NioLibraries.gmk
@@ -58,7 +58,10 @@
 ifeq ($(OPENJDK_TARGET_OS), aix)
   BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/make/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS)
   BUILD_LIBNIO_EXFILES += \
-      NativeThread.c
+      /NativeThread.c
+  # Notice: we really need the leading slash here because otherwise every
+  # FILE_NAME in EXCLUDE_FILES will actually match any file ending in FILE_NAME
+  # (e.g. 'NativeThread.c' will also exclude 'AixNativeThread.c').
 endif
 
 $(eval $(call SetupNativeCompilation,BUILD_LIBNIO, \
diff --git a/jdk/make/mapfiles/libjava/mapfile-vers b/jdk/make/mapfiles/libjava/mapfile-vers
index dd7e58a..3ec9f53 100644
--- a/jdk/make/mapfiles/libjava/mapfile-vers
+++ b/jdk/make/mapfiles/libjava/mapfile-vers
@@ -216,6 +216,7 @@
 		Java_java_lang_SecurityManager_getClassContext;
 		Java_java_lang_Shutdown_halt0;
 		Java_java_lang_String_intern;
+		Java_java_lang_StringCoding_err;
 		Java_java_lang_StringUTF16_isBigEndian;
 		Java_java_lang_System_identityHashCode;
 		Java_java_lang_System_initProperties;
@@ -243,8 +244,6 @@
 		Java_java_util_TimeZone_getSystemTimeZoneID;
 		Java_java_util_TimeZone_getSystemGMTOffsetID;
 		Java_java_util_concurrent_atomic_AtomicLong_VMSupportsCS8;
-		Java_sun_misc_MessageUtils_toStderr;
-		Java_sun_misc_MessageUtils_toStdout;
 		Java_sun_misc_NativeSignalHandler_handle0;
 		Java_sun_misc_Signal_findSignal;
 		Java_sun_misc_Signal_handle0;
@@ -274,12 +273,12 @@
 		Java_sun_reflect_Reflection_getClassAccessFlags;
                 Java_sun_misc_Version_getJdkVersionInfo;
                 Java_sun_misc_Version_getJvmVersionInfo;
-		Java_sun_misc_VM_latestUserDefinedLoader;
-                Java_sun_misc_VM_getuid;
-                Java_sun_misc_VM_geteuid;
-                Java_sun_misc_VM_getgid;
-                Java_sun_misc_VM_getegid;
-                Java_sun_misc_VM_initialize;
+		Java_jdk_internal_misc_VM_latestUserDefinedLoader;
+                Java_jdk_internal_misc_VM_getuid;
+                Java_jdk_internal_misc_VM_geteuid;
+                Java_jdk_internal_misc_VM_getgid;
+                Java_jdk_internal_misc_VM_getegid;
+                Java_jdk_internal_misc_VM_initialize;
 		Java_sun_misc_VMSupport_initAgentProperties;
 		Java_sun_misc_VMSupport_getVMTemporaryDirectory;
 
diff --git a/jdk/make/src/classes/build/tools/dtdbuilder/DTDParser.java b/jdk/make/src/classes/build/tools/dtdbuilder/DTDParser.java
index 753007a..0dee68e 100644
--- a/jdk/make/src/classes/build/tools/dtdbuilder/DTDParser.java
+++ b/jdk/make/src/classes/build/tools/dtdbuilder/DTDParser.java
@@ -35,8 +35,6 @@
 import java.util.BitSet;
 import java.text.MessageFormat;
 
-import sun.misc.MessageUtils;
-
 /**
  * A parser for DTDs. This parser roughly corresponds to the
  * rules specified in "The SGML Handbook" by Charles F. Goldfarb.
diff --git a/jdk/src/java.base/share/classes/java/io/ObjectInputStream.java b/jdk/src/java.base/share/classes/java/io/ObjectInputStream.java
index 779257e..d739bc4 100644
--- a/jdk/src/java.base/share/classes/java/io/ObjectInputStream.java
+++ b/jdk/src/java.base/share/classes/java/io/ObjectInputStream.java
@@ -2135,7 +2135,7 @@
      * corresponding modifications to the above class.
      */
     private static ClassLoader latestUserDefinedLoader() {
-        return sun.misc.VM.latestUserDefinedLoader();
+        return jdk.internal.misc.VM.latestUserDefinedLoader();
     }
 
     /**
diff --git a/jdk/src/java.base/share/classes/java/lang/Class.java b/jdk/src/java.base/share/classes/java/lang/Class.java
index 013b584..af75faf 100644
--- a/jdk/src/java.base/share/classes/java/lang/Class.java
+++ b/jdk/src/java.base/share/classes/java/lang/Class.java
@@ -56,6 +56,7 @@
 import java.util.Objects;
 import java.util.StringJoiner;
 import jdk.internal.misc.Unsafe;
+import jdk.internal.misc.VM;
 import jdk.internal.HotSpotIntrinsicCandidate;
 import sun.reflect.CallerSensitive;
 import sun.reflect.ConstantPool;
@@ -360,9 +361,9 @@
             // Reflective call to get caller class is only needed if a security manager
             // is present.  Avoid the overhead of making this call otherwise.
             caller = Reflection.getCallerClass();
-            if (sun.misc.VM.isSystemDomainLoader(loader)) {
+            if (VM.isSystemDomainLoader(loader)) {
                 ClassLoader ccl = ClassLoader.getClassLoader(caller);
-                if (!sun.misc.VM.isSystemDomainLoader(ccl)) {
+                if (!VM.isSystemDomainLoader(ccl)) {
                     sm.checkPermission(
                         SecurityConstants.GET_CLASSLOADER_PERMISSION);
                 }
diff --git a/jdk/src/java.base/share/classes/java/lang/Integer.java b/jdk/src/java.base/share/classes/java/lang/Integer.java
index e34ae9d..11afbef 100644
--- a/jdk/src/java.base/share/classes/java/lang/Integer.java
+++ b/jdk/src/java.base/share/classes/java/lang/Integer.java
@@ -28,6 +28,7 @@
 import java.lang.annotation.Native;
 import java.util.Objects;
 import jdk.internal.HotSpotIntrinsicCandidate;
+import jdk.internal.misc.VM;
 
 import static java.lang.String.COMPACT_STRINGS;
 import static java.lang.String.LATIN1;
@@ -1018,7 +1019,7 @@
      * may be controlled by the {@code -XX:AutoBoxCacheMax=<size>} option.
      * During VM initialization, java.lang.Integer.IntegerCache.high property
      * may be set and saved in the private system properties in the
-     * sun.misc.VM class.
+     * jdk.internal.misc.VM class.
      */
 
     private static class IntegerCache {
@@ -1030,7 +1031,7 @@
             // high value may be configured by property
             int h = 127;
             String integerCacheHighPropValue =
-                sun.misc.VM.getSavedProperty("java.lang.Integer.IntegerCache.high");
+                VM.getSavedProperty("java.lang.Integer.IntegerCache.high");
             if (integerCacheHighPropValue != null) {
                 try {
                     int i = parseInt(integerCacheHighPropValue);
diff --git a/jdk/src/java.base/share/classes/java/lang/StackStreamFactory.java b/jdk/src/java.base/share/classes/java/lang/StackStreamFactory.java
index 34c60a7..dcb471c 100644
--- a/jdk/src/java.base/share/classes/java/lang/StackStreamFactory.java
+++ b/jdk/src/java.base/share/classes/java/lang/StackStreamFactory.java
@@ -24,7 +24,7 @@
  */
 package java.lang;
 
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 import java.io.PrintStream;
 import java.lang.StackWalker.Option;
diff --git a/jdk/src/java.base/share/classes/java/lang/StringCoding.java b/jdk/src/java.base/share/classes/java/lang/StringCoding.java
index b1e25d5..fe87537 100644
--- a/jdk/src/java.base/share/classes/java/lang/StringCoding.java
+++ b/jdk/src/java.base/share/classes/java/lang/StringCoding.java
@@ -39,7 +39,6 @@
 import java.nio.charset.UnsupportedCharsetException;
 import java.util.Arrays;
 import jdk.internal.HotSpotIntrinsicCandidate;
-import sun.misc.MessageUtils;
 import sun.nio.cs.HistoricallyNamedCharset;
 import sun.nio.cs.ArrayDecoder;
 import sun.nio.cs.ArrayEncoder;
@@ -106,11 +105,11 @@
 
     private static void warnUnsupportedCharset(String csn) {
         if (warnUnsupportedCharset) {
-            // Use sun.misc.MessageUtils rather than the Logging API or
-            // System.err since this method may be called during VM
-            // initialization before either is available.
-            MessageUtils.err("WARNING: Default charset " + csn +
-                             " not supported, using ISO-8859-1 instead");
+            // Use err(String) rather than the Logging API or System.err
+            // since this method may be called during VM initialization
+            // before either is available.
+            err("WARNING: Default charset " + csn +
+                " not supported, using ISO-8859-1 instead\n");
             warnUnsupportedCharset = false;
         }
     }
@@ -341,10 +340,9 @@
         try {
             return decode("ISO-8859-1", ba, off, len);
         } catch (UnsupportedEncodingException x) {
-            // If this code is hit during VM initialization, MessageUtils is
+            // If this code is hit during VM initialization, err(String) is
             // the only way we will be able to get any kind of error message.
-            MessageUtils.err("ISO-8859-1 charset not available: "
-                             + x.toString());
+            err("ISO-8859-1 charset not available: " + x.toString() + "\n");
             // If we can not find ISO-8859-1 (a required encoding) then things
             // are seriously wrong with the installation.
             System.exit(1);
@@ -653,14 +651,20 @@
         try {
             return encode("ISO-8859-1", coder, val);
         } catch (UnsupportedEncodingException x) {
-            // If this code is hit during VM initialization, MessageUtils is
+            // If this code is hit during VM initialization, err(String) is
             // the only way we will be able to get any kind of error message.
-            MessageUtils.err("ISO-8859-1 charset not available: "
-                             + x.toString());
+            err("ISO-8859-1 charset not available: " + x.toString() + "\n");
             // If we can not find ISO-8859-1 (a required encoding) then things
             // are seriously wrong with the installation.
             System.exit(1);
             return null;
         }
     }
+
+    /**
+     *  Print a message directly to stderr, bypassing all character conversion
+     *  methods.
+     *  @param msg  message to print
+     */
+    private static native void err(String msg);
 }
diff --git a/jdk/src/java.base/share/classes/java/lang/System.java b/jdk/src/java.base/share/classes/java/lang/System.java
index ea3ad40..8ea7958 100644
--- a/jdk/src/java.base/share/classes/java/lang/System.java
+++ b/jdk/src/java.base/share/classes/java/lang/System.java
@@ -46,6 +46,7 @@
 import jdk.internal.HotSpotIntrinsicCandidate;
 import jdk.internal.misc.JavaLangAccess;;
 import jdk.internal.misc.SharedSecrets;;
+import jdk.internal.misc.VM;
 import jdk.internal.logger.LoggerFinderLoader;
 import jdk.internal.logger.LazyLoggers;
 import jdk.internal.logger.LocalizedLoggerWrapper;
@@ -1817,12 +1818,12 @@
         // removed from the system properties.
         //
         // See java.lang.Integer.IntegerCache and the
-        // sun.misc.VM.saveAndRemoveProperties method for example.
+        // VM.saveAndRemoveProperties method for example.
         //
         // Save a private copy of the system properties object that
         // can only be accessed by the internal implementation.  Remove
         // certain system properties that are not intended for public access.
-        sun.misc.VM.saveAndRemoveProperties(props);
+        VM.saveAndRemoveProperties(props);
 
 
         lineSeparator = props.getProperty("line.separator");
@@ -1846,7 +1847,7 @@
         // set for the class libraries. Currently this is no-op everywhere except
         // for Windows where the process-wide error mode is set before the java.io
         // classes are used.
-        sun.misc.VM.initializeOSEnvironment();
+        VM.initializeOSEnvironment();
 
         // The main thread is not added to its thread group in the same
         // way as other threads; we must do it ourselves here.
@@ -1857,10 +1858,10 @@
         setJavaLangAccess();
 
         // Subsystems that are invoked during initialization can invoke
-        // sun.misc.VM.isBooted() in order to avoid doing things that should
+        // VM.isBooted() in order to avoid doing things that should
         // wait until the application class loader has been set up.
         // IMPORTANT: Ensure that this remains the last initialization action!
-        sun.misc.VM.booted();
+        VM.booted();
     }
 
     private static void setJavaLangAccess() {
diff --git a/jdk/src/java.base/share/classes/java/lang/Thread.java b/jdk/src/java.base/share/classes/java/lang/Thread.java
index 56935ea..eb47a05 100644
--- a/jdk/src/java.base/share/classes/java/lang/Thread.java
+++ b/jdk/src/java.base/share/classes/java/lang/Thread.java
@@ -1869,7 +1869,7 @@
      */
     public State getState() {
         // get current thread state
-        return sun.misc.VM.toThreadState(threadStatus);
+        return jdk.internal.misc.VM.toThreadState(threadStatus);
     }
 
     // Added in JSR-166
diff --git a/jdk/src/java.base/share/classes/java/lang/ThreadGroup.java b/jdk/src/java.base/share/classes/java/lang/ThreadGroup.java
index eda2e7d..e477800 100644
--- a/jdk/src/java.base/share/classes/java/lang/ThreadGroup.java
+++ b/jdk/src/java.base/share/classes/java/lang/ThreadGroup.java
@@ -27,7 +27,7 @@
 
 import java.io.PrintStream;
 import java.util.Arrays;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 /**
  * A thread group represents a set of threads. In addition, a thread
diff --git a/jdk/src/java.base/share/classes/java/lang/Throwable.java b/jdk/src/java.base/share/classes/java/lang/Throwable.java
index 68dc204..9d5f547 100644
--- a/jdk/src/java.base/share/classes/java/lang/Throwable.java
+++ b/jdk/src/java.base/share/classes/java/lang/Throwable.java
@@ -24,7 +24,7 @@
  */
 
 package java.lang;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 import  java.io.*;
 import  java.util.*;
diff --git a/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java b/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java
index 0c8317d..1448ded 100644
--- a/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java
@@ -1836,7 +1836,7 @@
                 return false;
             }
             ClassLoader loader = defc.getClassLoader();
-            if (!sun.misc.VM.isSystemDomainLoader(loader)) {
+            if (!jdk.internal.misc.VM.isSystemDomainLoader(loader)) {
                 ClassLoader sysl = ClassLoader.getSystemClassLoader();
                 boolean found = false;
                 while (sysl != null) {
diff --git a/jdk/src/java.base/share/classes/java/lang/ref/Finalizer.java b/jdk/src/java.base/share/classes/java/lang/ref/Finalizer.java
index 221d07e..ead17ef 100644
--- a/jdk/src/java.base/share/classes/java/lang/ref/Finalizer.java
+++ b/jdk/src/java.base/share/classes/java/lang/ref/Finalizer.java
@@ -29,7 +29,7 @@
 import java.security.AccessController;
 import jdk.internal.misc.JavaLangAccess;
 import jdk.internal.misc.SharedSecrets;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 final class Finalizer extends FinalReference<Object> { /* Package-private; must be in
                                                           same package as the Reference
diff --git a/jdk/src/java.base/share/classes/java/lang/ref/ReferenceQueue.java b/jdk/src/java.base/share/classes/java/lang/ref/ReferenceQueue.java
index dcd50ae..61f4379 100644
--- a/jdk/src/java.base/share/classes/java/lang/ref/ReferenceQueue.java
+++ b/jdk/src/java.base/share/classes/java/lang/ref/ReferenceQueue.java
@@ -26,6 +26,7 @@
 package java.lang.ref;
 
 import java.util.function.Consumer;
+import jdk.internal.misc.VM;
 
 /**
  * Reference queues, to which registered reference objects are appended by the
@@ -73,7 +74,7 @@
             // Volatiles ensure ordering.
             r.queue = ENQUEUED;
             if (r instanceof FinalReference) {
-                sun.misc.VM.addFinalRefCount(1);
+                VM.addFinalRefCount(1);
             }
             lock.notifyAll();
             return true;
@@ -93,7 +94,7 @@
             r.next = r;
             queueLength--;
             if (r instanceof FinalReference) {
-                sun.misc.VM.addFinalRefCount(-1);
+                VM.addFinalRefCount(-1);
             }
             return r;
         }
diff --git a/jdk/src/java.base/share/classes/java/lang/reflect/Proxy.java b/jdk/src/java.base/share/classes/java/lang/reflect/Proxy.java
index 765713a..f6c6ebd 100644
--- a/jdk/src/java.base/share/classes/java/lang/reflect/Proxy.java
+++ b/jdk/src/java.base/share/classes/java/lang/reflect/Proxy.java
@@ -34,7 +34,7 @@
 import java.util.Objects;
 import java.util.concurrent.atomic.AtomicLong;
 import java.util.function.BiFunction;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 import sun.reflect.CallerSensitive;
 import sun.reflect.Reflection;
 import sun.reflect.misc.ReflectUtil;
diff --git a/jdk/src/java.base/share/classes/java/net/URI.java b/jdk/src/java.base/share/classes/java/net/URI.java
index e896568..9bf575b 100644
--- a/jdk/src/java.base/share/classes/java/net/URI.java
+++ b/jdk/src/java.base/share/classes/java/net/URI.java
@@ -2059,7 +2059,7 @@
 
         // 5.2 (2): Reference to current document (lone fragment)
         if ((child.scheme == null) && (child.authority == null)
-            && child.path.equals("") && (child.fragment != null)
+            && child.path.isEmpty() && (child.fragment != null)
             && (child.query == null)) {
             if ((base.fragment != null)
                 && child.fragment.equals(base.fragment)) {
@@ -2647,13 +2647,6 @@
     private static final long L_SCHEME = L_ALPHA | L_DIGIT | lowMask("+-.");
     private static final long H_SCHEME = H_ALPHA | H_DIGIT | highMask("+-.");
 
-    // uric_no_slash = unreserved | escaped | ";" | "?" | ":" | "@" |
-    //                 "&" | "=" | "+" | "$" | ","
-    private static final long L_URIC_NO_SLASH
-        = L_UNRESERVED | L_ESCAPED | lowMask(";?:@&=+$,");
-    private static final long H_URIC_NO_SLASH
-        = H_UNRESERVED | H_ESCAPED | highMask(";?:@&=+$,");
-
     // scope_id = alpha | digit | "_" | "."
     private static final long L_SCOPE_ID
         = L_ALPHANUM | lowMask("_.");
@@ -2884,23 +2877,10 @@
 
         // -- Simple access to the input string --
 
-        // Return a substring of the input string
-        //
-        private String substring(int start, int end) {
-            return input.substring(start, end);
-        }
-
-        // Return the char at position p,
-        // assuming that p < input.length()
-        //
-        private char charAt(int p) {
-            return input.charAt(p);
-        }
-
         // Tells whether start < end and, if so, whether charAt(start) == c
         //
         private boolean at(int start, int end, char c) {
-            return (start < end) && (charAt(start) == c);
+            return (start < end) && (input.charAt(start) == c);
         }
 
         // Tells whether start + s.length() < end and, if so,
@@ -2913,7 +2893,7 @@
                 return false;
             int i = 0;
             while (i < sn) {
-                if (charAt(p++) != s.charAt(i)) {
+                if (input.charAt(p++) != s.charAt(i)) {
                     break;
                 }
                 i++;
@@ -2953,7 +2933,7 @@
         // start position.
         //
         private int scan(int start, int end, char c) {
-            if ((start < end) && (charAt(start) == c))
+            if ((start < end) && (input.charAt(start) == c))
                 return start + 1;
             return start;
         }
@@ -2968,7 +2948,7 @@
         private int scan(int start, int end, String err, String stop) {
             int p = start;
             while (p < end) {
-                char c = charAt(p);
+                char c = input.charAt(p);
                 if (err.indexOf(c) >= 0)
                     return -1;
                 if (stop.indexOf(c) >= 0)
@@ -2978,6 +2958,23 @@
             return p;
         }
 
+        // Scan forward from the given start position.  Stop at the first char
+        // in the stop string (in which case the index of the preceding char is
+        // returned), or the end of the input string (in which case the length
+        // of the input string is returned).  May return the start position if
+        // nothing matches.
+        //
+        private int scan(int start, int end, String stop) {
+            int p = start;
+            while (p < end) {
+                char c = input.charAt(p);
+                if (stop.indexOf(c) >= 0)
+                    break;
+                p++;
+            }
+            return p;
+        }
+
         // Scan a potential escape sequence, starting at the given position,
         // with the given first char (i.e., charAt(start) == c).
         //
@@ -2992,8 +2989,8 @@
             if (c == '%') {
                 // Process escape pair
                 if ((p + 3 <= n)
-                    && match(charAt(p + 1), L_HEX, H_HEX)
-                    && match(charAt(p + 2), L_HEX, H_HEX)) {
+                    && match(input.charAt(p + 1), L_HEX, H_HEX)
+                    && match(input.charAt(p + 2), L_HEX, H_HEX)) {
                     return p + 3;
                 }
                 fail("Malformed escape pair", p);
@@ -3013,7 +3010,7 @@
         {
             int p = start;
             while (p < n) {
-                char c = charAt(p);
+                char c = input.charAt(p);
                 if (match(c, lowMask, highMask)) {
                     p++;
                     continue;
@@ -3067,13 +3064,13 @@
                     failExpecting("scheme name", 0);
                 checkChar(0, L_ALPHA, H_ALPHA, "scheme name");
                 checkChars(1, p, L_SCHEME, H_SCHEME, "scheme name");
-                scheme = substring(0, p);
+                scheme = input.substring(0, p);
                 p++;                    // Skip ':'
                 ssp = p;
                 if (at(p, n, '/')) {
                     p = parseHierarchical(p, n);
                 } else {
-                    int q = scan(p, n, "", "#");
+                    int q = scan(p, n, "#");
                     if (q <= p)
                         failExpecting("scheme-specific part", p);
                     checkChars(p, q, L_URIC, H_URIC, "opaque part");
@@ -3083,10 +3080,10 @@
                 ssp = 0;
                 p = parseHierarchical(0, n);
             }
-            schemeSpecificPart = substring(ssp, p);
+            schemeSpecificPart = input.substring(ssp, p);
             if (at(p, n, '#')) {
                 checkChars(p + 1, n, L_URIC, H_URIC, "fragment");
-                fragment = substring(p + 1, n);
+                fragment = input.substring(p + 1, n);
                 p = n;
             }
             if (p < n)
@@ -3113,7 +3110,7 @@
             int p = start;
             if (at(p, n, '/') && at(p + 1, n, '/')) {
                 p += 2;
-                int q = scan(p, n, "", "/?#");
+                int q = scan(p, n, "/?#");
                 if (q > p) {
                     p = parseAuthority(p, q);
                 } else if (q < n) {
@@ -3122,15 +3119,15 @@
                 } else
                     failExpecting("authority", p);
             }
-            int q = scan(p, n, "", "?#"); // DEVIATION: May be empty
+            int q = scan(p, n, "?#"); // DEVIATION: May be empty
             checkChars(p, q, L_PATH, H_PATH, "path");
-            path = substring(p, q);
+            path = input.substring(p, q);
             p = q;
             if (at(p, n, '?')) {
                 p++;
-                q = scan(p, n, "", "#");
+                q = scan(p, n, "#");
                 checkChars(p, q, L_URIC, H_URIC, "query");
-                query = substring(p, q);
+                query = input.substring(p, q);
                 p = q;
             }
             return p;
@@ -3154,7 +3151,7 @@
             boolean serverChars;
             boolean regChars;
 
-            if (scan(p, n, "", "]") > p) {
+            if (scan(p, n, "]") > p) {
                 // contains a literal IPv6 address, therefore % is allowed
                 serverChars = (scan(p, n, L_SERVER_PERCENT, H_SERVER_PERCENT) == n);
             } else {
@@ -3164,7 +3161,7 @@
 
             if (regChars && !serverChars) {
                 // Must be a registry-based authority
-                authority = substring(p, n);
+                authority = input.substring(p, n);
                 return n;
             }
 
@@ -3176,7 +3173,7 @@
                     q = parseServer(p, n);
                     if (q < n)
                         failExpecting("end of authority", q);
-                    authority = substring(p, n);
+                    authority = input.substring(p, n);
                 } catch (URISyntaxException x) {
                     // Undo results of failed parse
                     userInfo = null;
@@ -3198,7 +3195,7 @@
             if (q < n) {
                 if (regChars) {
                     // Registry-based authority
-                    authority = substring(p, n);
+                    authority = input.substring(p, n);
                 } else if (ex != null) {
                     // Re-throw exception; it was probably due to
                     // a malformed IPv6 address
@@ -3224,7 +3221,7 @@
             q = scan(p, n, "/?#", "@");
             if ((q >= p) && at(q, n, '@')) {
                 checkChars(p, q, L_USERINFO, H_USERINFO, "user info");
-                userInfo = substring(p, q);
+                userInfo = input.substring(p, q);
                 p = q + 1;              // Skip '@'
             }
 
@@ -3235,7 +3232,7 @@
                 q = scan(p, n, "/?#", "]");
                 if ((q > p) && at(q, n, ']')) {
                     // look for a "%" scope id
-                    int r = scan (p, q, "", "%");
+                    int r = scan (p, q, "%");
                     if (r > p) {
                         parseIPv6Reference(p, r);
                         if (r+1 == q) {
@@ -3246,7 +3243,7 @@
                     } else {
                         parseIPv6Reference(p, q);
                     }
-                    host = substring(p-1, q+1);
+                    host = input.substring(p-1, q+1);
                     p = q + 1;
                 } else {
                     failExpecting("closing bracket for IPv6 address", q);
@@ -3261,7 +3258,7 @@
             // port
             if (at(p, n, ':')) {
                 p++;
-                q = scan(p, n, "", "/");
+                q = scan(p, n, "/");
                 if (q > p) {
                     checkChars(p, q, L_DIGIT, H_DIGIT, "port number");
                     try {
@@ -3361,13 +3358,13 @@
                 // IPv4 address is followed by something - check that
                 // it's a ":" as this is the only valid character to
                 // follow an address.
-                if (charAt(p) != ':') {
+                if (input.charAt(p) != ':') {
                     p = -1;
                 }
             }
 
             if (p > start)
-                host = substring(start, p);
+                host = input.substring(start, p);
 
             return p;
         }
@@ -3393,7 +3390,7 @@
                     p = q;
                     q = scan(p, n, L_ALPHANUM | L_DASH, H_ALPHANUM | H_DASH);
                     if (q > p) {
-                        if (charAt(q - 1) == '-')
+                        if (input.charAt(q - 1) == '-')
                             fail("Illegal character in hostname", q - 1);
                         p = q;
                     }
@@ -3412,11 +3409,11 @@
 
             // for a fully qualified hostname check that the rightmost
             // label starts with an alpha character.
-            if (l > start && !match(charAt(l), L_ALPHA, H_ALPHA)) {
+            if (l > start && !match(input.charAt(l), L_ALPHA, H_ALPHA)) {
                 fail("Illegal character in hostname", l);
             }
 
-            host = substring(start, p);
+            host = input.substring(start, p);
             return p;
         }
 
diff --git a/jdk/src/java.base/share/classes/java/net/URL.java b/jdk/src/java.base/share/classes/java/net/URL.java
index 73e4888..e8a6941 100644
--- a/jdk/src/java.base/share/classes/java/net/URL.java
+++ b/jdk/src/java.base/share/classes/java/net/URL.java
@@ -1242,7 +1242,7 @@
     private static ThreadLocal<Object> gate = new ThreadLocal<>();
 
     private static URLStreamHandler lookupViaProviders(final String protocol) {
-        if (!sun.misc.VM.isBooted())
+        if (!jdk.internal.misc.VM.isBooted())
             return null;
 
         if (gate.get() != null)
diff --git a/jdk/src/java.base/share/classes/java/net/URLConnection.java b/jdk/src/java.base/share/classes/java/net/URLConnection.java
index 0fe1827..87f4378 100644
--- a/jdk/src/java.base/share/classes/java/net/URLConnection.java
+++ b/jdk/src/java.base/share/classes/java/net/URLConnection.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1567,6 +1567,11 @@
             }
         }
 
+        if ((c1 == 0x49 && c2 == 0x49 && c3 == 0x2a && c4 == 0x00)
+            || (c1 == 0x4d && c2 == 0x4d && c3 == 0x00 && c4 == 0x2a)) {
+            return "image/tiff";
+        }
+
         if (c1 == 0xD0 && c2 == 0xCF && c3 == 0x11 && c4 == 0xE0 &&
             c5 == 0xA1 && c6 == 0xB1 && c7 == 0x1A && c8 == 0xE1) {
 
diff --git a/jdk/src/java.base/share/classes/java/nio/Bits.java b/jdk/src/java.base/share/classes/java/nio/Bits.java
index 724fb0c..09623ea 100644
--- a/jdk/src/java.base/share/classes/java/nio/Bits.java
+++ b/jdk/src/java.base/share/classes/java/nio/Bits.java
@@ -31,7 +31,7 @@
 import jdk.internal.misc.JavaLangRefAccess;
 import jdk.internal.misc.SharedSecrets;
 import jdk.internal.misc.Unsafe;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 /**
  * Access to bits, native and otherwise.
diff --git a/jdk/src/java.base/share/classes/java/nio/Direct-X-Buffer.java.template b/jdk/src/java.base/share/classes/java/nio/Direct-X-Buffer.java.template
index c2d8d8e..16e495a 100644
--- a/jdk/src/java.base/share/classes/java/nio/Direct-X-Buffer.java.template
+++ b/jdk/src/java.base/share/classes/java/nio/Direct-X-Buffer.java.template
@@ -30,7 +30,7 @@
 import java.io.FileDescriptor;
 import sun.misc.Cleaner;
 import jdk.internal.misc.Unsafe;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 import sun.nio.ch.DirectBuffer;
 
 
diff --git a/jdk/src/java.base/share/classes/java/nio/charset/Charset.java b/jdk/src/java.base/share/classes/java/nio/charset/Charset.java
index d48f5a9..de85b2f 100644
--- a/jdk/src/java.base/share/classes/java/nio/charset/Charset.java
+++ b/jdk/src/java.base/share/classes/java/nio/charset/Charset.java
@@ -43,6 +43,7 @@
 import java.util.ServiceConfigurationError;
 import java.util.SortedMap;
 import java.util.TreeMap;
+import jdk.internal.misc.VM;
 import sun.misc.ASCIICaseInsensitiveComparator;
 import sun.nio.cs.StandardCharsets;
 import sun.nio.cs.ThreadLocalCoders;
@@ -281,7 +282,7 @@
     static boolean atBugLevel(String bl) {              // package-private
         String level = bugLevel;
         if (level == null) {
-            if (!sun.misc.VM.isBooted())
+            if (!VM.isBooted())
                 return false;
             bugLevel = level = AccessController.doPrivileged(
                 new GetPropertyAction("sun.nio.cs.bugLevel", ""));
@@ -394,7 +395,7 @@
         // that loader to be prematurely initialized with incomplete
         // information.
         //
-        if (!sun.misc.VM.isBooted())
+        if (!VM.isBooted())
             return null;
 
         if (gate.get() != null)
@@ -445,7 +446,7 @@
     }
 
     private static Charset lookupExtendedCharset(String charsetName) {
-        if (!sun.misc.VM.isBooted())  // see lookupViaProviders()
+        if (!VM.isBooted())  // see lookupViaProviders()
             return null;
         CharsetProvider[] ecps = ExtendedProviderHolder.extendedProviders;
         for (CharsetProvider cp : ecps) {
diff --git a/jdk/src/java.base/share/classes/java/time/Clock.java b/jdk/src/java.base/share/classes/java/time/Clock.java
index 0d02c52..121afa3 100644
--- a/jdk/src/java.base/share/classes/java/time/Clock.java
+++ b/jdk/src/java.base/share/classes/java/time/Clock.java
@@ -69,7 +69,7 @@
 import java.io.Serializable;
 import java.util.Objects;
 import java.util.TimeZone;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 /**
  * A clock providing access to the current instant, date and time using a time-zone.
diff --git a/jdk/src/java.base/share/classes/java/time/Duration.java b/jdk/src/java.base/share/classes/java/time/Duration.java
index 334bfa0..646d710 100644
--- a/jdk/src/java.base/share/classes/java/time/Duration.java
+++ b/jdk/src/java.base/share/classes/java/time/Duration.java
@@ -1194,6 +1194,7 @@
      * This instance is immutable and unaffected by this method call.
      *
      * @return the whole seconds part of the length of the duration, positive or negative
+     * @since 9
      */
     public long toSeconds() {
         return seconds;
@@ -1243,6 +1244,7 @@
      * This instance is immutable and unaffected by this method call.
      *
      * @return the number of days in the duration, may be negative
+     * @since 9
      */
     public long toDaysPart(){
         return seconds / SECONDS_PER_DAY;
@@ -1258,6 +1260,7 @@
      * This instance is immutable and unaffected by this method call.
      *
      * @return the number of hours part in the duration, may be negative
+     * @since 9
      */
     public int toHoursPart(){
         return (int) (toHours() % 24);
@@ -1273,7 +1276,7 @@
      * This instance is immutable and unaffected by this method call.
      *
      * @return the number of minutes parts in the duration, may be negative
-     * may be negative
+     * @since 9
      */
     public int toMinutesPart(){
         return (int) (toMinutes() % MINUTES_PER_HOUR);
@@ -1289,6 +1292,7 @@
      * This instance is immutable and unaffected by this method call.
      *
      * @return the number of seconds parts in the duration, may be negative
+     * @since 9
      */
     public int toSecondsPart(){
         return (int) (seconds % SECONDS_PER_MINUTE);
@@ -1306,6 +1310,7 @@
      * This instance is immutable and unaffected by this method call.
      *
      * @return the number of milliseconds part of the duration.
+     * @since 9
      */
     public int toMillisPart(){
         return nanos / 1000_000;
@@ -1322,6 +1327,7 @@
      * This instance is immutable and unaffected by this method call.
      *
      * @return the nanoseconds within the second part of the length of the duration, from 0 to 999,999,999
+     * @since 9
      */
     public int toNanosPart(){
         return nanos;
@@ -1385,7 +1391,7 @@
      * <p>
      * The format of the returned string will be {@code PTnHnMnS}, where n is
      * the relevant hours, minutes or seconds part of the duration.
-     * Any fractional seconds are placed after a decimal point i the seconds section.
+     * Any fractional seconds are placed after a decimal point in the seconds section.
      * If a section has a zero value, it is omitted.
      * The hours, minutes and seconds will all have the same sign.
      * <p>
@@ -1406,9 +1412,13 @@
         if (this == ZERO) {
             return "PT0S";
         }
-        long hours = seconds / SECONDS_PER_HOUR;
-        int minutes = (int) ((seconds % SECONDS_PER_HOUR) / SECONDS_PER_MINUTE);
-        int secs = (int) (seconds % SECONDS_PER_MINUTE);
+        long effectiveTotalSecs = seconds;
+        if (seconds < 0 && nanos > 0) {
+            effectiveTotalSecs++;
+        }
+        long hours = effectiveTotalSecs / SECONDS_PER_HOUR;
+        int minutes = (int) ((effectiveTotalSecs % SECONDS_PER_HOUR) / SECONDS_PER_MINUTE);
+        int secs = (int) (effectiveTotalSecs % SECONDS_PER_MINUTE);
         StringBuilder buf = new StringBuilder(24);
         buf.append("PT");
         if (hours != 0) {
@@ -1420,18 +1430,18 @@
         if (secs == 0 && nanos == 0 && buf.length() > 2) {
             return buf.toString();
         }
-        if (secs < 0 && nanos > 0) {
-            if (secs == -1) {
+        if (seconds < 0 && nanos > 0) {
+            if (secs == 0) {
                 buf.append("-0");
             } else {
-                buf.append(secs + 1);
+                buf.append(secs);
             }
         } else {
             buf.append(secs);
         }
         if (nanos > 0) {
             int pos = buf.length();
-            if (secs < 0) {
+            if (seconds < 0) {
                 buf.append(2 * NANOS_PER_SECOND - nanos);
             } else {
                 buf.append(nanos + NANOS_PER_SECOND);
diff --git a/jdk/src/java.base/share/classes/java/util/Calendar.java b/jdk/src/java.base/share/classes/java/util/Calendar.java
index 306362b..7665d84 100644
--- a/jdk/src/java.base/share/classes/java/util/Calendar.java
+++ b/jdk/src/java.base/share/classes/java/util/Calendar.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -2085,8 +2085,10 @@
 
         String calendarType = getCalendarType();
         int fieldValue = get(field);
-        // the standalone and narrow styles are supported only through CalendarDataProviders.
-        if (isStandaloneStyle(style) || isNarrowFormatStyle(style)) {
+        // the standalone/narrow styles and short era are supported only through
+        // CalendarNameProviders.
+        if (isStandaloneStyle(style) || isNarrowFormatStyle(style) ||
+            field == ERA && (style & SHORT) == SHORT) {
             String val = CalendarDataUtility.retrieveFieldValueName(calendarType,
                                                                     field, fieldValue,
                                                                     style, locale);
diff --git a/jdk/src/java.base/share/classes/java/util/JapaneseImperialCalendar.java b/jdk/src/java.base/share/classes/java/util/JapaneseImperialCalendar.java
index 6b12991..35c5009 100644
--- a/jdk/src/java.base/share/classes/java/util/JapaneseImperialCalendar.java
+++ b/jdk/src/java.base/share/classes/java/util/JapaneseImperialCalendar.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1037,14 +1037,16 @@
                 }
                 if (size < eras.length) {
                     int baseStyle = getBaseStyle(style);
-                    for (int i = size; i < eras.length; i++) {
-                        Era era = eras[i];
-                        if (baseStyle == ALL_STYLES || baseStyle == SHORT
-                                || baseStyle == NARROW_FORMAT) {
-                            names.put(era.getAbbreviation(), i);
-                        }
-                        if (baseStyle == ALL_STYLES || baseStyle == LONG) {
-                            names.put(era.getName(), i);
+                    for (int i = 0; i < eras.length; i++) {
+                        if (!names.values().contains(i)) {
+                            Era era = eras[i];
+                            if (baseStyle == ALL_STYLES || baseStyle == SHORT
+                                    || baseStyle == NARROW_FORMAT) {
+                                names.put(era.getAbbreviation(), i);
+                            }
+                            if (baseStyle == ALL_STYLES || baseStyle == LONG) {
+                                names.put(era.getName(), i);
+                            }
                         }
                     }
                 }
diff --git a/jdk/src/java.base/share/classes/java/util/zip/ZipFile.java b/jdk/src/java.base/share/classes/java/util/zip/ZipFile.java
index 9d9a776..31ff8ea 100644
--- a/jdk/src/java.base/share/classes/java/util/zip/ZipFile.java
+++ b/jdk/src/java.base/share/classes/java/util/zip/ZipFile.java
@@ -1251,7 +1251,7 @@
                     idx = getEntryNext(idx);
                 }
                 /* If not addSlash, or slash is already there, we are done */
-                if (!addSlash  || name[name.length - 1] == '/') {
+                if (!addSlash  || name.length == 0 || name[name.length - 1] == '/') {
                      return -1;
                 }
                 /* Add slash and try once more */
diff --git a/jdk/src/java.base/share/classes/jdk/Exported.java b/jdk/src/java.base/share/classes/jdk/Exported.java
deleted file mode 100644
index d67d8b3..0000000
--- a/jdk/src/java.base/share/classes/jdk/Exported.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package jdk;
-
-import java.lang.annotation.*;
-
-/**
-  * Indicates whether or not a JDK specific type or package is an
-  * exported part of the JDK suitable for use outside of the JDK
-  * implementation itself.
-  *
-  * This annotation should only be applied to types and packages
-  * <em>outside</em> of the Java SE namespaces of {@code java.*} and
-  * {@code javax.*} packages.  For example, certain portions of {@code
-  * com.sun.*} are official parts of the JDK meant to be generally
-  * usable while other portions of {@code com.sun.*} are not.  This
-  * annotation type allows those portions to be easily and
-  * programmatically distinguished.
-  *
-  * <p>If in one release a type or package is
-  * <code>@Exported(true)</code>, in a subsequent major release such a
-  * type or package can transition to <code>@Exported(false)</code>.
-  *
-  * <p>If a type or package is <code>@Exported(false)</code> in a
-  * release, it may be removed in a subsequent major release.
-  *
-  * <p>If a top-level type has an <code>@Exported</code> annotation,
-  * any nested member types with the top-level type should have an
-  * <code>@Exported</code> annotation with the same value.
-  *
-  * (In exceptional cases, if a nested type is going to be removed
-  * before its enclosing type, the nested type's could be
-  * <code>@Exported(false)</code> while its enclosing type was
-  * <code>@Exported(true)</code>.)
-  *
-  * Likewise, if a package has an <code>@Exported</code> annotation,
-  * top-level types within that package should also have an
-  * <code>@Exported</code> annotation.
-  *
-  * Sometimes a top-level type may have a different
-  * <code>@Exported</code> value than its package.
-  *
-  * @since 1.8
-  */
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.TYPE, ElementType.PACKAGE})
-@Exported
-public @interface Exported {
-    /**
-     * Whether or not the annotated type or package is an exported
-     * part of the JDK.
-     * @return whether or not the annotated type or package is an exported
-     * part of the JDK
-     */
-    boolean value() default true;
-}
diff --git a/jdk/src/java.base/share/classes/jdk/internal/logger/BootstrapLogger.java b/jdk/src/java.base/share/classes/jdk/internal/logger/BootstrapLogger.java
index 813c478..bf2bccf 100644
--- a/jdk/src/java.base/share/classes/jdk/internal/logger/BootstrapLogger.java
+++ b/jdk/src/java.base/share/classes/jdk/internal/logger/BootstrapLogger.java
@@ -48,7 +48,7 @@
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.concurrent.TimeUnit;
 import sun.misc.InnocuousThread;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 import sun.util.logging.PlatformLogger;
 import jdk.internal.logger.LazyLoggers.LazyLoggerAccessor;
 
diff --git a/jdk/src/java.base/share/classes/jdk/internal/logger/LazyLoggers.java b/jdk/src/java.base/share/classes/jdk/internal/logger/LazyLoggers.java
index c54fc1a..04b64ea 100644
--- a/jdk/src/java.base/share/classes/jdk/internal/logger/LazyLoggers.java
+++ b/jdk/src/java.base/share/classes/jdk/internal/logger/LazyLoggers.java
@@ -32,7 +32,7 @@
 import java.lang.System.Logger;
 import java.lang.ref.WeakReference;
 import java.util.Objects;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 import sun.util.logging.PlatformLogger;
 
 /**
diff --git a/jdk/src/java.base/share/classes/jdk/internal/misc/Unsafe.java b/jdk/src/java.base/share/classes/jdk/internal/misc/Unsafe.java
index 83bb4f3..9176784 100644
--- a/jdk/src/java.base/share/classes/jdk/internal/misc/Unsafe.java
+++ b/jdk/src/java.base/share/classes/jdk/internal/misc/Unsafe.java
@@ -30,7 +30,7 @@
 
 import sun.reflect.CallerSensitive;
 import sun.reflect.Reflection;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 import jdk.internal.HotSpotIntrinsicCandidate;
 
diff --git a/jdk/src/java.base/share/classes/sun/misc/VM.java b/jdk/src/java.base/share/classes/jdk/internal/misc/VM.java
similarity index 99%
rename from jdk/src/java.base/share/classes/sun/misc/VM.java
rename to jdk/src/java.base/share/classes/jdk/internal/misc/VM.java
index 4c83dfa..04af46a 100644
--- a/jdk/src/java.base/share/classes/sun/misc/VM.java
+++ b/jdk/src/java.base/share/classes/jdk/internal/misc/VM.java
@@ -23,7 +23,7 @@
  * questions.
  */
 
-package sun.misc;
+package jdk.internal.misc;
 
 import static java.lang.Thread.State.*;
 import java.util.Properties;
diff --git a/jdk/src/java.base/share/classes/sun/misc/VMNotification.java b/jdk/src/java.base/share/classes/jdk/internal/misc/VMNotification.java
similarity index 98%
rename from jdk/src/java.base/share/classes/sun/misc/VMNotification.java
rename to jdk/src/java.base/share/classes/jdk/internal/misc/VMNotification.java
index bf4abef..3c7ad9b 100644
--- a/jdk/src/java.base/share/classes/sun/misc/VMNotification.java
+++ b/jdk/src/java.base/share/classes/jdk/internal/misc/VMNotification.java
@@ -23,7 +23,7 @@
  * questions.
  */
 
-package sun.misc;
+package jdk.internal.misc;
 
 /** @deprecated */
 @Deprecated
diff --git a/jdk/src/java.base/share/classes/jdk/net/ExtendedSocketOptions.java b/jdk/src/java.base/share/classes/jdk/net/ExtendedSocketOptions.java
index a44560b..12af5af 100644
--- a/jdk/src/java.base/share/classes/jdk/net/ExtendedSocketOptions.java
+++ b/jdk/src/java.base/share/classes/jdk/net/ExtendedSocketOptions.java
@@ -34,7 +34,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public final class ExtendedSocketOptions {
 
     private static class ExtSocketOption<T> implements SocketOption<T> {
diff --git a/jdk/src/java.base/share/classes/jdk/net/NetworkPermission.java b/jdk/src/java.base/share/classes/jdk/net/NetworkPermission.java
index df740da..285f305 100644
--- a/jdk/src/java.base/share/classes/jdk/net/NetworkPermission.java
+++ b/jdk/src/java.base/share/classes/jdk/net/NetworkPermission.java
@@ -61,7 +61,6 @@
  * @since 1.8
  */
 
-@jdk.Exported
 public final class NetworkPermission extends BasicPermission {
 
     private static final long serialVersionUID = -2012939586906722291L;
diff --git a/jdk/src/java.base/share/classes/jdk/net/SocketFlow.java b/jdk/src/java.base/share/classes/jdk/net/SocketFlow.java
index 3d673d1..12d1ed3 100644
--- a/jdk/src/java.base/share/classes/jdk/net/SocketFlow.java
+++ b/jdk/src/java.base/share/classes/jdk/net/SocketFlow.java
@@ -45,7 +45,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public class SocketFlow {
 
     private static final int UNSET = -1;
@@ -68,7 +67,6 @@
      *
      * @since 1.8
      */
-    @jdk.Exported
     public enum Status {
         /**
          * Set or get socket option has not been called yet. Status
diff --git a/jdk/src/java.base/share/classes/jdk/net/Sockets.java b/jdk/src/java.base/share/classes/jdk/net/Sockets.java
index bf096c0..1ba53f2 100644
--- a/jdk/src/java.base/share/classes/jdk/net/Sockets.java
+++ b/jdk/src/java.base/share/classes/jdk/net/Sockets.java
@@ -55,7 +55,6 @@
  *
  * @see java.nio.channels.NetworkChannel
  */
-@jdk.Exported
 public class Sockets {
 
     private static final HashMap<Class<?>,Set<SocketOption<?>>>
diff --git a/jdk/src/java.base/share/classes/jdk/net/package-info.java b/jdk/src/java.base/share/classes/jdk/net/package-info.java
index fd824f6..97b3ef1 100644
--- a/jdk/src/java.base/share/classes/jdk/net/package-info.java
+++ b/jdk/src/java.base/share/classes/jdk/net/package-info.java
@@ -30,5 +30,4 @@
  * @since 1.8
  */
 
-@jdk.Exported
 package jdk.net;
diff --git a/jdk/src/java.base/share/classes/sun/launcher/LauncherHelper.java b/jdk/src/java.base/share/classes/sun/launcher/LauncherHelper.java
index 5845979..3f9e366 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/LauncherHelper.java
+++ b/jdk/src/java.base/share/classes/sun/launcher/LauncherHelper.java
@@ -66,6 +66,7 @@
 import java.util.jar.Attributes;
 import java.util.jar.JarFile;
 import java.util.jar.Manifest;
+import jdk.internal.misc.VM;
 
 public enum LauncherHelper {
     INSTANCE;
@@ -86,9 +87,9 @@
     private static final String PROP_SETTINGS   = "Property settings:";
     private static final String LOCALE_SETTINGS = "Locale settings:";
 
-    // sync with java.c and sun.misc.VM
+    // sync with java.c and jdk.internal.misc.VM
     private static final String diagprop = "sun.java.launcher.diag";
-    static final boolean trace = sun.misc.VM.getSavedProperty(diagprop) != null;
+    static final boolean trace = VM.getSavedProperty(diagprop) != null;
 
     private static final String defaultBundleName =
             "sun.launcher.resources.launcher";
diff --git a/jdk/src/java.base/share/classes/sun/misc/MessageUtils.java b/jdk/src/java.base/share/classes/sun/misc/MessageUtils.java
deleted file mode 100644
index 75d5ee4..0000000
--- a/jdk/src/java.base/share/classes/sun/misc/MessageUtils.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Copyright (c) 1995, 2000, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.misc;
-
-/**
- * MessageUtils: miscellaneous utilities for handling error and status
- * properties and messages.
- *
- * @author Herb Jellinek
- */
-
-public class MessageUtils {
-    // can instantiate it for to allow less verbose use - via instance
-    // instead of classname
-
-    public MessageUtils() { }
-
-    public static String subst(String patt, String arg) {
-        String args[] = { arg };
-        return subst(patt, args);
-    }
-
-    public static String subst(String patt, String arg1, String arg2) {
-        String args[] = { arg1, arg2 };
-        return subst(patt, args);
-    }
-
-    public static String subst(String patt, String arg1, String arg2,
-                               String arg3) {
-        String args[] = { arg1, arg2, arg3 };
-        return subst(patt, args);
-    }
-
-    public static String subst(String patt, String args[]) {
-        StringBuilder result = new StringBuilder();
-        int len = patt.length();
-        for (int i = 0; i >= 0 && i < len; i++) {
-            char ch = patt.charAt(i);
-            if (ch == '%') {
-                if (i != len) {
-                    int index = Character.digit(patt.charAt(i + 1), 10);
-                    if (index == -1) {
-                        result.append(patt.charAt(i + 1));
-                        i++;
-                    } else if (index < args.length) {
-                        result.append(args[index]);
-                        i++;
-                    }
-                }
-            } else {
-                result.append(ch);
-            }
-        }
-        return result.toString();
-    }
-
-    public static String substProp(String propName, String arg) {
-        return subst(System.getProperty(propName), arg);
-    }
-
-    public static String substProp(String propName, String arg1, String arg2) {
-        return subst(System.getProperty(propName), arg1, arg2);
-    }
-
-    public static String substProp(String propName, String arg1, String arg2,
-                                   String arg3) {
-        return subst(System.getProperty(propName), arg1, arg2, arg3);
-    }
-
-    /**
-     *  Print a message directly to stderr, bypassing all the
-     *  character conversion methods.
-     *  @param msg   message to print
-     */
-    public static native void toStderr(String msg);
-
-    /**
-     *  Print a message directly to stdout, bypassing all the
-     *  character conversion methods.
-     *  @param msg   message to print
-     */
-    public static native void toStdout(String msg);
-
-
-    // Short forms of the above
-
-    public static void err(String s) {
-        toStderr(s + "\n");
-    }
-
-    public static void out(String s) {
-        toStdout(s + "\n");
-    }
-
-    // Print a stack trace to stderr
-    //
-    public static void where() {
-        Throwable t = new Throwable();
-        StackTraceElement[] es = t.getStackTrace();
-        for (int i = 1; i < es.length; i++)
-            toStderr("\t" + es[i].toString() + "\n");
-    }
-
-}
diff --git a/jdk/src/java.base/share/classes/sun/misc/Unsafe.java b/jdk/src/java.base/share/classes/sun/misc/Unsafe.java
index 6a4775a..e07dc31 100644
--- a/jdk/src/java.base/share/classes/sun/misc/Unsafe.java
+++ b/jdk/src/java.base/share/classes/sun/misc/Unsafe.java
@@ -32,6 +32,7 @@
 import sun.reflect.Reflection;
 
 import jdk.internal.HotSpotIntrinsicCandidate;
+import jdk.internal.misc.VM;
 
 
 /**
diff --git a/jdk/src/java.base/share/classes/sun/nio/ch/Util.java b/jdk/src/java.base/share/classes/sun/nio/ch/Util.java
index bb8df72..3b8d814 100644
--- a/jdk/src/java.base/share/classes/sun/nio/ch/Util.java
+++ b/jdk/src/java.base/share/classes/sun/nio/ch/Util.java
@@ -389,7 +389,7 @@
 
     static boolean atBugLevel(String bl) {              // package-private
         if (bugLevel == null) {
-            if (!sun.misc.VM.isBooted())
+            if (!jdk.internal.misc.VM.isBooted())
                 return false;
             String value = AccessController.doPrivileged(
                 new GetPropertyAction("sun.nio.ch.bugLevel"));
diff --git a/jdk/src/java.base/share/classes/sun/nio/cs/StandardCharsets.java.template b/jdk/src/java.base/share/classes/sun/nio/cs/StandardCharsets.java.template
index 63a5dc6..dd4d399 100644
--- a/jdk/src/java.base/share/classes/sun/nio/cs/StandardCharsets.java.template
+++ b/jdk/src/java.base/share/classes/sun/nio/cs/StandardCharsets.java.template
@@ -156,12 +156,12 @@
 
     private boolean initialized = false;
 
-    /*   provider the sun.nio.cs.map property fir sjis/ms932 mapping hack 
+    /*   provider the sun.nio.cs.map property fir sjis/ms932 mapping hack
      */
     private void init() {
         if (initialized)
             return;
-        if (!sun.misc.VM.isBooted())
+        if (!jdk.internal.misc.VM.isBooted())
             return;
         initialized = true;
 
diff --git a/jdk/src/java.base/share/classes/sun/reflect/Reflection.java b/jdk/src/java.base/share/classes/sun/reflect/Reflection.java
index c7c8ded..07ff364 100644
--- a/jdk/src/java.base/share/classes/sun/reflect/Reflection.java
+++ b/jdk/src/java.base/share/classes/sun/reflect/Reflection.java
@@ -29,6 +29,7 @@
 import java.util.HashMap;
 import java.util.Map;
 import jdk.internal.HotSpotIntrinsicCandidate;
+import jdk.internal.misc.VM;
 
 /** Common utility routines used by both java.lang and
     java.lang.reflect */
@@ -335,7 +336,7 @@
      */
     public static boolean isCallerSensitive(Method m) {
         final ClassLoader loader = m.getDeclaringClass().getClassLoader();
-        if (sun.misc.VM.isSystemDomainLoader(loader) || isExtClassLoader(loader))  {
+        if (VM.isSystemDomainLoader(loader) || isExtClassLoader(loader))  {
             return m.isAnnotationPresent(CallerSensitive.class);
         }
         return false;
diff --git a/jdk/src/java.base/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java b/jdk/src/java.base/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java
index 1bc3a04..a6e4995 100644
--- a/jdk/src/java.base/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java
+++ b/jdk/src/java.base/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java
@@ -417,14 +417,12 @@
             supports(HashAlgorithm.SHA1,        SignatureAlgorithm.ECDSA,
                     "SHA1withECDSA",        --p);
 
-            if (Security.getProvider("SunMSCAPI") == null) {
             supports(HashAlgorithm.SHA224,      SignatureAlgorithm.DSA,
                     "SHA224withDSA",        --p);
             supports(HashAlgorithm.SHA224,      SignatureAlgorithm.RSA,
                     "SHA224withRSA",        --p);
             supports(HashAlgorithm.SHA224,      SignatureAlgorithm.ECDSA,
                     "SHA224withECDSA",      --p);
-            }
 
             supports(HashAlgorithm.SHA256,      SignatureAlgorithm.DSA,
                     "SHA256withDSA",        --p);
diff --git a/jdk/src/java.base/share/native/libjava/RandomAccessFile.c b/jdk/src/java.base/share/native/libjava/RandomAccessFile.c
index a44d8f3..4c02741 100644
--- a/jdk/src/java.base/share/native/libjava/RandomAccessFile.c
+++ b/jdk/src/java.base/share/native/libjava/RandomAccessFile.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -103,23 +103,19 @@
 
 JNIEXPORT jlong JNICALL
 Java_java_io_RandomAccessFile_length(JNIEnv *env, jobject this) {
+
     FD fd;
-    jlong cur = jlong_zero;
-    jlong end = jlong_zero;
+    jlong length = jlong_zero;
 
     fd = GET_FD(this, raf_fd);
     if (fd == -1) {
         JNU_ThrowIOException(env, "Stream Closed");
         return -1;
     }
-    if ((cur = IO_Lseek(fd, 0L, SEEK_CUR)) == -1) {
-        JNU_ThrowIOExceptionWithLastError(env, "Seek failed");
-    } else if ((end = IO_Lseek(fd, 0L, SEEK_END)) == -1) {
-        JNU_ThrowIOExceptionWithLastError(env, "Seek failed");
-    } else if (IO_Lseek(fd, cur, SEEK_SET) == -1) {
-        JNU_ThrowIOExceptionWithLastError(env, "Seek failed");
+    if ((length = IO_GetLength(fd)) == -1) {
+        JNU_ThrowIOExceptionWithLastError(env, "GetLength failed");
     }
-    return end;
+    return length;
 }
 
 JNIEXPORT void JNICALL
diff --git a/jdk/src/java.base/share/native/libjava/MessageUtils.c b/jdk/src/java.base/share/native/libjava/StringCoding.c
similarity index 86%
rename from jdk/src/java.base/share/native/libjava/MessageUtils.c
rename to jdk/src/java.base/share/native/libjava/StringCoding.c
index 49315dc..9ca51cd 100644
--- a/jdk/src/java.base/share/native/libjava/MessageUtils.c
+++ b/jdk/src/java.base/share/native/libjava/StringCoding.c
@@ -26,11 +26,10 @@
 #include <stdlib.h>
 #include <jni.h>
 #include <jni_util.h>
-#include <jlong.h>
 #include <stdio.h>
 #include <jvm.h>
 
-#include "sun_misc_MessageUtils.h"
+#include "java_lang_StringCoding.h"
 
 static void
 printToFile(JNIEnv *env, jstring s, FILE *file)
@@ -41,8 +40,8 @@
     const jchar *sAsArray;
 
     if (s == NULL) {
-      s = (*env)->NewStringUTF(env, "null");
-      if (s == NULL) return;
+        JNU_ThrowNullPointerException(env, NULL);
+        return;
     }
 
     sAsArray = (*env)->GetStringChars(env, s, NULL);
@@ -70,13 +69,7 @@
 }
 
 JNIEXPORT void JNICALL
-Java_sun_misc_MessageUtils_toStderr(JNIEnv *env, jclass cls, jstring s)
+Java_java_lang_StringCoding_err(JNIEnv *env, jclass cls, jstring s)
 {
     printToFile(env, s, stderr);
 }
-
-JNIEXPORT void JNICALL
-Java_sun_misc_MessageUtils_toStdout(JNIEnv *env, jclass cls, jstring s)
-{
-    printToFile(env, s, stdout);
-}
diff --git a/jdk/src/java.base/share/native/libjava/VM.c b/jdk/src/java.base/share/native/libjava/VM.c
index 440ed45..61bae65 100644
--- a/jdk/src/java.base/share/native/libjava/VM.c
+++ b/jdk/src/java.base/share/native/libjava/VM.c
@@ -28,7 +28,7 @@
 #include "jvm.h"
 #include "jdk_util.h"
 
-#include "sun_misc_VM.h"
+#include "jdk_internal_misc_VM.h"
 
 /* Only register the performance-critical methods */
 static JNINativeMethod methods[] = {
@@ -36,12 +36,12 @@
 };
 
 JNIEXPORT jobject JNICALL
-Java_sun_misc_VM_latestUserDefinedLoader(JNIEnv *env, jclass cls) {
+Java_jdk_internal_misc_VM_latestUserDefinedLoader(JNIEnv *env, jclass cls) {
     return JVM_LatestUserDefinedLoader(env);
 }
 
 JNIEXPORT void JNICALL
-Java_sun_misc_VM_initialize(JNIEnv *env, jclass cls) {
+Java_jdk_internal_misc_VM_initialize(JNIEnv *env, jclass cls) {
     if (!JDK_InitJvmHandle()) {
         JNU_ThrowInternalError(env, "Handle for JVM not found for symbol lookup");
         return;
@@ -50,8 +50,8 @@
     // Registers implementations of native methods described in methods[]
     // above.
     // In particular, registers JVM_GetNanoTimeAdjustment as the implementation
-    // of the native sun.misc.VM.getNanoTimeAdjustment - avoiding the cost of
-    // introducing a Java_sun_misc_VM_getNanoTimeAdjustment  wrapper
+    // of the native VM.getNanoTimeAdjustment - avoiding the cost of
+    // introducing a Java_jdk_internal_misc_VM_getNanoTimeAdjustment wrapper
     (*env)->RegisterNatives(env, cls,
                             methods, sizeof(methods)/sizeof(methods[0]));
 }
diff --git a/jdk/src/java.base/unix/classes/sun/misc/OSEnvironment.java b/jdk/src/java.base/unix/classes/jdk/internal/misc/OSEnvironment.java
similarity index 92%
rename from jdk/src/java.base/unix/classes/sun/misc/OSEnvironment.java
rename to jdk/src/java.base/unix/classes/jdk/internal/misc/OSEnvironment.java
index 5004fd1..506273a 100644
--- a/jdk/src/java.base/unix/classes/sun/misc/OSEnvironment.java
+++ b/jdk/src/java.base/unix/classes/jdk/internal/misc/OSEnvironment.java
@@ -23,12 +23,12 @@
  * questions.
  */
 
-package sun.misc;
+package jdk.internal.misc;
 
 public class OSEnvironment {
 
     /*
-     * Initialize any miscellenous operating system settings that need to be set
+     * Initialize any miscellaneous operating system settings that need to be set
      * for the class libraries.
      */
     public static void initialize() {
diff --git a/jdk/src/java.base/unix/native/libjava/VM_md.c b/jdk/src/java.base/unix/native/libjava/VM_md.c
index 48a8e4a..fc6edf0 100644
--- a/jdk/src/java.base/unix/native/libjava/VM_md.c
+++ b/jdk/src/java.base/unix/native/libjava/VM_md.c
@@ -28,25 +28,25 @@
 
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_getuid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_getuid(JNIEnv *env, jclass thisclass) {
 
     return getuid();
 }
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_geteuid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_geteuid(JNIEnv *env, jclass thisclass) {
 
     return geteuid();
 }
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_getgid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_getgid(JNIEnv *env, jclass thisclass) {
 
     return getgid();
 }
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_getegid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_getegid(JNIEnv *env, jclass thisclass) {
 
     return getegid();
 }
diff --git a/jdk/src/java.base/unix/native/libjava/io_util_md.c b/jdk/src/java.base/unix/native/libjava/io_util_md.c
index ff7b9b8..0b2141b 100644
--- a/jdk/src/java.base/unix/native/libjava/io_util_md.c
+++ b/jdk/src/java.base/unix/native/libjava/io_util_md.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,7 +22,6 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
-
 #include "jni.h"
 #include "jni_util.h"
 #include "jvm.h"
@@ -219,3 +218,14 @@
     RESTARTABLE(ftruncate64(fd, length), result);
     return result;
 }
+
+jlong
+handleGetLength(FD fd)
+{
+    struct stat64 sb;
+    if (fstat64(fd, &sb) == 0) {
+        return sb.st_size;
+    } else {
+        return -1;
+    }
+}
diff --git a/jdk/src/java.base/unix/native/libjava/io_util_md.h b/jdk/src/java.base/unix/native/libjava/io_util_md.h
index b7b2573..f99b4a3 100644
--- a/jdk/src/java.base/unix/native/libjava/io_util_md.h
+++ b/jdk/src/java.base/unix/native/libjava/io_util_md.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -39,7 +39,7 @@
 ssize_t handleRead(FD fd, void *buf, jint len);
 jint handleAvailable(FD fd, jlong *pbytes);
 jint handleSetLength(FD fd, jlong length);
-
+jlong handleGetLength(FD fd);
 FD handleOpen(const char *path, int oflag, int mode);
 
 /*
@@ -72,6 +72,7 @@
 #define IO_Append handleWrite
 #define IO_Available handleAvailable
 #define IO_SetLength handleSetLength
+#define IO_GetLength handleGetLength
 
 #ifdef _ALLBSD_SOURCE
 #define open64 open
diff --git a/jdk/src/java.base/unix/native/libnio/ch/NativeThread.c b/jdk/src/java.base/unix/native/libnio/ch/NativeThread.c
index 5e2a78b..fd20eef 100644
--- a/jdk/src/java.base/unix/native/libnio/ch/NativeThread.c
+++ b/jdk/src/java.base/unix/native/libnio/ch/NativeThread.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -93,6 +93,10 @@
 #else
     ret = pthread_kill((pthread_t)thread, INTERRUPT_SIGNAL);
 #endif
+#ifdef MACOSX
+    if (ret != 0 && ret != ESRCH)
+#else
     if (ret != 0)
+#endif
         JNU_ThrowIOExceptionWithLastError(env, "Thread signal failed");
 }
diff --git a/jdk/src/java.base/windows/classes/sun/misc/OSEnvironment.java b/jdk/src/java.base/windows/classes/jdk/internal/misc/OSEnvironment.java
similarity index 92%
rename from jdk/src/java.base/windows/classes/sun/misc/OSEnvironment.java
rename to jdk/src/java.base/windows/classes/jdk/internal/misc/OSEnvironment.java
index 0e3cc4f..ffc8cf4 100644
--- a/jdk/src/java.base/windows/classes/sun/misc/OSEnvironment.java
+++ b/jdk/src/java.base/windows/classes/jdk/internal/misc/OSEnvironment.java
@@ -23,14 +23,14 @@
  * questions.
  */
 
-package sun.misc;
+package jdk.internal.misc;
 
 import sun.io.Win32ErrorMode;
 
 public class OSEnvironment {
 
     /*
-     * Initialize any miscellenous operating system settings that need to be set
+     * Initialize any miscellaneous operating system settings that need to be set
      * for the class libraries.
      * <p>
      * At this time only the process-wide error mode needs to be set.
diff --git a/jdk/src/java.base/windows/classes/sun/io/Win32ErrorMode.java b/jdk/src/java.base/windows/classes/sun/io/Win32ErrorMode.java
index 18626a7..324a04d 100644
--- a/jdk/src/java.base/windows/classes/sun/io/Win32ErrorMode.java
+++ b/jdk/src/java.base/windows/classes/sun/io/Win32ErrorMode.java
@@ -66,7 +66,7 @@
      * has completed.
      */
     public static void initialize() {
-        if (!sun.misc.VM.isBooted()) {
+        if (!jdk.internal.misc.VM.isBooted()) {
             String s = System.getProperty("sun.io.allowCriticalErrorMessageBox");
             if (s == null || s.equals(Boolean.FALSE.toString())) {
                 long mode = setErrorMode(0);
diff --git a/jdk/src/java.base/windows/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java b/jdk/src/java.base/windows/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java
index 537885a..71e999f 100644
--- a/jdk/src/java.base/windows/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java
+++ b/jdk/src/java.base/windows/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,8 +38,10 @@
 import java.util.Calendar;
 import java.util.Collections;
 import java.util.Currency;
+import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Locale;
+import java.util.Map;
 import java.util.ResourceBundle.Control;
 import java.util.Set;
 import java.util.TimeZone;
@@ -47,6 +49,7 @@
 import java.util.concurrent.ConcurrentMap;
 import java.util.concurrent.atomic.AtomicReferenceArray;
 import java.util.spi.CalendarDataProvider;
+import java.util.spi.CalendarNameProvider;
 import java.util.spi.CurrencyNameProvider;
 import java.util.spi.LocaleNameProvider;
 import sun.util.spi.CalendarProvider;
@@ -81,6 +84,9 @@
     private static final int DN_LOCALE_REGION   = 4;
     private static final int DN_LOCALE_VARIANT  = 5;
 
+    // Windows Calendar IDs
+    private static final int CAL_JAPAN  = 3;
+
     // Native Calendar ID to LDML calendar type map
     private static final String[] calIDToLDML = {
         "",
@@ -95,7 +101,8 @@
         "gregory_fr",
         "gregory_ar",
         "gregory_en",
-        "gregory_fr",
+        "gregory_fr", "", "", "", "", "", "", "", "", "", "",
+        "islamic-umalqura",
     };
 
     // Caches
@@ -362,6 +369,50 @@
         };
     }
 
+    public static CalendarNameProvider getCalendarNameProvider() {
+        return new CalendarNameProvider() {
+            @Override
+            public Locale[] getAvailableLocales() {
+                return getSupportedCalendarLocales();
+            }
+
+            @Override
+            public boolean isSupportedLocale(Locale locale) {
+                return isSupportedCalendarLocale(locale);
+            }
+
+            @Override
+            public String getDisplayName(String calendarType, int field,
+                int value, int style, Locale locale) {
+                String[] names = getCalendarDisplayStrings(removeExtensions(locale).toLanguageTag(),
+                            getCalendarIDFromLDMLType(calendarType), field, style);
+                if (names != null && value >= 0 && value < names.length) {
+                    return names[value];
+                } else {
+                    return null;
+                }
+            }
+
+            @Override
+            public Map<String, Integer> getDisplayNames(String calendarType,
+                int field, int style, Locale locale) {
+                Map<String, Integer> map = null;
+                String[] names = getCalendarDisplayStrings(removeExtensions(locale).toLanguageTag(),
+                            getCalendarIDFromLDMLType(calendarType), field, style);
+                if (names != null) {
+                    map = new HashMap<>();
+                    for (int value = 0; value < names.length; value++) {
+                        if (names[value] != null) {
+                            map.put(names[value], value);
+                        }
+                    }
+                    map = map.isEmpty() ? null : map;
+                }
+                return map;
+            }
+        };
+    }
+
     public static CalendarProvider getCalendarProvider() {
         return new CalendarProvider() {
             @Override
@@ -496,15 +547,7 @@
     }
 
     private static boolean isSupportedCalendarLocale(Locale locale) {
-        Locale base = locale;
-
-        if (base.hasExtensions() || base.getVariant() != "") {
-            // strip off extensions and variant.
-            base = new Locale.Builder()
-                            .setLocale(locale)
-                            .clearExtensions()
-                            .build();
-        }
+        Locale base = stripVariantAndExtensions(locale);
 
         if (!supportedLocaleSet.contains(base)) {
             return false;
@@ -569,11 +612,23 @@
     }
 
     private static boolean isJapaneseCalendar() {
-        return getCalendarID("ja-JP") == 3; // 3: CAL_JAPAN
+        return getCalendarID("ja-JP") == CAL_JAPAN;
+    }
+
+    private static Locale stripVariantAndExtensions(Locale locale) {
+        if (locale.hasExtensions() || locale.getVariant() != "") {
+            // strip off extensions and variant.
+            locale = new Locale.Builder()
+                            .setLocale(locale)
+                            .clearExtensions()
+                            .build();
+        }
+
+        return locale;
     }
 
     private static Locale getCalendarLocale(Locale locale) {
-        int calid = getCalendarID(locale.toLanguageTag());
+        int calid = getCalendarID(stripVariantAndExtensions(locale).toLanguageTag());
         if (calid > 0 && calid < calIDToLDML.length) {
             Locale.Builder lb = new Locale.Builder();
             String[] caltype = calIDToLDML[calid].split("_");
@@ -589,6 +644,15 @@
         return locale;
     }
 
+    private static int getCalendarIDFromLDMLType(String ldmlType) {
+        for (int i = 0; i < calIDToLDML.length; i++) {
+            if (calIDToLDML[i].startsWith(ldmlType)) {
+                return i;
+            }
+        }
+        return -1;
+    }
+
     private static Locale getNumberLocale(Locale src) {
         if (JRELocaleConstants.TH_TH.equals(src)) {
             if (isNativeDigit("th-TH")) {
@@ -639,6 +703,9 @@
     // For CalendarDataProvider
     private static native int getCalendarDataValue(String langTag, int type);
 
+    // For CalendarNameProvider
+    private static native String[] getCalendarDisplayStrings(String langTag, int calid, int field, int style);
+
     // For Locale/CurrencyNameProvider
     private static native String getDisplayString(String langTag, int key, String value);
 }
diff --git a/jdk/src/java.base/windows/native/libjava/HostLocaleProviderAdapter_md.c b/jdk/src/java.base/windows/native/libjava/HostLocaleProviderAdapter_md.c
index f5540d7..28663f7 100644
--- a/jdk/src/java.base/windows/native/libjava/HostLocaleProviderAdapter_md.c
+++ b/jdk/src/java.base/windows/native/libjava/HostLocaleProviderAdapter_md.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,22 +31,33 @@
 
 #define BUFLEN 256
 
+// java.util.Calendar constants
+#define CALENDAR_FIELD_ERA              0           // Calendar.ERA
+#define CALENDAR_FIELD_MONTH            2           // Calendar.MONTH
+#define CALENDAR_STYLE_SHORT_MASK       0x00000001  // Calendar.SHORT
+#define CALENDAR_STYLE_STANDALONE_MASK  0x00008000  // Calendar.STANDALONE
+
 // global variables
 typedef int (WINAPI *PGLIE)(const jchar *, LCTYPE, LPWSTR, int);
 typedef int (WINAPI *PGCIE)(const jchar *, CALID, LPCWSTR, CALTYPE, LPWSTR, int, LPDWORD);
+typedef int (WINAPI *PECIEE)(CALINFO_ENUMPROCEXEX, const jchar *, CALID, LPCWSTR, CALTYPE, LPARAM);
 PGLIE pGetLocaleInfoEx;
 PGCIE pGetCalendarInfoEx;
+PECIEE pEnumCalendarInfoExEx;
 BOOL initialized = FALSE;
 
 // prototypes
 int getLocaleInfoWrapper(const jchar *langtag, LCTYPE type, LPWSTR data, int buflen);
 int getCalendarInfoWrapper(const jchar *langtag, CALID id, LPCWSTR reserved, CALTYPE type, LPWSTR data, int buflen, LPDWORD val);
 jint getCalendarID(const jchar *langtag);
-void replaceCalendarArrayElems(JNIEnv *env, jstring jlangtag, jobjectArray jarray,
-                       CALTYPE* pCalTypes, int offset, int length);
+void replaceCalendarArrayElems(JNIEnv *env, jstring jlangtag, jint calid, jobjectArray jarray,
+                       CALTYPE* pCalTypes, int offset, int length, int style);
 WCHAR * getNumberPattern(const jchar * langtag, const jint numberStyle);
 void getNumberPart(const jchar * langtag, const jint numberStyle, WCHAR * number);
 void getFixPart(const jchar * langtag, const jint numberStyle, BOOL positive, BOOL prefix, WCHAR * ret);
+int enumCalendarInfoWrapper(const jchar * langtag, CALID calid, CALTYPE type, LPWSTR buf, int buflen);
+BOOL CALLBACK EnumCalendarInfoProc(LPWSTR lpCalInfoStr, CALID calid, LPWSTR lpReserved, LPARAM lParam);
+jobjectArray getErasImpl(JNIEnv *env, jstring jlangtag, jint calid, jint style, jobjectArray eras);
 
 // from java_props_md.c
 extern __declspec(dllexport) const char * getJavaIDFromLangID(LANGID langID);
@@ -83,6 +94,8 @@
     CAL_SABBREVMONTHNAME13,
 };
 
+#define MONTHTYPES (sizeof(monthsType) / sizeof(CALTYPE))
+
 CALTYPE wDaysType[] = {
     CAL_SDAYNAME7,
     CAL_SDAYNAME1,
@@ -155,6 +168,11 @@
     }
 };
 
+
+// Localized region name for unknown regions (Windows 10)
+#define UNKNOWN_REGION  L"Unknown Region ("
+#define UNKNOWN_REGION_SIZE wcslen(UNKNOWN_REGION)
+
 /*
  * Class:     sun_util_locale_provider_HostLocaleProviderAdapterImpl
  * Method:    initialize
@@ -169,11 +187,15 @@
         pGetCalendarInfoEx = (PGCIE)GetProcAddress(
             GetModuleHandle("kernel32.dll"),
             "GetCalendarInfoEx");
+        pEnumCalendarInfoExEx = (PECIEE)GetProcAddress(
+            GetModuleHandle("kernel32.dll"),
+            "EnumCalendarInfoExEx");
         initialized =TRUE;
     }
 
     return pGetLocaleInfoEx != NULL &&
-           pGetCalendarInfoEx != NULL;
+           pGetCalendarInfoEx != NULL &&
+           pEnumCalendarInfoExEx != NULL;
 }
 
 /*
@@ -300,23 +322,7 @@
  */
 JNIEXPORT jobjectArray JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getEras
   (JNIEnv *env, jclass cls, jstring jlangtag, jobjectArray eras) {
-    WCHAR ad[BUFLEN];
-    const jchar *langtag = (*env)->GetStringChars(env, jlangtag, JNI_FALSE);
-    jstring tmp_string;
-    CHECK_NULL_RETURN(langtag, eras);
-
-    getCalendarInfoWrapper(langtag, getCalendarID(langtag), NULL,
-                      CAL_SERASTRING, ad, BUFLEN, NULL);
-
-    // Windows does not provide B.C. era.
-    tmp_string = (*env)->NewString(env, ad, (jsize)wcslen(ad));
-    if (tmp_string != NULL) {
-        (*env)->SetObjectArrayElement(env, eras, 1, tmp_string);
-    }
-
-    (*env)->ReleaseStringChars(env, jlangtag, langtag);
-
-    return eras;
+    return getErasImpl(env, jlangtag, -1, 0, eras);
 }
 
 /*
@@ -326,8 +332,8 @@
  */
 JNIEXPORT jobjectArray JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getMonths
   (JNIEnv *env, jclass cls, jstring jlangtag, jobjectArray months) {
-    replaceCalendarArrayElems(env, jlangtag, months, monthsType,
-                      0, sizeof(monthsType)/sizeof(CALTYPE));
+    replaceCalendarArrayElems(env, jlangtag, -1, months, monthsType,
+                      0, MONTHTYPES, 0);
     return months;
 }
 
@@ -338,8 +344,8 @@
  */
 JNIEXPORT jobjectArray JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getShortMonths
   (JNIEnv *env, jclass cls, jstring jlangtag, jobjectArray smonths) {
-    replaceCalendarArrayElems(env, jlangtag, smonths, sMonthsType,
-                      0, sizeof(sMonthsType)/sizeof(CALTYPE));
+    replaceCalendarArrayElems(env, jlangtag, -1, smonths, sMonthsType,
+                      0, MONTHTYPES, 0);
     return smonths;
 }
 
@@ -350,8 +356,8 @@
  */
 JNIEXPORT jobjectArray JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getWeekdays
   (JNIEnv *env, jclass cls, jstring jlangtag, jobjectArray wdays) {
-    replaceCalendarArrayElems(env, jlangtag, wdays, wDaysType,
-                      1, sizeof(wDaysType)/sizeof(CALTYPE));
+    replaceCalendarArrayElems(env, jlangtag, -1, wdays, wDaysType,
+                      1, sizeof(wDaysType)/sizeof(CALTYPE), 0);
     return wdays;
 }
 
@@ -362,8 +368,8 @@
  */
 JNIEXPORT jobjectArray JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getShortWeekdays
   (JNIEnv *env, jclass cls, jstring jlangtag, jobjectArray swdays) {
-    replaceCalendarArrayElems(env, jlangtag, swdays, sWDaysType,
-                      1, sizeof(sWDaysType)/sizeof(CALTYPE));
+    replaceCalendarArrayElems(env, jlangtag, -1, swdays, sWDaysType,
+                      1, sizeof(sWDaysType)/sizeof(CALTYPE), 0);
     return swdays;
 }
 
@@ -676,6 +682,41 @@
 
 /*
  * Class:     sun_util_locale_provider_HostLocaleProviderAdapterImpl
+ * Method:    getCalendarDisplayStrings
+ * Signature: (Ljava/lang/String;III)[Ljava/lang/String;
+ */
+JNIEXPORT jobjectArray JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getCalendarDisplayStrings
+  (JNIEnv *env, jclass cls, jstring jlangtag, jint calid, jint field, jint style) {
+    jobjectArray ret = NULL;
+    CALTYPE * pCalType = NULL;
+
+    switch (field) {
+    case CALENDAR_FIELD_ERA:
+        return getErasImpl(env, jlangtag, calid, style, NULL);
+
+    case CALENDAR_FIELD_MONTH:
+        ret = (*env)->NewObjectArray(env, MONTHTYPES,
+                (*env)->FindClass(env, "java/lang/String"), NULL);
+        if (ret != NULL) {
+            if (style & CALENDAR_STYLE_SHORT_MASK) {
+                pCalType = sMonthsType;
+            } else {
+                pCalType = monthsType;
+            }
+
+            replaceCalendarArrayElems(env, jlangtag, calid, ret, pCalType,
+                          0, MONTHTYPES, style);
+        }
+        return ret;
+
+    default:
+        // not supported
+        return NULL;
+    }
+}
+
+/*
+ * Class:     sun_util_locale_provider_HostLocaleProviderAdapterImpl
  * Method:    getDisplayString
  * Signature: (Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String;
  */
@@ -714,10 +755,15 @@
     (*env)->ReleaseStringChars(env, jStr, pjChar);
 
     if (got) {
-        return (*env)->NewString(env, buf, (jsize)wcslen(buf));
-    } else {
-        return NULL;
+        // Hack: Windows 10 returns "Unknown Region (XX)" for localized XX region name.
+        // Take that as not known.
+        if (type != sun_util_locale_provider_HostLocaleProviderAdapterImpl_DN_LOCALE_REGION ||
+            wcsncmp(UNKNOWN_REGION, buf, UNKNOWN_REGION_SIZE) != 0) {
+            return (*env)->NewString(env, buf, (jsize)wcslen(buf));
+        }
     }
+
+    return NULL;
 }
 
 int getLocaleInfoWrapper(const jchar *langtag, LCTYPE type, LPWSTR data, int buflen) {
@@ -753,35 +799,62 @@
 }
 
 jint getCalendarID(const jchar *langtag) {
-    DWORD type;
+    DWORD type = -1;
     int got = getLocaleInfoWrapper(langtag,
         LOCALE_ICALENDARTYPE | LOCALE_RETURN_NUMBER,
         (LPWSTR)&type, sizeof(type));
 
     if (got) {
-        return type;
-    } else {
-        return 0;
+        switch (type) {
+            case CAL_GREGORIAN:
+            case CAL_GREGORIAN_US:
+            case CAL_JAPAN:
+            case CAL_TAIWAN:
+            case CAL_HIJRI:
+            case CAL_THAI:
+            case CAL_GREGORIAN_ME_FRENCH:
+            case CAL_GREGORIAN_ARABIC:
+            case CAL_GREGORIAN_XLIT_ENGLISH:
+            case CAL_GREGORIAN_XLIT_FRENCH:
+            case CAL_UMALQURA:
+                break;
+
+            default:
+                // non-supported calendars return -1
+                type = -1;
+                break;
+        }
     }
+
+    return type;
 }
 
-void replaceCalendarArrayElems(JNIEnv *env, jstring jlangtag, jobjectArray jarray, CALTYPE* pCalTypes, int offset, int length) {
+void replaceCalendarArrayElems(JNIEnv *env, jstring jlangtag, jint calid, jobjectArray jarray, CALTYPE* pCalTypes, int offset, int length, int style) {
     WCHAR name[BUFLEN];
     const jchar *langtag = (*env)->GetStringChars(env, jlangtag, JNI_FALSE);
-    int calid;
     jstring tmp_string;
+    CALTYPE isGenitive;
 
     CHECK_NULL(langtag);
-    calid = getCalendarID(langtag);
+
+    if (calid < 0) {
+        calid = getCalendarID(langtag);
+    }
 
     if (calid != -1) {
         int i;
+
+        if (!(style & CALENDAR_STYLE_STANDALONE_MASK)) {
+            isGenitive = CAL_RETURN_GENITIVE_NAMES;
+        }
+
         for (i = 0; i < length; i++) {
-            getCalendarInfoWrapper(langtag, calid, NULL,
-                              pCalTypes[i], name, BUFLEN, NULL);
-            tmp_string = (*env)->NewString(env, name, (jsize)wcslen(name));
-            if (tmp_string != NULL) {
-                (*env)->SetObjectArrayElement(env, jarray, i + offset, tmp_string);
+            if (getCalendarInfoWrapper(langtag, calid, NULL,
+                              pCalTypes[i] | isGenitive, name, BUFLEN, NULL) != 0) {
+                tmp_string = (*env)->NewString(env, name, (jsize)wcslen(name));
+                if (tmp_string != NULL) {
+                    (*env)->SetObjectArrayElement(env, jarray, i + offset, tmp_string);
+                }
             }
         }
     }
@@ -924,3 +997,99 @@
 
     wcscpy(ret, fixes[!prefix][!positive][style][pattern]);
 }
+
+int enumCalendarInfoWrapper(const jchar *langtag, CALID calid, CALTYPE type, LPWSTR buf, int buflen) {
+    if (pEnumCalendarInfoExEx) {
+        if (wcscmp(L"und", (LPWSTR)langtag) == 0) {
+            // defaults to "en"
+            return pEnumCalendarInfoExEx(&EnumCalendarInfoProc, L"en",
+                calid, NULL, type, (LPARAM)buf);
+        } else {
+            return pEnumCalendarInfoExEx(&EnumCalendarInfoProc, langtag,
+                calid, NULL, type, (LPARAM)buf);
+        }
+    } else {
+        return 0;
+    }
+}
+
+BOOL CALLBACK EnumCalendarInfoProc(LPWSTR lpCalInfoStr, CALID calid, LPWSTR lpReserved, LPARAM lParam) {
+    wcscat_s((LPWSTR)lParam, BUFLEN, lpCalInfoStr);
+    wcscat_s((LPWSTR)lParam, BUFLEN, L",");
+    return TRUE;
+}
+
+jobjectArray getErasImpl(JNIEnv *env, jstring jlangtag, jint calid, jint style, jobjectArray eras) {
+    const jchar * langtag = (*env)->GetStringChars(env, jlangtag, JNI_FALSE);
+    WCHAR buf[BUFLEN];
+    jobjectArray ret = eras;
+    CALTYPE type;
+
+    CHECK_NULL_RETURN(langtag, ret);
+
+    buf[0] = '\0';
+    if (style & CALENDAR_STYLE_SHORT_MASK) {
+        type = CAL_SABBREVERASTRING;
+    } else {
+        type = CAL_SERASTRING;
+    }
+
+    if (calid < 0) {
+        calid = getCalendarID(langtag);
+    }
+
+    if (calid != -1 && enumCalendarInfoWrapper(langtag, calid, type, buf, BUFLEN)) {
+        // format in buf: "era0,era1,era2," where era0 is the current one
+        int eraCount;
+        LPWSTR current;
+        jsize array_length;
+
+        for(eraCount = 0, current = buf; *current != '\0'; current++) {
+            if (*current == L',') {
+                eraCount ++;
+            }
+        }
+
+        if (eras != NULL) {
+            array_length = (*env)->GetArrayLength(env, eras);
+        } else {
+            // +1 for the "before" era, e.g., BC, which Windows does not return.
+            array_length = (jsize)eraCount + 1;
+            ret = (*env)->NewObjectArray(env, array_length,
+                (*env)->FindClass(env, "java/lang/String"), NULL);
+        }
+
+        if (ret != NULL) {
+            int eraIndex;
+            LPWSTR era;
+
+            for(eraIndex = 0, era = current = buf; eraIndex < eraCount; era = current, eraIndex++) {
+                while (*current != L',') {
+                    current++;
+                }
+                *current++ = '\0';
+
+                if (eraCount - eraIndex < array_length &&
+                    *era != '\0') {
+                    (*env)->SetObjectArrayElement(env, ret,
+                        (jsize)(eraCount - eraIndex),
+                        (*env)->NewString(env, era, (jsize)wcslen(era)));
+                }
+            }
+
+            // Hack for the Japanese Imperial Calendar to insert Gregorian era for
+            // "Before Meiji"
+            if (calid == CAL_JAPAN) {
+                buf[0] = '\0';
+                if (enumCalendarInfoWrapper(langtag, CAL_GREGORIAN, type, buf, BUFLEN)) {
+                    jsize len = (jsize)wcslen(buf);
+                    buf[--len] = '\0'; // remove the last ','
+                    (*env)->SetObjectArrayElement(env, ret, 0, (*env)->NewString(env, buf, len));
+                }
+            }
+        }
+    }
+
+    (*env)->ReleaseStringChars(env, jlangtag, langtag);
+    return ret;
+}
diff --git a/jdk/src/java.base/windows/native/libjava/VM_md.c b/jdk/src/java.base/windows/native/libjava/VM_md.c
index 2b13ffc..73011d1 100644
--- a/jdk/src/java.base/windows/native/libjava/VM_md.c
+++ b/jdk/src/java.base/windows/native/libjava/VM_md.c
@@ -27,28 +27,28 @@
 
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_getuid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_getuid(JNIEnv *env, jclass thisclass) {
 
     /* -1 means function not available. */
     return -1;
 }
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_geteuid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_geteuid(JNIEnv *env, jclass thisclass) {
 
     /* -1 means function not available. */
     return -1;
 }
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_getgid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_getgid(JNIEnv *env, jclass thisclass) {
 
     /* -1 means function not available. */
     return -1;
 }
 
 JNIEXPORT jlong JNICALL
-Java_sun_misc_VM_getegid(JNIEnv *env, jclass thisclass) {
+Java_jdk_internal_misc_VM_getegid(JNIEnv *env, jclass thisclass) {
 
     /* -1 means function not available. */
     return -1;
diff --git a/jdk/src/java.base/windows/native/libjava/io_util_md.c b/jdk/src/java.base/windows/native/libjava/io_util_md.c
index a37ecb6..b762648 100644
--- a/jdk/src/java.base/windows/native/libjava/io_util_md.c
+++ b/jdk/src/java.base/windows/native/libjava/io_util_md.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -584,3 +584,14 @@
     }
     return long_to_jlong(pos.QuadPart);
 }
+
+jlong
+handleGetLength(FD fd) {
+    HANDLE h = (HANDLE) fd;
+    LARGE_INTEGER length;
+    if (GetFileSizeEx(h, &length) != 0) {
+        return long_to_jlong(length.QuadPart);
+    } else {
+        return -1;
+    }
+}
diff --git a/jdk/src/java.base/windows/native/libjava/io_util_md.h b/jdk/src/java.base/windows/native/libjava/io_util_md.h
index d85cdd3..59b2252 100644
--- a/jdk/src/java.base/windows/native/libjava/io_util_md.h
+++ b/jdk/src/java.base/windows/native/libjava/io_util_md.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,6 +44,7 @@
 int handleAvailable(FD fd, jlong *pbytes);
 int handleSync(FD fd);
 int handleSetLength(FD fd, jlong length);
+jlong handleGetLength(FD fd);
 JNIEXPORT jint handleRead(FD fd, void *buf, jint len);
 jint handleWrite(FD fd, const void *buf, jint len);
 jint handleAppend(FD fd, const void *buf, jint len);
@@ -84,6 +85,7 @@
 #define IO_Lseek handleLseek
 #define IO_Available handleAvailable
 #define IO_SetLength handleSetLength
+#define IO_GetLength handleGetLength
 
 /*
  * Setting the handle field in Java_java_io_FileDescriptor_set for
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java b/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java
index 5379d63..d178ae4 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java
@@ -35,8 +35,6 @@
 import java.util.Enumeration;
 import java.net.URL;
 
-import sun.misc.MessageUtils;
-
 /**
  * A simple DTD-driven HTML parser. The parser reads an
  * HTML file from an InputStream and calls various methods
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/AppletPanel.java b/jdk/src/java.desktop/share/classes/sun/applet/AppletPanel.java
index a9bacd5..2283e2f 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/AppletPanel.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/AppletPanel.java
@@ -44,7 +44,6 @@
 import sun.awt.EmbeddedFrame;
 import sun.awt.SunToolkit;
 import sun.misc.ManagedLocalsThread;
-import sun.misc.MessageUtils;
 import sun.misc.PerformanceLogger;
 import sun.security.util.SecurityConstants;
 
@@ -118,8 +117,6 @@
      */
     Dimension currentAppletSize = new Dimension(10, 10);
 
-    MessageUtils mu = new MessageUtils();
-
     /**
      * The thread to use during applet loading
      */
diff --git a/jdk/src/java.logging/share/classes/java/util/logging/FileHandler.java b/jdk/src/java.logging/share/classes/java/util/logging/FileHandler.java
index 52a2b4e..61b0c81 100644
--- a/jdk/src/java.logging/share/classes/java/util/logging/FileHandler.java
+++ b/jdk/src/java.logging/share/classes/java/util/logging/FileHandler.java
@@ -639,7 +639,7 @@
                     continue;
                 } else if (ch2 == 'h') {
                     file = new File(System.getProperty("user.home"));
-                    if (sun.misc.VM.isSetUID()) {
+                    if (jdk.internal.misc.VM.isSetUID()) {
                         // Ok, we are in a set UID program.  For safety's sake
                         // we disallow attempts to open files relative to %h.
                         throw new IOException("can't use %h in set UID program");
diff --git a/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java b/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java
index 47b2449..24c8488 100644
--- a/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java
+++ b/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java
@@ -583,7 +583,7 @@
         ClassLoader loader =
             AccessController.doPrivileged(
                 (PrivilegedAction<ClassLoader>) () -> cls.getClassLoader());
-        if (!sun.misc.VM.isSystemDomainLoader(loader)) {
+        if (!jdk.internal.misc.VM.isSystemDomainLoader(loader)) {
             throw new IllegalArgumentException(mxbeanName +
                 " is not a platform MXBean");
         }
diff --git a/jdk/src/java.management/share/classes/sun/management/ManagementFactoryHelper.java b/jdk/src/java.management/share/classes/sun/management/ManagementFactoryHelper.java
index 22b6940..44682b2 100644
--- a/jdk/src/java.management/share/classes/sun/management/ManagementFactoryHelper.java
+++ b/jdk/src/java.management/share/classes/sun/management/ManagementFactoryHelper.java
@@ -473,7 +473,7 @@
     public static Thread.State toThreadState(int state) {
         // suspended and native bits may be set in state
         int threadStatus = state & ~JMM_THREAD_STATE_FLAG_MASK;
-        return sun.misc.VM.toThreadState(threadStatus);
+        return jdk.internal.misc.VM.toThreadState(threadStatus);
     }
 
     // These values are defined in jmm.h
diff --git a/jdk/src/java.management/share/classes/sun/management/MemoryImpl.java b/jdk/src/java.management/share/classes/sun/management/MemoryImpl.java
index f64a0a5..00d68d4 100644
--- a/jdk/src/java.management/share/classes/sun/management/MemoryImpl.java
+++ b/jdk/src/java.management/share/classes/sun/management/MemoryImpl.java
@@ -59,7 +59,7 @@
     }
 
     public int getObjectPendingFinalizationCount() {
-        return sun.misc.VM.getFinalRefCount();
+        return jdk.internal.misc.VM.getFinalRefCount();
     }
 
     public void gc() {
diff --git a/jdk/src/java.rmi/share/classes/sun/rmi/server/MarshalInputStream.java b/jdk/src/java.rmi/share/classes/sun/rmi/server/MarshalInputStream.java
index 20f8874..3453e61 100644
--- a/jdk/src/java.rmi/share/classes/sun/rmi/server/MarshalInputStream.java
+++ b/jdk/src/java.rmi/share/classes/sun/rmi/server/MarshalInputStream.java
@@ -262,7 +262,7 @@
      * if only code from the null class loader is on the stack.
      */
     private static ClassLoader latestUserDefinedLoader() {
-        return sun.misc.VM.latestUserDefinedLoader();
+        return jdk.internal.misc.VM.latestUserDefinedLoader();
     }
 
     /**
diff --git a/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java b/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java
index 7d0e700..f22a188 100644
--- a/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java
+++ b/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java
@@ -397,7 +397,7 @@
          */
 
         if (osname != null && !osname.startsWith("Windows")) {
-            long uid = sun.misc.VM.getuid();
+            long uid = jdk.internal.misc.VM.getuid();
             if (uid != -1) {
                 name = File.separator + "tmp" +
                         File.separator + stdCacheNameComponent + "_" + uid;
diff --git a/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/rcache/DflCache.java b/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/rcache/DflCache.java
index cbae702..54fa34a 100644
--- a/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/rcache/DflCache.java
+++ b/jdk/src/java.security.jgss/share/classes/sun/security/krb5/internal/rcache/DflCache.java
@@ -60,7 +60,7 @@
  *
  *    service_euid
  *
- * in which euid is available as sun.misc.VM.geteuid().
+ * in which euid is available as jdk.internal.misc.VM.geteuid().
  *
  * The file has a header:
  *
@@ -107,7 +107,7 @@
     private static long uid;
     static {
         // Available on Solaris, Linux and Mac. Otherwise, -1 and no _euid suffix
-        uid = sun.misc.VM.geteuid();
+        uid = jdk.internal.misc.VM.geteuid();
     }
 
     public DflCache (String source) {
diff --git a/jdk/src/java.sql/share/classes/java/sql/Statement.java b/jdk/src/java.sql/share/classes/java/sql/Statement.java
index 3dd29c2a..fe40a2f 100644
--- a/jdk/src/java.sql/share/classes/java/sql/Statement.java
+++ b/jdk/src/java.sql/share/classes/java/sql/Statement.java
@@ -1582,4 +1582,43 @@
         return len >= 1 && len <= 128
                 && Pattern.compile("[\\p{Alpha}][\\p{Alnum}_]*").matcher(identifier).matches();
     }
+
+    /**
+    * Returns a {@code String} representing a National Character Set Literal
+    * enclosed in single quotes and prefixed with a upper case letter N.
+    * Any occurrence of a single quote within the string will be replaced
+    * by two single quotes.
+    *
+    * <blockquote>
+    * <table border = 1 cellspacing=0 cellpadding=5 >
+    * <caption>Examples of the conversion:</caption>
+    * <tr>
+    * <th>Value</th>
+    * <th>Result</th>
+    * </tr>
+    * <tr> <td align='center'>Hello</td> <td align='center'>N'Hello'</td> </tr>
+    * <tr> <td align='center'>G'Day</td> <td align='center'>N'G''Day'</td> </tr>
+    * <tr> <td align='center'>'G''Day'</td>
+    * <td align='center'>N'''G''''Day'''</td> </tr>
+    * <tr> <td align='center'>I'''M</td> <td align='center'>N'I''''''M'</td>
+    * <tr> <td align='center'>N'Hello'</td> <td align='center'>N'N''Hello'''</td> </tr>
+    *
+    * </table>
+    * </blockquote>
+    * @implNote
+    * JDBC driver implementations may need to provide their own implementation
+    * of this method in order to meet the requirements of the underlying
+    * datasource. An implementation of enquoteNCharLiteral may accept a different
+    * set of characters than that accepted by the same drivers implementation of
+    * enquoteLiteral.
+    * @param val a character string
+    * @return the result of replacing every single quote character in the
+    * argument by two single quote characters where this entire result is
+    * then prefixed with 'N'.
+    * @throws NullPointerException if val is {@code null}
+    * @throws SQLException if a database access error occurs
+    */
+    default String enquoteNCharLiteral(String val)  throws SQLException {
+        return "N'" + val.replace("'", "''") +  "'";
+   }
 }
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AWTEventMonitor.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AWTEventMonitor.java
index 257bbb7..cd3cf14 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AWTEventMonitor.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AWTEventMonitor.java
@@ -45,7 +45,6 @@
  * level support for capturing the top-level containers as they are created.
  */
 
-@jdk.Exported
 public class AWTEventMonitor {
 
     /**
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityEventMonitor.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityEventMonitor.java
index 4719e7c..603ba03 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityEventMonitor.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityEventMonitor.java
@@ -43,7 +43,6 @@
  *
  */
 
-@jdk.Exported
 public class AccessibilityEventMonitor {
 
     // listeners
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityListenerList.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityListenerList.java
index 76c7147..0de59f9 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityListenerList.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/AccessibilityListenerList.java
@@ -37,7 +37,6 @@
  *
  */
 
-@jdk.Exported
 public class AccessibilityListenerList {
     /* A null array to be shared by all empty listener lists */
     private final static Object[] NULL_ARRAY = new Object[0];
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventID.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventID.java
index bbd08f5..f984034 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventID.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventID.java
@@ -35,7 +35,6 @@
  * @see SwingEventMonitor
  *
  */
-@jdk.Exported
 public class EventID {
 
     /**
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventQueueMonitor.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventQueueMonitor.java
index aa87860..4751ea0 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventQueueMonitor.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/EventQueueMonitor.java
@@ -40,7 +40,6 @@
  * @see AWTEventMonitor
  * @see SwingEventMonitor
  */
-@jdk.Exported
 public class EventQueueMonitor
         implements AWTEventListener {
 
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/GUIInitializedListener.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/GUIInitializedListener.java
index 9a4474d..02d706e 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/GUIInitializedListener.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/GUIInitializedListener.java
@@ -49,7 +49,6 @@
  * @see EventQueueMonitor#removeGUIInitializedListener
  *
  */
-@jdk.Exported
 public interface GUIInitializedListener extends EventListener {
 
     /**
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/SwingEventMonitor.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/SwingEventMonitor.java
index c2150cd..bbb0fcb 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/SwingEventMonitor.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/SwingEventMonitor.java
@@ -56,7 +56,6 @@
  * @see AWTEventMonitor
  *
  */
-@jdk.Exported
 public class SwingEventMonitor extends AWTEventMonitor {
 
     /**
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/TopLevelWindowListener.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/TopLevelWindowListener.java
index 94d0330..f24140c 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/TopLevelWindowListener.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/TopLevelWindowListener.java
@@ -43,7 +43,6 @@
  * @see EventQueueMonitor#removeTopLevelWindowListener
  *
  */
-@jdk.Exported
 public interface TopLevelWindowListener extends EventListener {
 
     /**
diff --git a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/Translator.java b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/Translator.java
index 743777c..177fbb4 100644
--- a/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/Translator.java
+++ b/jdk/src/jdk.accessibility/share/classes/com/sun/java/accessibility/util/Translator.java
@@ -58,7 +58,6 @@
  * to implement accessibility features for a toolkit.  Instead of relying upon this
  * code, a toolkit's components should implement interface {@code Accessible} directly.
  */
-@jdk.Exported
 public class Translator extends AccessibleContext
         implements Accessible, AccessibleComponent {
 
diff --git a/jdk/src/jdk.accessibility/windows/classes/com/sun/java/accessibility/internal/AccessBridge.java b/jdk/src/jdk.accessibility/windows/classes/com/sun/java/accessibility/internal/AccessBridge.java
index 47832a4..5ab82f3 100644
--- a/jdk/src/jdk.accessibility/windows/classes/com/sun/java/accessibility/internal/AccessBridge.java
+++ b/jdk/src/jdk.accessibility/windows/classes/com/sun/java/accessibility/internal/AccessBridge.java
@@ -53,7 +53,6 @@
  * Note: This class has to be public.  It's loaded from the VM like this:
  *       Class.forName(atName).newInstance();
  */
-@jdk.Exported(false)
 final public class AccessBridge {
 
     private static AccessBridge theAccessBridge;
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentInitializationException.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentInitializationException.java
index 058b0f0..3ec1453 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentInitializationException.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentInitializationException.java
@@ -40,7 +40,6 @@
  * the error returned by the agent's {@code Agent_OnAttach} function.
  * This error code can be obtained by invoking the {@link #returnValue() returnValue} method.
  */
-@jdk.Exported
 public class AgentInitializationException extends Exception {
 
     /** use serialVersionUID for interoperability */
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentLoadException.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentLoadException.java
index 8b04c46..1f22410 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentLoadException.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AgentLoadException.java
@@ -36,7 +36,6 @@
  * com.sun.tools.attach.VirtualMachine#loadAgentPath loadAgentPath} methods
  * if the agent, or agent library, cannot be loaded.
  */
-@jdk.Exported
 public class AgentLoadException extends Exception {
 
     /** use serialVersionUID for interoperability */
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachNotSupportedException.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachNotSupportedException.java
index fb55186..f9f7476 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachNotSupportedException.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachNotSupportedException.java
@@ -36,7 +36,6 @@
  * AttachProvider.attachVirtualMachine} if the provider attempts to
  * attach to a Java virtual machine with which it not comptatible.
  */
-@jdk.Exported
 public class AttachNotSupportedException extends Exception {
 
     /** use serialVersionUID for interoperability */
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachOperationFailedException.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachOperationFailedException.java
index fd37bb3..c245ec7 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachOperationFailedException.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachOperationFailedException.java
@@ -37,7 +37,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public class AttachOperationFailedException extends IOException {
 
     private static final long serialVersionUID = 2140308168167478043L;
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachPermission.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachPermission.java
index 0f573e8..e5dc6af 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachPermission.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/AttachPermission.java
@@ -79,7 +79,6 @@
  * @see com.sun.tools.attach.spi.AttachProvider
  */
 
-@jdk.Exported
 public final class AttachPermission extends java.security.BasicPermission {
 
     /** use serialVersionUID for interoperability */
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachine.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachine.java
index a9a9a56..345df5e 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachine.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachine.java
@@ -96,7 +96,6 @@
  * @since 1.6
  */
 
-@jdk.Exported
 public abstract class VirtualMachine {
     private AttachProvider provider;
     private String id;
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachineDescriptor.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachineDescriptor.java
index b8d4ad6..4f6e77c 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachineDescriptor.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/VirtualMachineDescriptor.java
@@ -55,7 +55,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public class VirtualMachineDescriptor {
 
     private AttachProvider provider;
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/package-info.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/package-info.java
index 465e3fd..3849638 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/package-info.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/package-info.java
@@ -38,5 +38,4 @@
  * @since 1.6
  */
 
-@jdk.Exported
 package com.sun.tools.attach;
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/AttachProvider.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/AttachProvider.java
index 2d9aa9c..0ca0539 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/AttachProvider.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/AttachProvider.java
@@ -74,7 +74,6 @@
  * @since 1.6
  */
 
-@jdk.Exported
 public abstract class AttachProvider {
 
     private static final Object lock = new Object();
diff --git a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/package-info.java b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/package-info.java
index b2c68eb..9817b19 100644
--- a/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/package-info.java
+++ b/jdk/src/jdk.attach/share/classes/com/sun/tools/attach/spi/package-info.java
@@ -31,5 +31,4 @@
  * @since 1.6
  */
 
-@jdk.Exported
 package com.sun.tools.attach.spi;
diff --git a/jdk/src/jdk.charsets/share/classes/sun/nio/cs/ext/ExtendedCharsets.java.template b/jdk/src/jdk.charsets/share/classes/sun/nio/cs/ext/ExtendedCharsets.java.template
index f654c77..4bca8ab 100644
--- a/jdk/src/jdk.charsets/share/classes/sun/nio/cs/ext/ExtendedCharsets.java.template
+++ b/jdk/src/jdk.charsets/share/classes/sun/nio/cs/ext/ExtendedCharsets.java.template
@@ -97,7 +97,7 @@
     protected void init() {
         if (initialized)
             return;
-        if (!sun.misc.VM.isBooted())
+        if (!jdk.internal.misc.VM.isBooted())
             return;
 
         String map = getProperty("sun.nio.cs.map");
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Authenticator.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Authenticator.java
index cdce078..5b7445d 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Authenticator.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Authenticator.java
@@ -36,7 +36,6 @@
  * Note. This implies that any caching of credentials or other authentication
  * information must be done outside of this class.
  */
-@jdk.Exported
 public abstract class Authenticator {
 
     /**
@@ -48,7 +47,6 @@
      * Indicates an authentication failure. The authentication
      * attempt has completed.
      */
-    @jdk.Exported
     public static class Failure extends Result {
 
         private int responseCode;
@@ -70,7 +68,6 @@
      * authenticated user principal can be acquired by calling
      * getPrincipal().
      */
-    @jdk.Exported
     public static class Success extends Result {
         private HttpPrincipal principal;
 
@@ -92,7 +89,6 @@
      * set any necessary response headers in the given HttpExchange
      * before returning this Retry object.
      */
-    @jdk.Exported
     public static class Retry extends Result {
 
         private int responseCode;
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/BasicAuthenticator.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/BasicAuthenticator.java
index eb87031..c9701c0 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/BasicAuthenticator.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/BasicAuthenticator.java
@@ -33,7 +33,6 @@
  * to provide an implementation of {@link #checkCredentials(String,String)}
  * which is called to verify each incoming request.
  */
-@jdk.Exported
 public abstract class BasicAuthenticator extends Authenticator {
 
     protected String realm;
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Filter.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Filter.java
index ac5d6fe..70ca21e 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Filter.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Filter.java
@@ -39,7 +39,6 @@
  * exchange handler.
  * @since 1.6
  */
-@jdk.Exported
 public abstract class Filter {
 
     protected Filter () {}
@@ -49,7 +48,6 @@
      * Each filter in the chain is given one of these
      * so it can invoke the next filter in the chain
      */
-    @jdk.Exported
     public static class Chain {
         /* the last element in the chain must invoke the users
          * handler
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Headers.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Headers.java
index 5c0608b..2569060 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Headers.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/Headers.java
@@ -61,7 +61,6 @@
  * as a header line containing the key but no associated value.
  * @since 1.6
  */
-@jdk.Exported
 public class Headers implements Map<String,List<String>> {
 
         HashMap<String,List<String>> map;
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpContext.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpContext.java
index 169e4a0..12ffdcc 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpContext.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpContext.java
@@ -40,7 +40,6 @@
  * context can be pre- and post-processed by each Filter in the chain.
  * @since 1.6
  */
-@jdk.Exported
 public abstract class HttpContext {
 
     protected HttpContext () {
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java
index 0cf3623..0ce0b12 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java
@@ -64,7 +64,6 @@
  * @since 1.6
  */
 
-@jdk.Exported
 public abstract class HttpExchange {
 
     protected HttpExchange () {
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpHandler.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpHandler.java
index 62b621c..8ea7024 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpHandler.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpHandler.java
@@ -32,7 +32,6 @@
  * HTTP exchange is handled by one of these handlers.
  * @since 1.6
  */
-@jdk.Exported
 public interface HttpHandler {
     /**
      * Handle the given request and generate an appropriate response.
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpPrincipal.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpPrincipal.java
index df5e422..b0b6bdc 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpPrincipal.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpPrincipal.java
@@ -33,7 +33,6 @@
  * Represents a user authenticated by HTTP Basic or Digest
  * authentication.
  */
-@jdk.Exported
 public class HttpPrincipal implements Principal {
     private String username, realm;
 
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpServer.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpServer.java
index f26dc1d..30ad5ce 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpServer.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpServer.java
@@ -87,7 +87,6 @@
  * @since 1.6
  */
 
-@jdk.Exported
 public abstract class HttpServer {
 
     /**
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsConfigurator.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsConfigurator.java
index 22bca16..6c4ddae 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsConfigurator.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsConfigurator.java
@@ -67,7 +67,6 @@
  * </pre></blockquote>
  * @since 1.6
  */
-@jdk.Exported
 public class HttpsConfigurator {
 
     private SSLContext context;
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsExchange.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsExchange.java
index 99a2733..9bf9ed7 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsExchange.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsExchange.java
@@ -39,7 +39,6 @@
  * @since 1.6
  */
 
-@jdk.Exported
 public abstract class HttpsExchange extends HttpExchange {
 
     protected HttpsExchange () {
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsParameters.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsParameters.java
index f3fd7a6..0aabee0 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsParameters.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsParameters.java
@@ -49,7 +49,6 @@
  * are used, and any settings made in this object are ignored.
  * @since 1.6
  */
-@jdk.Exported
 public abstract class HttpsParameters {
 
     private String[] cipherSuites;
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsServer.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsServer.java
index f7eb542..ddf0547 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsServer.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsServer.java
@@ -45,7 +45,6 @@
  * @since 1.6
  */
 
-@jdk.Exported
 public abstract class HttpsServer extends HttpServer {
 
     /**
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/package-info.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/package-info.java
index 84f13d6..9737f97 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/package-info.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/package-info.java
@@ -123,5 +123,4 @@
 
    @since 1.6
  */
-@jdk.Exported
 package com.sun.net.httpserver;
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/HttpServerProvider.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/HttpServerProvider.java
index c838bd5..df3efc9 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/HttpServerProvider.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/HttpServerProvider.java
@@ -40,7 +40,6 @@
  * {@link HttpServer} and associated classes. Applications do not normally use
  * this class. See {@link #provider()} for how providers are found and loaded.
  */
-@jdk.Exported
 public abstract class HttpServerProvider {
 
     /**
diff --git a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/package-info.java b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/package-info.java
index 8c4d318..da8fecb 100644
--- a/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/package-info.java
+++ b/jdk/src/jdk.httpserver/share/classes/com/sun/net/httpserver/spi/package-info.java
@@ -27,5 +27,4 @@
  * Provides a pluggable service provider interface, which allows the HTTP server
  * implementation to be replaced with other implementations.
  */
-@jdk.Exported
 package com.sun.net.httpserver.spi;
diff --git a/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSigner.java b/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSigner.java
index 4de54e9..0976535 100644
--- a/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSigner.java
+++ b/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSigner.java
@@ -38,7 +38,6 @@
  * @deprecated This class has been deprecated.
  */
 
-@jdk.Exported
 @Deprecated
 public abstract class ContentSigner {
 
diff --git a/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSignerParameters.java b/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSignerParameters.java
index 3a45318..e761a2c 100644
--- a/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSignerParameters.java
+++ b/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/ContentSignerParameters.java
@@ -36,7 +36,6 @@
  * @author Vincent Ryan
  * @deprecated This class has been deprecated.
  */
-@jdk.Exported
 @Deprecated
 public interface ContentSignerParameters {
 
diff --git a/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/package-info.java b/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/package-info.java
index cfed536..08197b5 100644
--- a/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/package-info.java
+++ b/jdk/src/jdk.jartool/share/classes/com/sun/jarsigner/package-info.java
@@ -35,5 +35,4 @@
  * to sign JAR files.
  */
 
-@jdk.Exported
 package com.sun.jarsigner;
diff --git a/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSigner.java b/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSigner.java
index b9ce4e3..a25ff87 100644
--- a/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSigner.java
+++ b/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSigner.java
@@ -79,7 +79,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public final class JarSigner {
 
     /**
@@ -88,7 +87,6 @@
      *
      * @since 1.9
      */
-    @jdk.Exported
     public static class Builder {
 
         // Signer materials:
diff --git a/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSignerException.java b/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSignerException.java
index a6c73a6..d1b5449 100644
--- a/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSignerException.java
+++ b/jdk/src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSignerException.java
@@ -30,7 +30,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public class JarSignerException extends RuntimeException {
 
     private static final long serialVersionUID = -4732217075689309530L;
diff --git a/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsoleContext.java b/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsoleContext.java
index fd941b8..e324109 100644
--- a/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsoleContext.java
+++ b/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsoleContext.java
@@ -42,7 +42,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public interface JConsoleContext {
     /**
      * The {@link ConnectionState ConnectionState} bound property name.
@@ -53,7 +52,6 @@
      * Values for the {@linkplain #CONNECTION_STATE_PROPERTY
      * <i>ConnectionState</i>} bound property.
      */
-    @jdk.Exported
     public enum ConnectionState {
         /**
          * The connection has been successfully established.
diff --git a/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsolePlugin.java b/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsolePlugin.java
index 48f43dc..04da16e 100644
--- a/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsolePlugin.java
+++ b/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsolePlugin.java
@@ -72,7 +72,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public abstract class JConsolePlugin {
     private volatile JConsoleContext context = null;
     private List<PropertyChangeListener> listeners = null;
diff --git a/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/package-info.java b/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/package-info.java
index 99b52aa3..d9369d0 100644
--- a/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/package-info.java
+++ b/jdk/src/jdk.jconsole/share/classes/com/sun/tools/jconsole/package-info.java
@@ -29,5 +29,4 @@
  * @since 1.6
  */
 
-@jdk.Exported
 package com.sun.tools.jconsole;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/AbsentInformationException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/AbsentInformationException.java
index 36ac31e..6a2188e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/AbsentInformationException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/AbsentInformationException.java
@@ -31,7 +31,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class AbsentInformationException extends Exception
 {
     private static final long serialVersionUID = 4988939309582416373L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Accessible.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Accessible.java
index ba2463a..8d3ef26 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Accessible.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Accessible.java
@@ -36,7 +36,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface Accessible {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayReference.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayReference.java
index d4cf64b..11b5bdb 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayReference.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayReference.java
@@ -39,7 +39,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ArrayReference extends ObjectReference {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayType.java
index 45c4f4d..d693c0e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ArrayType.java
@@ -38,7 +38,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ArrayType extends ReferenceType {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanType.java
index 7bf98c8..6e54580 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface BooleanType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanValue.java
index 73297fa..aca19cf 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/BooleanValue.java
@@ -34,7 +34,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface BooleanValue extends PrimitiveValue {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Bootstrap.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Bootstrap.java
index 623a7a4..2e63914 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Bootstrap.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Bootstrap.java
@@ -34,7 +34,6 @@
  * @since  1.3
  */
 
-@jdk.Exported
 public class Bootstrap extends Object {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteType.java
index dc83cc3..6296aa5 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ByteType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteValue.java
index a16ecd0..89074aa 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ByteValue.java
@@ -33,7 +33,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ByteValue extends PrimitiveValue, Comparable<ByteValue> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharType.java
index fab5a16..0710db0 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface CharType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharValue.java
index 2f9d630..e85348b 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/CharValue.java
@@ -34,7 +34,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface CharValue extends PrimitiveValue, Comparable<CharValue> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassLoaderReference.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassLoaderReference.java
index b8363ae..9340bab 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassLoaderReference.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassLoaderReference.java
@@ -39,7 +39,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface ClassLoaderReference extends ObjectReference {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java
index ab516e0..790f8d0 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotLoadedException.java
@@ -67,7 +67,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class ClassNotLoadedException extends Exception
 {
     private static final long serialVersionUID = -6242978768444298722L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java
index 528b36e..f30e87f 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassNotPreparedException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class ClassNotPreparedException extends RuntimeException {
     private static final long serialVersionUID = -6120698967144079642L;
     public ClassNotPreparedException()
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassObjectReference.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassObjectReference.java
index 79a306a..1670cea 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassObjectReference.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassObjectReference.java
@@ -35,7 +35,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface ClassObjectReference extends ObjectReference {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java
index 296f2e7..3286c73 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java
@@ -41,7 +41,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ClassType extends ReferenceType {
     /**
      * Gets the superclass of this class.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleType.java
index d40da78..41172bf 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface DoubleType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleValue.java
index e2f9cc2..82e9eec 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/DoubleValue.java
@@ -34,7 +34,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface DoubleValue extends PrimitiveValue, Comparable<DoubleValue> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Field.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Field.java
index 6842a81..206e981 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Field.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Field.java
@@ -38,7 +38,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface Field extends TypeComponent, Comparable<Field> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatType.java
index 29cb99a..a585ead 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface FloatType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatValue.java
index aa3be62..bb966bc 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/FloatValue.java
@@ -34,7 +34,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface FloatValue extends PrimitiveValue, Comparable<FloatValue> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java
index 11e110f..1fd8e71 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IncompatibleThreadStateException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class IncompatibleThreadStateException extends Exception {
     private static final long serialVersionUID = 6199174323414551389L;
 
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java
index 8fe3ae9..305efa0 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InconsistentDebugInfoException.java
@@ -34,7 +34,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class InconsistentDebugInfoException extends RuntimeException {
     private static final long serialVersionUID = 7964236415376861808L;
     public InconsistentDebugInfoException() {
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerType.java
index f19b6de..cf4edd0 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface IntegerType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerValue.java
index b8a10a8..d0bd44a 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/IntegerValue.java
@@ -34,7 +34,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface IntegerValue extends PrimitiveValue, Comparable<IntegerValue> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java
index 80250de..64a9fa4 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java
@@ -43,7 +43,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface InterfaceType extends ReferenceType {
     /**
      * Gets the interfaces directly extended by this interface.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java
index b688ca5..a291ac1 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InternalException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class InternalException extends RuntimeException {
      private static final long serialVersionUID = -9171606393104480607L;
      private int errorCode;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java
index 928f741..3e62cf8 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidCodeIndexException.java
@@ -34,7 +34,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 @Deprecated
 public class InvalidCodeIndexException extends RuntimeException {
     private static final long serialVersionUID = 7416010225133747805L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java
index 0786d52..bc40ea6 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidLineNumberException.java
@@ -34,7 +34,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 @Deprecated
 public class InvalidLineNumberException extends RuntimeException {
     private static final long serialVersionUID = 4048709912372692875L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java
index 2f28d07..e57bfa5 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidStackFrameException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class InvalidStackFrameException extends RuntimeException {
     private static final long serialVersionUID = -1919378296505827922L;
     public InvalidStackFrameException() {
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java
index 299c447..904248c 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvalidTypeException.java
@@ -32,7 +32,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public class InvalidTypeException extends Exception {
     private static final long serialVersionUID = 2256667231949650806L;
 
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java
index 1f8179e..4e66f60 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/InvocationException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class InvocationException extends Exception {
     private static final long serialVersionUID = 6066780907971918568L;
     ObjectReference exception;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java
index 0f4abb2..109500a 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java
@@ -78,7 +78,6 @@
  *
  */
 
-@jdk.Exported
 public final class JDIPermission extends java.security.BasicPermission {
     private static final long serialVersionUID = -6988461416938786271L;
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LocalVariable.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LocalVariable.java
index 4b15d91..0930801 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LocalVariable.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LocalVariable.java
@@ -42,7 +42,6 @@
  * @since  1.3
  */
 
-@jdk.Exported
 public interface LocalVariable extends Mirror, Comparable<LocalVariable> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java
index a008943..16db7bf 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Locatable.java
@@ -33,7 +33,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface Locatable {
     /**
      * Returns the {@link Location} of this mirror, if there is
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Location.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Location.java
index e508781..b17f241 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Location.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Location.java
@@ -86,7 +86,6 @@
  * @author James McIlree
  * @since 1.3
  */
-@jdk.Exported
 public interface Location extends Mirror, Comparable<Location> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongType.java
index f3cc736..3ce46a5 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface LongType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongValue.java
index 98e25c2..e3f33a7 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/LongValue.java
@@ -34,7 +34,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface LongValue extends PrimitiveValue, Comparable<LongValue> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Method.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Method.java
index 39cde3e..02d6ae9 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Method.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Method.java
@@ -39,7 +39,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface Method extends TypeComponent, Locatable, Comparable<Method> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java
index eb01abf..e9f8887 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Mirror.java
@@ -56,7 +56,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/MonitorInfo.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/MonitorInfo.java
index ef72517..29aae2c 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/MonitorInfo.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/MonitorInfo.java
@@ -32,7 +32,6 @@
  * @since  1.6
  */
 
-@jdk.Exported
 public interface MonitorInfo extends Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java
index 6379701..2708c20 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/NativeMethodException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class NativeMethodException extends RuntimeException {
 
     private static final long serialVersionUID = 3924951669039469992L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java
index b88395e..b088064 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectCollectedException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class ObjectCollectedException extends RuntimeException {
     private static final long serialVersionUID = -1928428056197269588L;
     public ObjectCollectedException() {
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java
index b6bf5a3..629fdb8 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java
@@ -55,7 +55,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ObjectReference extends Value {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PathSearchingVirtualMachine.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PathSearchingVirtualMachine.java
index 7a75fd6..adc6b76 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PathSearchingVirtualMachine.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PathSearchingVirtualMachine.java
@@ -33,7 +33,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface PathSearchingVirtualMachine extends VirtualMachine {
     /**
      * Get the class path for this virtual machine.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveType.java
index 9cc721f..b4315b2 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveType.java
@@ -37,6 +37,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface PrimitiveType extends Type {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveValue.java
index 9601488..e33be47 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/PrimitiveValue.java
@@ -35,7 +35,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface PrimitiveValue extends Value {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ReferenceType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ReferenceType.java
index 43d1c02..30052d5 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ReferenceType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ReferenceType.java
@@ -77,7 +77,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ReferenceType
     extends Type, Comparable<ReferenceType>, Accessible
 {
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortType.java
index 9e0a2a9..cfff540 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortType.java
@@ -35,6 +35,5 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ShortType extends PrimitiveType {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortValue.java
index 61e54ec..6cedd8d 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ShortValue.java
@@ -34,7 +34,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ShortValue extends PrimitiveValue, Comparable<ShortValue> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StackFrame.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StackFrame.java
index 9d51d8a..7b330c7 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StackFrame.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StackFrame.java
@@ -58,7 +58,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface StackFrame extends Mirror, Locatable {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StringReference.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StringReference.java
index 92e7167..8a1053a 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StringReference.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/StringReference.java
@@ -35,7 +35,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface StringReference extends ObjectReference {
     /**
      * Returns the StringReference as a String. The returned string
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadGroupReference.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadGroupReference.java
index 110504f..9c33180 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadGroupReference.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadGroupReference.java
@@ -37,7 +37,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ThreadGroupReference extends ObjectReference {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadReference.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadReference.java
index 2e09ec8..ab537ee 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadReference.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/ThreadReference.java
@@ -36,7 +36,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface ThreadReference extends ObjectReference {
     /** Thread status is unknown */
     public final int THREAD_STATUS_UNKNOWN  =-1;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java
index 852d714..41b61fc 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Type.java
@@ -127,7 +127,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface Type extends Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/TypeComponent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/TypeComponent.java
index fa36d7b..5e077ea 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/TypeComponent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/TypeComponent.java
@@ -44,7 +44,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface TypeComponent extends Mirror, Accessible {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMCannotBeModifiedException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMCannotBeModifiedException.java
index 49f1c88..0366425 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMCannotBeModifiedException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMCannotBeModifiedException.java
@@ -32,7 +32,6 @@
  * @author Jim Holmlund
  * @since  1.5
  */
-@jdk.Exported
 public class VMCannotBeModifiedException extends UnsupportedOperationException {
     private static final long serialVersionUID = -4063879815130164009L;
     public VMCannotBeModifiedException() {
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMDisconnectedException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMDisconnectedException.java
index faeab60..f6805f0 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMDisconnectedException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMDisconnectedException.java
@@ -33,7 +33,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public class VMDisconnectedException extends RuntimeException {
 
     private static final long serialVersionUID = 2892975269768351637L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMMismatchException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMMismatchException.java
index b05a9aa..ff0c3db 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMMismatchException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMMismatchException.java
@@ -33,7 +33,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class VMMismatchException extends RuntimeException {
     private static final long serialVersionUID = 289169358790459564L;
     public VMMismatchException() {
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMOutOfMemoryException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMOutOfMemoryException.java
index cc64d92..2834d34 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMOutOfMemoryException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VMOutOfMemoryException.java
@@ -32,7 +32,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class VMOutOfMemoryException extends RuntimeException {
     private static final long serialVersionUID = 71504228548910686L;
     public VMOutOfMemoryException() {
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java
index 01d869b..75e5e41 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/Value.java
@@ -168,7 +168,6 @@
  * @since  1.3
  */
 
-@jdk.Exported
 public interface Value extends Mirror {
     /**
      * Returns the run-time type of this value.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java
index 0571a27..c54cc16 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java
@@ -70,7 +70,6 @@
  * @author James McIlree
  * @since  1.3
  */
-@jdk.Exported
 public interface VirtualMachine extends Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java
index dbde25b..5a6fd8b 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java
@@ -275,7 +275,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface VirtualMachineManager {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidType.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidType.java
index 9a9ee46..460c452 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidType.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidType.java
@@ -35,6 +35,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface VoidType extends Type {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidValue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidValue.java
index f3fb87e..6a60cb8 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidValue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/VoidValue.java
@@ -32,7 +32,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface VoidValue extends Value {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java
index a4409c6..ccb11c2 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/AttachingConnector.java
@@ -35,7 +35,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface AttachingConnector extends Connector {
     /**
      * Attaches to a running application and returns a
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java
index 52aebbf..a2b4b38 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Connector.java
@@ -45,7 +45,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface Connector {
     /**
      * Returns a short identifier for the connector. Connector implementors
@@ -92,7 +91,6 @@
      * {@link Connector.IntegerArgument},
      * or {@link Connector.SelectedArgument}.
      */
-    @jdk.Exported
     public interface Argument extends Serializable {
         /**
          * Returns a short, unique identifier for the argument.
@@ -158,7 +156,6 @@
      * whose value is Boolean.  Boolean values are represented
      * by the localized versions of the strings "true" and "false".
      */
-    @jdk.Exported
     public interface BooleanArgument extends Argument {
         /**
          * Sets the value of the argument.
@@ -199,7 +196,6 @@
      * whose value is an integer.  Integer values are represented
      * by their corresponding strings.
      */
-    @jdk.Exported
     public interface IntegerArgument extends Argument {
         /**
          * Sets the value of the argument.
@@ -261,7 +257,6 @@
      * Specification for and value of a Connector argument,
      * whose value is a String.
      */
-    @jdk.Exported
     public interface StringArgument extends Argument {
         /**
          * Performs basic sanity check of argument.
@@ -274,7 +269,6 @@
      * Specification for and value of a Connector argument,
      * whose value is a String selected from a list of choices.
      */
-    @jdk.Exported
     public interface SelectedArgument extends Argument {
         /**
          * Return the possible values for the argument
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/IllegalConnectorArgumentsException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/IllegalConnectorArgumentsException.java
index b7f57c0..d122fa2 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/IllegalConnectorArgumentsException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/IllegalConnectorArgumentsException.java
@@ -36,7 +36,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class IllegalConnectorArgumentsException extends Exception {
 
     private static final long serialVersionUID = -3042212603611350941L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/LaunchingConnector.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/LaunchingConnector.java
index af801e9..2ad3ba6 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/LaunchingConnector.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/LaunchingConnector.java
@@ -35,7 +35,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface LaunchingConnector extends Connector {
     /**
      * Launches an application and connects to its VM. Properties
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java
index 1048201..0057299 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/ListeningConnector.java
@@ -35,7 +35,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface ListeningConnector extends Connector {
     /**
      * Indicates whether this listening connector supports multiple
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Transport.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Transport.java
index 102d64c..d185132 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Transport.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/Transport.java
@@ -42,7 +42,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public interface Transport {
     /**
      * Returns a short identifier for the transport.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java
index 2a13567..d2a8e50 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/TransportTimeoutException.java
@@ -54,7 +54,6 @@
  *
  * @since 1.5
  */
-@jdk.Exported
 public class TransportTimeoutException extends java.io.IOException {
     private static final long serialVersionUID = 4107035242623365074L;
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/VMStartException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/VMStartException.java
index 04c0629..0296e78 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/VMStartException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/VMStartException.java
@@ -34,7 +34,6 @@
  * @author Gordon Hirsch
  * @since  1.3
  */
-@jdk.Exported
 public class VMStartException extends Exception {
 
     private static final long serialVersionUID = 6408644824640801020L;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/package-info.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/package-info.java
index c444b75..c7a240e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/package-info.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/package-info.java
@@ -35,5 +35,4 @@
  * extension.
  */
 
-@jdk.Exported
 package com.sun.jdi.connect;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/ClosedConnectionException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/ClosedConnectionException.java
index 009128b..88fc547 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/ClosedConnectionException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/ClosedConnectionException.java
@@ -45,7 +45,6 @@
  *
  * @since 1.5
  */
-@jdk.Exported
 public class ClosedConnectionException extends java.io.IOException {
     private static final long serialVersionUID = 3877032124297204774L;
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/Connection.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/Connection.java
index 31e1ca5..2067d71 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/Connection.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/Connection.java
@@ -56,7 +56,6 @@
  * @since 1.5
  */
 
-@jdk.Exported
 public abstract class Connection {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java
index f51c762..61eba88 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/TransportService.java
@@ -77,7 +77,6 @@
  * @since 1.5
  */
 
-@jdk.Exported
 public abstract class TransportService {
 
     /**
@@ -97,7 +96,6 @@
     /**
      * The transport service capabilities.
      */
-    @jdk.Exported
     public static abstract class Capabilities {
 
         /**
@@ -231,7 +229,6 @@
      * #stopListening stopListening} to stop the transport
      * service from listening on an address.
      */
-    @jdk.Exported
     public static abstract class ListenKey {
 
         /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/package-info.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/package-info.java
index 956e28d..ad8a359 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/package-info.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/connect/spi/package-info.java
@@ -29,5 +29,4 @@
  * implementations.
  */
 
-@jdk.Exported
 package com.sun.jdi.connect.spi;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java
index b04d4f7..b56f0ca 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java
@@ -37,6 +37,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface AccessWatchpointEvent extends WatchpointEvent {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java
index 565f4f0..131a031 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/BreakpointEvent.java
@@ -47,6 +47,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface BreakpointEvent extends LocatableEvent {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java
index 2f0bf5a..4812994a 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassPrepareEvent.java
@@ -39,7 +39,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ClassPrepareEvent extends Event {
     /**
      * Returns the thread in which this event has occurred.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java
index b900e6a..3576195 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ClassUnloadEvent.java
@@ -39,7 +39,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ClassUnloadEvent extends Event {
     /**
      * Returns the name of the class that has been unloaded.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java
index 8e8185c..b6f9653 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/Event.java
@@ -43,7 +43,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface Event extends Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java
index e16ccc5..0028d85 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventIterator.java
@@ -40,7 +40,6 @@
  * @since  1.3
  */
 
-@jdk.Exported
 public interface EventIterator extends Iterator<Event> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java
index e7912ba..f4c313a 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventQueue.java
@@ -57,7 +57,6 @@
  * @since  1.3
  */
 
-@jdk.Exported
 public interface EventQueue extends Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java
index 640dacd..1acef1e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/EventSet.java
@@ -126,7 +126,6 @@
  * @since  1.3
  */
 
-@jdk.Exported
 public interface EventSet extends Mirror, Set<Event> {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java
index 91ed8e4..ba887e5 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ExceptionEvent.java
@@ -44,7 +44,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ExceptionEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java
index ab4d7f5..489e611 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/LocatableEvent.java
@@ -36,7 +36,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface LocatableEvent extends Event, Locatable {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java
index 29e4df6..29216ed 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodEntryEvent.java
@@ -43,7 +43,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface MethodEntryEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java
index 6c7ad30..67ef528 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MethodExitEvent.java
@@ -40,7 +40,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface MethodExitEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java
index 965a6cd..b35a9f7 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java
@@ -38,7 +38,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ModificationWatchpointEvent extends WatchpointEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java
index 8e7cbaa..e3b3a8f 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java
@@ -39,7 +39,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorContendedEnterEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java
index 8b4ca48..774e1b7 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java
@@ -38,7 +38,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorContendedEnteredEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java
index 9a06435..2e5c63f 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitEvent.java
@@ -37,7 +37,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorWaitEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java
index f29bed1..93917b5 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java
@@ -37,7 +37,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorWaitedEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java
index 2790787..269ed38 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/StepEvent.java
@@ -46,6 +46,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface StepEvent extends LocatableEvent {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java
index cd23380..1277172 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadDeathEvent.java
@@ -45,7 +45,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ThreadDeathEvent extends Event {
     /**
      * Returns the thread which is terminating.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java
index 01e9e63..e5fa0d2 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/ThreadStartEvent.java
@@ -52,7 +52,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ThreadStartEvent extends Event {
     /**
      * Returns the thread which has started.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java
index c96aa12..21e0107 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDeathEvent.java
@@ -68,6 +68,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface VMDeathEvent extends Event {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java
index 82c49e2..a2cf66e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMDisconnectEvent.java
@@ -52,6 +52,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface VMDisconnectEvent extends Event {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java
index 586526a..37693ad 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/VMStartEvent.java
@@ -43,7 +43,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface VMStartEvent extends Event {
     /**
      * Returns the initial thread of the VM which has started.
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java
index 0246bff..4573407 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/WatchpointEvent.java
@@ -37,7 +37,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface WatchpointEvent extends LocatableEvent {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/package-info.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/package-info.java
index fa9afe3..921df07 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/package-info.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/event/package-info.java
@@ -43,5 +43,4 @@
  * extension.
  */
 
-@jdk.Exported
 package com.sun.jdi.event;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/package-info.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/package-info.java
index 00f422f..3b34bc2 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/package-info.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/package-info.java
@@ -44,5 +44,4 @@
  * extension.
  */
 
-@jdk.Exported
 package com.sun.jdi;
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java
index 9b6e71b..091cf44 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java
@@ -55,6 +55,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface AccessWatchpointRequest extends WatchpointRequest {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java
index c6d937e..259aa54 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/BreakpointRequest.java
@@ -46,7 +46,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface BreakpointRequest extends EventRequest, Locatable {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java
index 4bd1b78..efaf237 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassPrepareRequest.java
@@ -47,7 +47,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ClassPrepareRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java
index 4335c03..2f2758e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ClassUnloadRequest.java
@@ -46,7 +46,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ClassUnloadRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java
index 3412f23..fa8c078 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/DuplicateRequestException.java
@@ -31,7 +31,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public class DuplicateRequestException extends RuntimeException {
     private static final long serialVersionUID = -3719784920313411060L;
 
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java
index 137fdbb..062fc53 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequest.java
@@ -78,7 +78,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface EventRequest extends Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java
index e3b421a..cfd53b7 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/EventRequestManager.java
@@ -44,7 +44,6 @@
  * @since  1.3
  */
 
-@jdk.Exported
 public interface EventRequestManager extends Mirror {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java
index 8de652f..5dad44e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ExceptionRequest.java
@@ -43,7 +43,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ExceptionRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java
index 6faab81..8bcd93e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/InvalidRequestStateException.java
@@ -35,7 +35,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public class InvalidRequestStateException extends RuntimeException {
     private static final long serialVersionUID = -3774632428543322148L;
     public InvalidRequestStateException()
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java
index c31a1e7..8636b10 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodEntryRequest.java
@@ -44,7 +44,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface MethodEntryRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java
index 8c64b9f..f8a852a 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MethodExitRequest.java
@@ -44,7 +44,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface MethodExitRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java
index 9946584..29247df 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java
@@ -55,6 +55,5 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ModificationWatchpointRequest extends WatchpointRequest {
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java
index 56c4625..2422dad 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java
@@ -45,7 +45,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorContendedEnterRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java
index cc36ea2..ad61772 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java
@@ -45,7 +45,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorContendedEnteredRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java
index 9cb162b..81433ca 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitRequest.java
@@ -45,7 +45,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorWaitRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java
index 6cc41fb..1b278ef 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java
@@ -45,7 +45,6 @@
  * @author Swamy Venkataramanappa
  * @since  1.6
  */
-@jdk.Exported
 public interface MonitorWaitedRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java
index abcb249..df3c899 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/StepRequest.java
@@ -43,7 +43,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface StepRequest extends EventRequest {
 
     /** Step into any newly pushed frames */
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java
index 916fff4..f39eb3e 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java
@@ -44,7 +44,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ThreadDeathRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java
index c34d171..0ee00a0 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java
@@ -44,7 +44,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface ThreadStartRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java
index 69a767f..4aadcc9 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/VMDeathRequest.java
@@ -56,7 +56,6 @@
  * @author Robert Field
  * @since  1.4
  */
-@jdk.Exported
 public interface VMDeathRequest extends EventRequest {
 
 }
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java
index 0b0de7e..9fb63ca 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/WatchpointRequest.java
@@ -38,7 +38,6 @@
  * @author Robert Field
  * @since  1.3
  */
-@jdk.Exported
 public interface WatchpointRequest extends EventRequest {
 
     /**
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/package-info.java b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/package-info.java
index add151d..1b430ca 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/package-info.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/jdi/request/package-info.java
@@ -42,5 +42,4 @@
  * extension.
  */
 
-@jdk.Exported
 package com.sun.jdi.request;
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java b/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java
index 8396a85..2087486 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java
@@ -82,7 +82,6 @@
  * </ul>
  **/
 
-@jdk.Exported
 public class GarbageCollectionNotificationInfo implements  CompositeDataView {
 
     private final String gcName;
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectorMXBean.java b/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectorMXBean.java
index 4963eac..0ee508d 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectorMXBean.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectorMXBean.java
@@ -37,7 +37,6 @@
  * @author  Mandy Chung
  * @since   1.5
  */
-@jdk.Exported
 public interface GarbageCollectorMXBean
     extends java.lang.management.GarbageCollectorMXBean {
 
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/GcInfo.java b/jdk/src/jdk.management/share/classes/com/sun/management/GcInfo.java
index f256b08..ffb25e4 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/GcInfo.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/GcInfo.java
@@ -63,7 +63,6 @@
  * @author  Mandy Chung
  * @since   1.5
  */
-@jdk.Exported
 public class GcInfo implements CompositeData, CompositeDataView {
     private final long index;
     private final long startTime;
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java b/jdk/src/jdk.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java
index 1d64ae0..40d79a2 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java
@@ -47,7 +47,6 @@
  *
  * @see java.lang.management.ManagementFactory#getPlatformMXBeans(Class)
  */
-@jdk.Exported
 public interface HotSpotDiagnosticMXBean extends PlatformManagedObject {
     /**
      * Dumps the heap to the {@code outputFile} file in the same
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/OperatingSystemMXBean.java b/jdk/src/jdk.management/share/classes/com/sun/management/OperatingSystemMXBean.java
index edee07f..feb8e94 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/OperatingSystemMXBean.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/OperatingSystemMXBean.java
@@ -39,7 +39,6 @@
  * @author  Mandy Chung
  * @since   1.5
  */
-@jdk.Exported
 public interface OperatingSystemMXBean extends
     java.lang.management.OperatingSystemMXBean {
 
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/ThreadMXBean.java b/jdk/src/jdk.management/share/classes/com/sun/management/ThreadMXBean.java
index 4801bba..c45e49e 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/ThreadMXBean.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/ThreadMXBean.java
@@ -38,7 +38,6 @@
  * @since   6u25
  */
 
-@jdk.Exported
 public interface ThreadMXBean extends java.lang.management.ThreadMXBean {
     /**
      * Returns the total CPU time for each thread whose ID is
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/UnixOperatingSystemMXBean.java b/jdk/src/jdk.management/share/classes/com/sun/management/UnixOperatingSystemMXBean.java
index f094f5c..d0b64f0 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/UnixOperatingSystemMXBean.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/UnixOperatingSystemMXBean.java
@@ -32,7 +32,6 @@
  * @author  Mandy Chung
  * @since   1.5
  */
-@jdk.Exported
 public interface UnixOperatingSystemMXBean extends
     com.sun.management.OperatingSystemMXBean {
 
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/VMOption.java b/jdk/src/jdk.management/share/classes/com/sun/management/VMOption.java
index bebe197..4d92900 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/VMOption.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/VMOption.java
@@ -52,7 +52,6 @@
  * @author Mandy Chung
  * @since 1.6
  */
-@jdk.Exported
 public class VMOption {
     private String name;
     private String value;
@@ -65,7 +64,6 @@
      *
      * @since 1.6
      */
-    @jdk.Exported
     public enum Origin {
         /**
          * The VM option has not been set and its value
diff --git a/jdk/src/jdk.management/share/classes/com/sun/management/package-info.java b/jdk/src/jdk.management/share/classes/com/sun/management/package-info.java
index 75808f5..92b200f 100644
--- a/jdk/src/jdk.management/share/classes/com/sun/management/package-info.java
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/package-info.java
@@ -40,5 +40,4 @@
  * @since   1.5
  */
 
-@jdk.Exported
 package com.sun.management;
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AbstractNotificationHandler.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AbstractNotificationHandler.java
index 498897f..5cf4f80 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AbstractNotificationHandler.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AbstractNotificationHandler.java
@@ -39,7 +39,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public class AbstractNotificationHandler<T>
     implements NotificationHandler<T>
 {
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Association.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Association.java
index 9d48b1f..79170dd 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Association.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Association.java
@@ -51,7 +51,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public class Association {
     private final int associationID;
     private final int maxInStreams;
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AssociationChangeNotification.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AssociationChangeNotification.java
index 7aefc78..6799f3f 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AssociationChangeNotification.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/AssociationChangeNotification.java
@@ -29,7 +29,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class AssociationChangeNotification
     implements Notification
 {
@@ -38,7 +37,6 @@
      *
      * @since 1.7
      */
-    @jdk.Exported
     public enum AssocChangeEvent
     {
         /**
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/HandlerResult.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/HandlerResult.java
index b884f82..c4ca0a3 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/HandlerResult.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/HandlerResult.java
@@ -34,7 +34,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public enum HandlerResult {
     /**
      * Try to receieve another message or notification.
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalReceiveException.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalReceiveException.java
index 7665817..a007c9e 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalReceiveException.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalReceiveException.java
@@ -31,7 +31,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public class IllegalReceiveException extends IllegalStateException {
     private static final long serialVersionUID = 2296619040988576224L;
 
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalUnbindException.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalUnbindException.java
index 5ba8616..3d4a3de 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalUnbindException.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/IllegalUnbindException.java
@@ -31,7 +31,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public class IllegalUnbindException extends IllegalStateException {
     private static final long serialVersionUID = -310540883995532224L;
 
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/InvalidStreamException.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/InvalidStreamException.java
index 0c0c93c..9c04372 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/InvalidStreamException.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/InvalidStreamException.java
@@ -30,7 +30,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public class InvalidStreamException extends IllegalArgumentException {
     private static final long serialVersionUID = -9172703378046665558L;
 
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/MessageInfo.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/MessageInfo.java
index e3208f2..8fdd4e3 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/MessageInfo.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/MessageInfo.java
@@ -56,7 +56,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class MessageInfo {
     /**
      * Initializes a new instance of this class.
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Notification.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Notification.java
index 7b15b23..e71b88e 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Notification.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/Notification.java
@@ -37,7 +37,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public interface Notification {
     /**
      * Returns the association that this notification is applicable to.
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/NotificationHandler.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/NotificationHandler.java
index 27b357f..9e5f239 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/NotificationHandler.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/NotificationHandler.java
@@ -49,7 +49,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public interface NotificationHandler<T> {
     /**
      * Invoked when a notification is received from the SCTP stack.
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/PeerAddressChangeNotification.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/PeerAddressChangeNotification.java
index 4eab3cb..f6f895e 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/PeerAddressChangeNotification.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/PeerAddressChangeNotification.java
@@ -32,7 +32,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class PeerAddressChangeNotification
     implements Notification
 {
@@ -47,7 +46,6 @@
      *
      * @since 1.7
      */
-    @jdk.Exported
     public enum AddressChangeEvent {
         /**
          * This address is now reachable.
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java
index 065b130..c704332 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java
@@ -134,7 +134,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class SctpChannel
     extends AbstractSelectableChannel
 {
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java
index aa32a74..5294143 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java
@@ -134,7 +134,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class SctpMultiChannel
     extends AbstractSelectableChannel
 {
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java
index 0e9b9c3..4a2ced9 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java
@@ -68,7 +68,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class SctpServerChannel
     extends AbstractSelectableChannel
 {
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpSocketOption.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpSocketOption.java
index 72c92f5..2b4d0ab 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpSocketOption.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpSocketOption.java
@@ -35,5 +35,4 @@
  *
  * @see SctpStandardSocketOptions
  */
-@jdk.Exported
 public interface SctpSocketOption<T> extends SocketOption<T> { }
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpStandardSocketOptions.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpStandardSocketOptions.java
index 75e5c0c..27f175c 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpStandardSocketOptions.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpStandardSocketOptions.java
@@ -34,7 +34,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public class SctpStandardSocketOptions {
     private SctpStandardSocketOptions() {}
     /**
@@ -316,7 +315,6 @@
      *
      * @since 1.7
      */
-    @jdk.Exported
     public static class InitMaxStreams {
         private int maxInStreams;
         private int maxOutStreams;
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SendFailedNotification.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SendFailedNotification.java
index d69a666..22abe88 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SendFailedNotification.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/SendFailedNotification.java
@@ -37,7 +37,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class SendFailedNotification implements Notification {
     /**
      * Initializes a new instance of this class.
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/ShutdownNotification.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/ShutdownNotification.java
index 90f66b9..2a8d7ba 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/ShutdownNotification.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/ShutdownNotification.java
@@ -32,7 +32,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public abstract class ShutdownNotification implements Notification {
     /**
      * Initializes a new instance of this class.
diff --git a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/package-info.java b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/package-info.java
index ac9cca9..0cf19db 100644
--- a/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/package-info.java
+++ b/jdk/src/jdk.sctp/share/classes/com/sun/nio/sctp/package-info.java
@@ -72,5 +72,4 @@
  * @since 1.7
  */
 
-@jdk.Exported
 package com.sun.nio.sctp;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/LdapPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/LdapPrincipal.java
index 6a324ee..6af3942 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/LdapPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/LdapPrincipal.java
@@ -45,7 +45,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public final class LdapPrincipal implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = 6820120005580754861L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTDomainPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTDomainPrincipal.java
index 995732e..2b15a50 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTDomainPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTDomainPrincipal.java
@@ -45,7 +45,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class NTDomainPrincipal implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = -4408637351440771220L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTNumericCredential.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTNumericCredential.java
index eca8158..480e400 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTNumericCredential.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTNumericCredential.java
@@ -30,7 +30,6 @@
  * and provides a mechanism to do same-process security impersonation.
  */
 
-@jdk.Exported
 public class NTNumericCredential {
 
     private long impersonationToken;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSid.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSid.java
index a304eeb..602e817 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSid.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSid.java
@@ -47,7 +47,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class NTSid implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = 4412290580770249885L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidDomainPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidDomainPrincipal.java
index 0911f79..2b033bb 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidDomainPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidDomainPrincipal.java
@@ -43,7 +43,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class NTSidDomainPrincipal extends NTSid {
 
     private static final long serialVersionUID = 5247810785821650912L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidGroupPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidGroupPrincipal.java
index 9bdc87b..d63451e 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidGroupPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidGroupPrincipal.java
@@ -40,7 +40,6 @@
  * @see javax.security.auth.Subject
  * @see com.sun.security.auth.NTSid
  */
-@jdk.Exported
 public class NTSidGroupPrincipal extends NTSid {
 
     private static final long serialVersionUID = -1373347438636198229L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidPrimaryGroupPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidPrimaryGroupPrincipal.java
index 1d33ee3..7a482a7 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidPrimaryGroupPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidPrimaryGroupPrincipal.java
@@ -39,7 +39,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class NTSidPrimaryGroupPrincipal extends NTSid {
 
     private static final long serialVersionUID = 8011978367305190527L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidUserPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidUserPrincipal.java
index c95d82a..b2e583d 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidUserPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTSidUserPrincipal.java
@@ -39,7 +39,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class NTSidUserPrincipal extends NTSid {
 
     private static final long serialVersionUID = -5573239889517749525L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTUserPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTUserPrincipal.java
index 1005793..687682b 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTUserPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/NTUserPrincipal.java
@@ -41,7 +41,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class NTUserPrincipal implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = -8737649811939033735L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java
index e61e821..38a9709 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java
@@ -215,7 +215,6 @@
  * @see java.security.ProtectionDomain
  * @see java.security.Security security properties
  */
-@jdk.Exported(false)
 @Deprecated
 public class PolicyFile extends javax.security.auth.Policy {
 
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PrincipalComparator.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PrincipalComparator.java
index bb0aab1..db90f09 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PrincipalComparator.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PrincipalComparator.java
@@ -50,7 +50,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public interface PrincipalComparator {
     /**
      * Check if the specified {@code Subject} is implied by
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java
index 377e616..983e987 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java
@@ -45,7 +45,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported(false)
 @Deprecated
 public class SolarisNumericGroupPrincipal implements
                                         Principal,
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java
index 5497856..5068526 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java
@@ -44,7 +44,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported(false)
 @Deprecated
 public class SolarisNumericUserPrincipal implements
                                         Principal,
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java
index 4aef765..3350e08 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java
@@ -44,7 +44,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported(false)
 @Deprecated
 public class SolarisPrincipal implements Principal, java.io.Serializable {
 
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericGroupPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericGroupPrincipal.java
index 4a96480..f71aa12 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericGroupPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericGroupPrincipal.java
@@ -41,7 +41,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class UnixNumericGroupPrincipal implements
                                         Principal,
                                         java.io.Serializable {
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericUserPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericUserPrincipal.java
index cb252a8..e07cb8a 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericUserPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixNumericUserPrincipal.java
@@ -41,7 +41,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class UnixNumericUserPrincipal implements
                                         Principal,
                                         java.io.Serializable {
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixPrincipal.java
index 9694bc7..1215015 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UnixPrincipal.java
@@ -41,7 +41,6 @@
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@jdk.Exported
 public class UnixPrincipal implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = -2951667807323493631L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UserPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UserPrincipal.java
index f4e7555..04b133e 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UserPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/UserPrincipal.java
@@ -42,7 +42,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public final class UserPrincipal implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = 892106070870210969L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java
index 52fdcf8..736309fd 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java
@@ -49,7 +49,6 @@
  *             class.
  * @see javax.security.auth.x500.X500Principal
 */
-@jdk.Exported(false)
 @Deprecated
 public class X500Principal implements Principal, java.io.Serializable {
 
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/TextCallbackHandler.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/TextCallbackHandler.java
index 4d6f7b6..9170f75 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/TextCallbackHandler.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/TextCallbackHandler.java
@@ -46,7 +46,6 @@
  * @see javax.security.auth.callback
  */
 
-@jdk.Exported
 public class TextCallbackHandler implements CallbackHandler {
     private final CallbackHandler consoleHandler;
 
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/package-info.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/package-info.java
index 61d6568..8786680 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/package-info.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/callback/package-info.java
@@ -23,5 +23,4 @@
  * questions.
  */
 
-@jdk.Exported
 package com.sun.security.auth.callback;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/ConfigFile.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/ConfigFile.java
index 5305817..3e6dc7d 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/ConfigFile.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/ConfigFile.java
@@ -83,7 +83,6 @@
  * @see javax.security.auth.login.LoginContext
  * @see java.security.Security security properties
  */
-@jdk.Exported
 public class ConfigFile extends Configuration {
 
     private final sun.security.provider.ConfigFile.Spi spi;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/package-info.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/package-info.java
index a0b207c..45a01ea 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/package-info.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/login/package-info.java
@@ -23,5 +23,4 @@
  * questions.
  */
 
-@jdk.Exported
 package com.sun.security.auth.login;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/JndiLoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/JndiLoginModule.java
index bc7a1a9..1642e43 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/JndiLoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/JndiLoginModule.java
@@ -151,7 +151,6 @@
  * </pre>
  *
  */
-@jdk.Exported
 public class JndiLoginModule implements LoginModule {
 
     private static final ResourceBundle rb = AccessController.doPrivileged(
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java
index ece0d3f..92ec5bc 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java
@@ -110,7 +110,6 @@
  *
  * </dl>
  */
-@jdk.Exported
 public class KeyStoreLoginModule implements LoginModule {
 
     private static final ResourceBundle rb = AccessController.doPrivileged(
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/Krb5LoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/Krb5LoginModule.java
index b4360c7..8f09436 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/Krb5LoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/Krb5LoginModule.java
@@ -367,7 +367,6 @@
  * @author Ram Marti
  */
 
-@jdk.Exported
 public class Krb5LoginModule implements LoginModule {
 
     // initial state
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/LdapLoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/LdapLoginModule.java
index 167530a..7c2da184 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/LdapLoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/LdapLoginModule.java
@@ -303,7 +303,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public class LdapLoginModule implements LoginModule {
 
     // Use the default classloader for this class to load the prompt strings.
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTLoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTLoginModule.java
index 98d1f13..c251d54 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTLoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTLoginModule.java
@@ -57,7 +57,6 @@
  *
  * @see javax.security.auth.spi.LoginModule
  */
-@jdk.Exported
 public class NTLoginModule implements LoginModule {
 
     private NTSystem ntSystem;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTSystem.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTSystem.java
index d156369..9dbd693 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTSystem.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTSystem.java
@@ -30,7 +30,6 @@
  * security information for the current user.
  *
  */
-@jdk.Exported
 public class NTSystem {
 
     private native void getCurrent(boolean debug);
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java
index 9b5adb0..f5666ff 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java
@@ -52,7 +52,6 @@
  *             UnixLoginModule.
  *
  */
-@jdk.Exported(false)
 @Deprecated
 public class SolarisLoginModule implements LoginModule {
 
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java
index 98f6f4c..ea4842a 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java
@@ -31,7 +31,6 @@
  *
  * @deprecated replaced by {@link UnixSystem}.
  */
-@jdk.Exported(false)
 @Deprecated
 public class SolarisSystem {
 
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixLoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixLoginModule.java
index 704b11d..a2acf7a 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixLoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixLoginModule.java
@@ -47,7 +47,6 @@
  * debug messages will be output to the output stream, System.out.
  *
  */
-@jdk.Exported
 public class UnixLoginModule implements LoginModule {
 
     // initial state
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixSystem.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixSystem.java
index 43f93f7..46b1c94 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixSystem.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/UnixSystem.java
@@ -29,7 +29,6 @@
  * This class implementation retrieves and makes available Unix
  * UID/GID/groups information for the current user.
  */
-@jdk.Exported
 public class UnixSystem {
 
     private native void getUnixInfo();
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/package-info.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/package-info.java
index 2156967..9056324 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/package-info.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/package-info.java
@@ -23,5 +23,4 @@
  * questions.
  */
 
-@jdk.Exported
 package com.sun.security.auth.module;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/package-info.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/package-info.java
index 3fe7e20..c0397bf 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/package-info.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/package-info.java
@@ -23,5 +23,4 @@
  * questions.
  */
 
-@jdk.Exported
 package com.sun.security.auth;
diff --git a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/AuthorizationDataEntry.java b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/AuthorizationDataEntry.java
index 5ec9e61..eabaac9 100644
--- a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/AuthorizationDataEntry.java
+++ b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/AuthorizationDataEntry.java
@@ -28,7 +28,6 @@
 /**
  * Kerberos 5 AuthorizationData entry.
  */
-@jdk.Exported
 public final class AuthorizationDataEntry {
 
     private final int type;
diff --git a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSContext.java b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSContext.java
index 32e6b04..3496a5f 100644
--- a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSContext.java
+++ b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSContext.java
@@ -34,7 +34,6 @@
  * functionalities not defined by {@code org.ietf.jgss.GSSContext},
  * such as querying context-specific attributes.
  */
-@jdk.Exported
 public interface ExtendedGSSContext extends GSSContext {
 
     // The impl is almost identical to GSSContextImpl with only 2 differences:
diff --git a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSCredential.java b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSCredential.java
index 56fe103..0e95827 100644
--- a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSCredential.java
+++ b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSCredential.java
@@ -33,7 +33,6 @@
  * functionalities not defined by {@code org.ietf.jgss.GSSCredential}.
  * @since 1.8
  */
-@jdk.Exported
 public interface ExtendedGSSCredential extends GSSCredential {
 
     static class ExtendedGSSCredentialImpl extends GSSCredentialImpl
diff --git a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/GSSUtil.java b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/GSSUtil.java
index 2358c58..e1f63c2 100644
--- a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/GSSUtil.java
+++ b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/GSSUtil.java
@@ -33,7 +33,6 @@
  * GSS-API Utilities for using in conjunction with Sun Microsystem's
  * implementation of Java GSS-API.
  */
-@jdk.Exported
 public class GSSUtil {
 
     /**
diff --git a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireSecContextPermission.java b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireSecContextPermission.java
index f8e850c..618d3c7 100644
--- a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireSecContextPermission.java
+++ b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireSecContextPermission.java
@@ -35,7 +35,6 @@
  *
  * <p>The target name is the {@link InquireType} allowed.
  */
-@jdk.Exported
 public final class InquireSecContextPermission extends BasicPermission {
     private static final long serialVersionUID = -7131173349668647297L;
 
diff --git a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireType.java b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireType.java
index 09d407a..5ba482d 100644
--- a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireType.java
+++ b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/InquireType.java
@@ -29,7 +29,6 @@
  * Attribute types that can be specified as an argument of
  * {@link com.sun.security.jgss.ExtendedGSSContext#inquireSecContext}
  */
-@jdk.Exported
 public enum InquireType {
     /**
      * Attribute type for retrieving the session key of an established
diff --git a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/package-info.java b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/package-info.java
index b1c82d7..5bd43c8 100644
--- a/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/package-info.java
+++ b/jdk/src/jdk.security.jgss/share/classes/com/sun/security/jgss/package-info.java
@@ -23,5 +23,4 @@
  * questions.
  */
 
-@jdk.Exported
 package com.sun.security.jgss;
diff --git a/jdk/test/java/io/RandomAccessFile/FileLengthTest.java b/jdk/test/java/io/RandomAccessFile/FileLengthTest.java
new file mode 100644
index 0000000..3f5bff1
--- /dev/null
+++ b/jdk/test/java/io/RandomAccessFile/FileLengthTest.java
@@ -0,0 +1,137 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE randomAccessFile that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 4823133
+ * @summary optimize RandomAccessFile.length() and length() is thread safe now.
+ */
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.RandomAccessFile;
+
+/**
+ *
+ * @author vyom.tewari@oracle.com
+ */
+public class FileLengthTest {
+
+    private static final int BUF_SIZE = 4096;
+    private static RandomAccessFile randomAccessFile;
+    private static Thread fileLengthCaller;
+    private static Thread fileContentReader;
+    private static StringBuilder fileContents;
+    private static volatile boolean isFailed = false;
+
+    /**
+     * this thread will call length() in loop
+     */
+    private static void startLengthThread() {
+        if (randomAccessFile == null) {
+            return;
+        }
+        fileLengthCaller = new Thread(() -> {
+            while (true) {
+                try {
+                    long length = randomAccessFile.length();
+                    if (length < 0) {
+                        return;
+                    }
+                } catch (IOException ex) {
+                    return;
+                }
+            }
+        });
+        fileLengthCaller.setName("RandomAccessFile-length-caller");
+        fileLengthCaller.setDaemon(true);
+        fileLengthCaller.start();
+    }
+
+    /**
+     * this thread will call read() and store the content in internal buffer.
+     */
+    private static void startReaderThread() {
+        if (randomAccessFile == null) {
+            return;
+        }
+        fileContentReader = new Thread(() -> {
+            StringBuilder sb = new StringBuilder(BUF_SIZE);
+            int i;
+            byte arr[] = new byte[8];
+            try {
+                while ((i = randomAccessFile.read(arr)) != -1) {
+                    sb.append(new String(arr, 0, i));
+                }
+                if (!sb.toString().equals(fileContents.toString())) {
+                    isFailed = true;
+                }
+            } catch (IOException ex) {
+            }
+        });
+        fileContentReader.setName("RandomAccessFile-content-reader");
+        fileContentReader.setDaemon(true);
+        fileContentReader.start();
+    }
+
+    public static void main(String args[]) {
+        byte arr[] = new byte[BUF_SIZE];
+        String testFile = "testfile.txt";
+        try {
+            createDummyFile(testFile);
+            File file = new File(testFile);
+            file.deleteOnExit();
+            randomAccessFile = new RandomAccessFile(file, "r");
+            int count = randomAccessFile.read(arr);
+            randomAccessFile.seek(0);
+            fileContents = new StringBuilder(BUF_SIZE);
+            fileContents.append(new String(arr, 0, count));
+            startLengthThread();
+            startReaderThread();
+            fileContentReader.join();
+        } catch (FileNotFoundException | InterruptedException ex) {
+        } catch (IOException ex) {
+        } finally {
+            try {
+                randomAccessFile.close();
+            } catch (IOException ex) {
+            }
+        }
+        if (isFailed) {
+            throw new RuntimeException("RandomAccessFile.length() changed the underlying file pointer.");
+        }
+    }
+
+    private static void createDummyFile(String fileName) throws FileNotFoundException, IOException {
+        try (FileOutputStream outputStream = new FileOutputStream(new File(fileName))) {
+            String str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
+            int count = 0;
+            while ((count + str.length()) < BUF_SIZE) {
+                outputStream.write(str.getBytes());
+                count += str.length();
+            }
+            outputStream.flush();
+        }
+    }
+}
diff --git a/jdk/test/java/lang/ProcessHandle/Basic.java b/jdk/test/java/lang/ProcessHandle/Basic.java
index 3df63e9..dae3795 100644
--- a/jdk/test/java/lang/ProcessHandle/Basic.java
+++ b/jdk/test/java/lang/ProcessHandle/Basic.java
@@ -27,8 +27,8 @@
 import static org.testng.Assert.fail;
 
 import java.io.IOException;
-import java.util.Optional;
 import java.util.List;
+import java.util.Optional;
 import java.util.stream.Collectors;
 
 import org.testng.TestNG;
@@ -36,6 +36,8 @@
 
 /*
  * @test
+ * @library /test/lib/share/classes
+ * @run testng InfoTest
  * @summary Basic tests for ProcessHandler
  * @author Roger Riggs
  */
diff --git a/jdk/test/java/lang/ProcessHandle/InfoTest.java b/jdk/test/java/lang/ProcessHandle/InfoTest.java
index 38b1546..bca423b 100644
--- a/jdk/test/java/lang/ProcessHandle/InfoTest.java
+++ b/jdk/test/java/lang/ProcessHandle/InfoTest.java
@@ -21,11 +21,10 @@
  * questions.
  */
 
-import java.io.File;
 import java.io.BufferedReader;
+import java.io.File;
 import java.io.IOException;
 import java.io.UncheckedIOException;
-import java.lang.ProcessBuilder;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
@@ -40,18 +39,18 @@
 import java.util.Random;
 import java.util.concurrent.TimeUnit;
 
-import jdk.testlibrary.Platform;
-import jdk.testlibrary.Utils;
-
+import jdk.test.lib.Platform;
+import jdk.test.lib.Utils;
 import org.testng.Assert;
-import org.testng.annotations.Test;
 import org.testng.TestNG;
+import org.testng.annotations.Test;
 
 /*
  * @test
  * @bug 8077350 8081566 8081567 8098852 8136597
- * @build jdk.testlibrary.*
- * @library /lib/testlibrary
+ * @library /test/lib/share/classes
+ * @build jdk.test.lib.Platform jdk.test.lib.Utils
+ * @run testng InfoTest
  * @summary Functions of ProcessHandle.Info
  * @author Roger Riggs
  * @key intermittent
diff --git a/jdk/test/java/lang/ProcessHandle/OnExitTest.java b/jdk/test/java/lang/ProcessHandle/OnExitTest.java
index 9c7a519..3ec997d 100644
--- a/jdk/test/java/lang/ProcessHandle/OnExitTest.java
+++ b/jdk/test/java/lang/ProcessHandle/OnExitTest.java
@@ -22,7 +22,6 @@
  */
 
 import java.io.IOException;
-import java.lang.InterruptedException;
 import java.time.Duration;
 import java.time.Instant;
 import java.util.ArrayList;
@@ -31,7 +30,7 @@
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ExecutionException;
 
-import jdk.testlibrary.Utils;
+import jdk.test.lib.Utils;
 
 import org.testng.annotations.Test;
 import org.testng.Assert;
@@ -39,7 +38,9 @@
 
 /*
  * @test
- * @build jdk.testlibrary.Utils
+ * @library /test/lib/share/classes
+ * @build jdk.test.lib.Platform jdk.test.lib.Utils
+ * @run testng OnExitTest
  * @summary Functions of Process.onExit and ProcessHandle.onExit
  * @author Roger Riggs
  */
diff --git a/jdk/test/java/lang/ProcessHandle/PermissionTest.java b/jdk/test/java/lang/ProcessHandle/PermissionTest.java
index 042b9d1..7d596c2 100644
--- a/jdk/test/java/lang/ProcessHandle/PermissionTest.java
+++ b/jdk/test/java/lang/ProcessHandle/PermissionTest.java
@@ -31,7 +31,6 @@
 import java.security.ProtectionDomain;
 import java.security.SecurityPermission;
 import java.util.Arrays;
-import java.util.Optional;
 import java.util.PropertyPermission;
 
 import org.testng.Assert;
@@ -39,6 +38,12 @@
 import org.testng.annotations.BeforeGroups;
 import org.testng.annotations.Test;
 
+/*
+ * @test
+ * @run testng/othervm PermissionTest
+ * @summary Test Permissions to access Info
+ */
+
 public class PermissionTest {
     /**
      * Backing up policy.
diff --git a/jdk/test/java/lang/ProcessHandle/ProcessUtil.java b/jdk/test/java/lang/ProcessHandle/ProcessUtil.java
index c0c6916..48654ea 100644
--- a/jdk/test/java/lang/ProcessHandle/ProcessUtil.java
+++ b/jdk/test/java/lang/ProcessHandle/ProcessUtil.java
@@ -23,19 +23,14 @@
 
 import java.io.IOException;
 import java.lang.management.ManagementFactory;
-import java.lang.ProcessBuilder;
 import java.time.Duration;
 import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-import com.sun.management.OperatingSystemMXBean;
-
-import jdk.testlibrary.Platform;
-
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+import com.sun.management.OperatingSystemMXBean;
+import jdk.test.lib.Platform;
+
 /**
  * Useful utilities for testing Process and ProcessHandle.
  */
diff --git a/jdk/test/java/lang/ProcessHandle/TEST.properties b/jdk/test/java/lang/ProcessHandle/TEST.properties
deleted file mode 100644
index ca15632..0000000
--- a/jdk/test/java/lang/ProcessHandle/TEST.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-# ProcessHandle tests use TestNG
-TestNG.dirs = .
-lib.dirs = /lib/testlibrary
-modules = jdk.management
diff --git a/jdk/test/java/lang/ProcessHandle/TreeTest.java b/jdk/test/java/lang/ProcessHandle/TreeTest.java
index 45acc6f..85b752a 100644
--- a/jdk/test/java/lang/ProcessHandle/TreeTest.java
+++ b/jdk/test/java/lang/ProcessHandle/TreeTest.java
@@ -23,30 +23,31 @@
 
 
 import java.io.IOException;
-import java.util.ArrayList;
 import java.time.Duration;
 import java.time.Instant;
+import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.Collections;
 import java.util.List;
 import java.util.Optional;
 import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.ExecutionException;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
-import java.util.concurrent.ExecutionException;
-import jdk.testlibrary.Utils;
+
+import jdk.test.lib.Utils;
 import org.testng.Assert;
 import org.testng.TestNG;
 import org.testng.annotations.Test;
 
 /*
  * @test
- * @library /lib/testlibrary
- * Test counting and JavaChild.spawning and counting of Processes.
- * @run testng/othervm InfoTest
+ * @library /test/lib/share/classes
+ * @build jdk.test.lib.Utils
+ * @run testng/othervm TreeTest
+ * @summary Test counting and JavaChild.spawning and counting of Processes.
  * @key intermittent
  * @author Roger Riggs
  */
diff --git a/jdk/test/java/lang/management/MemoryMXBean/Pending.java b/jdk/test/java/lang/management/MemoryMXBean/Pending.java
index 728ff15..1567082 100644
--- a/jdk/test/java/lang/management/MemoryMXBean/Pending.java
+++ b/jdk/test/java/lang/management/MemoryMXBean/Pending.java
@@ -24,7 +24,7 @@
 /*
  * @test
  * @bug     4530538
- * @modules java.base/sun.misc
+ * @modules java.base/jdk.internal.misc
  *          java.management
  * @summary Basic unit test of
  *          RuntimeMXBean.getObjectPendingFinalizationCount()
@@ -50,10 +50,10 @@
     private static void printFinalizerInstanceCount() {
         if (!trace) return;
 
-        int count = sun.misc.VM.getFinalRefCount();
+        int count = jdk.internal.misc.VM.getFinalRefCount();
         System.out.println(INDENT + "Finalizable object Count = " + count);
 
-        count = sun.misc.VM.getPeakFinalRefCount();
+        count = jdk.internal.misc.VM.getPeakFinalRefCount();
         System.out.println(INDENT + "Peak Finalizable object Count = " + count);
     }
 
diff --git a/jdk/test/java/net/SocketOption/OptionsTest.java b/jdk/test/java/net/SocketOption/OptionsTest.java
index 5493c2c..947d784 100644
--- a/jdk/test/java/net/SocketOption/OptionsTest.java
+++ b/jdk/test/java/net/SocketOption/OptionsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -80,8 +80,11 @@
     static NetworkInterface getNetworkInterface() {
         try {
             Enumeration<NetworkInterface> nifs = NetworkInterface.getNetworkInterfaces();
-            if (nifs.hasMoreElements()) {
-                return (NetworkInterface)nifs.nextElement();
+            while (nifs.hasMoreElements()) {
+                NetworkInterface ni = (NetworkInterface)nifs.nextElement();
+                if (ni.supportsMulticast()) {
+                    return ni;
+                }
             }
         } catch (Exception e) {
         }
diff --git a/jdk/test/java/net/URLConnection/TIFFContentGuesser.java b/jdk/test/java/net/URLConnection/TIFFContentGuesser.java
new file mode 100644
index 0000000..c996b7a
--- /dev/null
+++ b/jdk/test/java/net/URLConnection/TIFFContentGuesser.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8146041
+ * @summary java.net.URLConnection.guessContentTypeFromStream() does not
+ * recognize TIFF streams
+ */
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+import java.net.URLConnection;
+
+public class TIFFContentGuesser {
+    private static final byte[] LITTLE_ENDIAN_MAGIC =
+        new byte[] {(byte)0x49, (byte)0x49, (byte)0x2a, (byte)0};
+    private static final byte[] BIG_ENDIAN_MAGIC =
+        new byte[] {(byte)0x4d, (byte)0x4d, (byte)0, (byte)0x2a};
+
+    private static final String TIFF_MIME_TYPE = "image/tiff";
+
+    public static void main(String[] args) throws Throwable {
+        int failures = 0;
+
+        InputStream stream = new ByteArrayInputStream(LITTLE_ENDIAN_MAGIC);
+        String contentType = URLConnection.guessContentTypeFromStream(stream);
+        if (contentType == null || !contentType.equals(TIFF_MIME_TYPE)) {
+            failures++;
+            System.err.println("Test failed for little endian magic");
+        }
+
+        stream = new ByteArrayInputStream(BIG_ENDIAN_MAGIC);
+        contentType = URLConnection.guessContentTypeFromStream(stream);
+        if (contentType == null || !contentType.equals(TIFF_MIME_TYPE)) {
+            failures++;
+            System.err.println("Test failed for big endian magic");
+        }
+
+        if (failures != 0) {
+            throw new RuntimeException
+                ("Test failed with " + failures +  " error(s)");
+        }
+    }
+}
+
diff --git a/jdk/test/java/net/ipv6tests/TcpTest.java b/jdk/test/java/net/ipv6tests/TcpTest.java
index 5f72553..63008ac 100644
--- a/jdk/test/java/net/ipv6tests/TcpTest.java
+++ b/jdk/test/java/net/ipv6tests/TcpTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -60,8 +60,7 @@
         dprintln ("Local Addresses");
         dprintln (ia4addr.toString());
         dprintln (ia6addr.toString());
-        test1 (0);
-        test1 (5100);
+        test1();
         test2();
         test3();
         test4();
@@ -69,11 +68,9 @@
 
     /* basic TCP connectivity test using IPv6 only and IPv4/IPv6 together */
 
-    static void test1 (int port) throws Exception {
-        server = new ServerSocket (port);
-        if (port == 0) {
-            port = server.getLocalPort();
-        }
+    static void test1 () throws Exception {
+        server = new ServerSocket (0);
+        int port = server.getLocalPort();
         // try Ipv6 only
         c1 = new Socket ("::1", port);
         s1 = server.accept ();
@@ -107,9 +104,7 @@
     /** bind tests:
      *  1. bind to specific address IPv4 only (any port)
      *  2. bind to specific address IPv6 only (any port)
-     *  3. bind to specific address IPv4 only (specific port)
-     *  4. bind to specific address IPv4 only (specific port)
-     *  5. bind to any address IPv4 (test collision)
+     *  3. bind to any address IPv4 (test collision)
      */
 
     static void test2 () throws Exception {
@@ -147,39 +142,6 @@
         server.close ();
         c1.close ();
 
-        /* now try IPv6 specific port only */
-
-        server = new ServerSocket ();
-        sadr = new InetSocketAddress (ia6addr, 5200);
-        server.bind (sadr);
-        port = server.getLocalPort();
-        t_assert (port == 5200);
-
-        c1 = new Socket (ia6addr, port);
-        try {
-            c2 = new Socket (ia4addr, port);
-            throw new RuntimeException ("connect to IPv4 address should be refused");
-        } catch (IOException e) { }
-        server.close ();
-        c1.close ();
-
-        /* now try IPv4 specific port only */
-
-        server = new ServerSocket ();
-        sadr = new InetSocketAddress (ia4addr, 5200);
-        server.bind (sadr);
-        port = server.getLocalPort();
-        t_assert (port == 5200);
-
-        c1 = new Socket (ia4addr, port);
-
-        try {
-            c2 = new Socket (ia6addr, port);
-            throw new RuntimeException ("connect to IPv6 address should be refused");
-        } catch (IOException e) { }
-        server.accept().close();
-        c1.close ();
-        server.close();
         System.out.println ("Test2: OK");
     }
 
@@ -242,3 +204,4 @@
         System.out.println ("Test4: OK");
     }
 }
+
diff --git a/jdk/test/java/nio/channels/DatagramChannel/StressNativeSignal.java b/jdk/test/java/nio/channels/DatagramChannel/StressNativeSignal.java
new file mode 100644
index 0000000..b21d68a
--- /dev/null
+++ b/jdk/test/java/nio/channels/DatagramChannel/StressNativeSignal.java
@@ -0,0 +1,147 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8050499
+ * @summary Attempt to provoke error 316 on OS X in NativeSignal.signal()
+ */
+
+import java.io.*;
+import java.net.*;
+import java.nio.ByteBuffer;
+import java.nio.channels.DatagramChannel;
+
+public class StressNativeSignal {
+    private UDPThread udpThread;
+    private ServerSocketThread serverSocketThread;
+
+    StressNativeSignal() {
+        try {
+            serverSocketThread = new ServerSocketThread();
+            serverSocketThread.start();
+
+            udpThread = new UDPThread();
+            udpThread.start();
+        } catch (Exception z) {
+            z.printStackTrace();
+        }
+    }
+
+    public static void main(String[] args) throws Throwable {
+        StressNativeSignal test = new StressNativeSignal();
+        try {
+            Thread.sleep(3000);
+        } catch (Exception z) {
+            z.printStackTrace(System.err);
+        }
+
+        test.shutdown();
+    }
+
+    public void shutdown() {
+        udpThread.terminate();
+        try {
+            udpThread.join();
+        } catch (Exception z) {
+            z.printStackTrace(System.err);
+        }
+
+        serverSocketThread.terminate();
+        try {
+            serverSocketThread.join();
+        } catch (Exception z) {
+            z.printStackTrace(System.err);
+        }
+    }
+
+    public class ServerSocketThread extends Thread {
+        private volatile boolean shouldTerminate;
+        private ServerSocket socket;
+
+        public void run() {
+            try {
+                socket = new ServerSocket(1122);
+                Socket client = socket.accept();
+                BufferedReader reader = new BufferedReader(new InputStreamReader(client.getInputStream()));
+                shouldTerminate = false;
+                while (!shouldTerminate) {
+                    String msg = reader.readLine();
+                }
+            } catch (Exception z) {
+                if (!shouldTerminate) {
+                    z.printStackTrace(System.err);
+                }
+            }
+        }
+
+        public void terminate() {
+            shouldTerminate = true;
+            try {
+                socket.close();
+            } catch (Exception z) {
+                z.printStackTrace(System.err);
+                // ignore
+            }
+        }
+    }
+
+    public class UDPThread extends Thread {
+        private DatagramChannel channel;
+        private volatile boolean shouldTerminate;
+
+        @Override
+        public void run() {
+            try {
+                channel = DatagramChannel.open();
+                channel.setOption(StandardSocketOptions.SO_RCVBUF, 6553600);
+                channel.bind(new InetSocketAddress(19870));
+            } catch (IOException z) {
+                z.printStackTrace(System.err);
+            }
+
+            ByteBuffer buf = ByteBuffer.allocate(6553600);
+            shouldTerminate = false;
+            while (!shouldTerminate) {
+                try {
+                    buf.rewind();
+                    channel.receive(buf);
+                } catch (IOException z) {
+                    if (!shouldTerminate) {
+                        z.printStackTrace(System.err);
+                    }
+                }
+            }
+        }
+
+        public void terminate() {
+            shouldTerminate = true;
+            try {
+                channel.close();
+            } catch (Exception z) {
+                z.printStackTrace(System.err);
+                // ignore
+            }
+        }
+    }
+
+}
diff --git a/jdk/test/java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile.java b/jdk/test/java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile.java
index caa712e..7641580 100644
--- a/jdk/test/java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile.java
+++ b/jdk/test/java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  */
 
 import java.io.File;
+import java.io.InputStream;
 import java.io.IOException;
 import java.nio.file.FileSystem;
 import java.nio.file.FileSystems;
@@ -49,6 +50,17 @@
     public static void main(String[] args)
         throws InterruptedException, IOException {
 
+        // Use 'which' to verify that 'nc' is available and skip the test
+        // if it is not.
+        Process proc = Runtime.getRuntime().exec("which nc");
+        InputStream stdout = proc.getInputStream();
+        int b = stdout.read();
+        proc.destroy();
+        if (b == -1) {
+            System.err.println("Netcat command unavailable; skipping test.");
+            return;
+        }
+
         // Create a new sub-directory of the nominal test directory in which
         // 'nc' will create the socket file.
         String testSubDir = System.getProperty("test.dir", ".")
@@ -62,7 +74,6 @@
 
         // Create a process which executes the nc (netcat) utility to create
         // a socket file at the indicated location.
-        Process proc;
         FileSystem fs = FileSystems.getDefault();
         try (WatchService ws = fs.newWatchService()) {
             // Watch the test sub-directory to receive notification when an
diff --git a/jdk/test/java/sql/testng/test/sql/StatementTests.java b/jdk/test/java/sql/testng/test/sql/StatementTests.java
index 169b734..88697b7 100644
--- a/jdk/test/java/sql/testng/test/sql/StatementTests.java
+++ b/jdk/test/java/sql/testng/test/sql/StatementTests.java
@@ -65,7 +65,7 @@
      * enquoteLiteral is null
      */
     @Test(expectedExceptions = NullPointerException.class)
-    public void test01()  throws SQLException {
+    public void test01() throws SQLException {
         stmt.enquoteLiteral(null);
 
     }
@@ -110,7 +110,7 @@
     }
 
     /*
-     * Validate a NullPointerException is thrown is the string passed to
+     * Validate a NullPointerException is thrown if the string passed to
      * isSimpleIdentifier is null
      */
     @Test(expectedExceptions = NullPointerException.class)
@@ -120,6 +120,24 @@
     }
 
     /*
+     * Verify that enquoteLiteral creates a  valid literal and converts every
+     * single quote to two single quotes
+     */
+    @Test(dataProvider = "validEnquotedNCharLiteralValues")
+    public void test07(String s, String expected) throws SQLException {
+        assertEquals(stmt.enquoteNCharLiteral(s), expected);
+    }
+
+    /*
+     * Validate a NullPointerException is thrown if the string passed to
+     * enquoteNCharLiteral is null
+     */
+    @Test(expectedExceptions = NullPointerException.class)
+    public void test08() throws SQLException {
+        stmt.enquoteNCharLiteral(null);
+    }
+
+    /*
      * DataProvider used to provide strings that will be used to validate
      * that enquoteLiteral converts a string to a literal and every instance of
      * a single quote will be converted into two single quotes in the literal.
@@ -169,8 +187,7 @@
             {"\"Hel\"lo\"", true},
             {"Hello" + '\0', false},
             {"", false},
-            {maxIdentifier + 'a', false},
-            };
+            {maxIdentifier + 'a', false},};
     }
 
     /*
@@ -194,4 +211,22 @@
             {"", false},};
     }
 
+    /*
+     * DataProvider used to provide strings that will be used to validate
+     * that enquoteNCharLiteral converts a string to a National Character
+     * literal and every instance of
+     * a single quote will be converted into two single quotes in the literal.
+     */
+    @DataProvider(name = "validEnquotedNCharLiteralValues")
+    protected Object[][] validEnquotedNCharLiteralValues() {
+        return new Object[][]{
+            {"Hello", "N'Hello'"},
+            {"G'Day", "N'G''Day'"},
+            {"'G''Day'", "N'''G''''Day'''"},
+            {"I'''M", "N'I''''''M'"},
+            {"N'Hello'", "N'N''Hello'''"},
+            {"The Dark Knight", "N'The Dark Knight'"}
+
+        };
+    }
 }
diff --git a/jdk/test/java/time/tck/java/time/TCKDuration.java b/jdk/test/java/time/tck/java/time/TCKDuration.java
index 1ef1302..40eefd0 100644
--- a/jdk/test/java/time/tck/java/time/TCKDuration.java
+++ b/jdk/test/java/time/tck/java/time/TCKDuration.java
@@ -2893,6 +2893,9 @@
             {-1, 0, "PT-1S"},
             {-1, 1000, "PT-0.999999S"},
             {-1, 900000000, "PT-0.1S"},
+            {-60, 100_000_000, "PT-59.9S"},
+            {-59, -900_000_000, "PT-59.9S"},
+            {-60, -100_000_000, "PT-1M-0.1S"},
             {Long.MAX_VALUE, 0, "PT" + (Long.MAX_VALUE / 3600) + "H" +
                     ((Long.MAX_VALUE % 3600) / 60) + "M" + (Long.MAX_VALUE % 60) + "S"},
             {Long.MIN_VALUE, 0, "PT" + (Long.MIN_VALUE / 3600) + "H" +
diff --git a/jdk/test/java/util/Locale/LocaleProviders.java b/jdk/test/java/util/Locale/LocaleProviders.java
index fe7b708..230d11c 100644
--- a/jdk/test/java/util/Locale/LocaleProviders.java
+++ b/jdk/test/java/util/Locale/LocaleProviders.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -213,7 +213,7 @@
     static void bug8013903Test() {
         if (System.getProperty("os.name").startsWith("Windows")) {
             Date sampleDate = new Date(0x10000000000L);
-            String fallbackResult = "Heisei 16.Nov.03 (Wed) AM 11:53:47";
+            String hostResult = "\u5e73\u6210 16.11.03 (Wed) AM 11:53:47";
             String jreResult = "\u5e73\u6210 16.11.03 (\u6c34) \u5348\u524d 11:53:47";
             Locale l = new Locale("ja", "JP", "JP");
             SimpleDateFormat sdf = new SimpleDateFormat("GGGG yyyy.MMM.dd '('E')' a hh:mm:ss", l);
@@ -227,11 +227,10 @@
                         result + "\", expected: \"" + jreResult);
                 }
             } else {
-                // should be FALLBACK, as Windows HOST does not return
-                // display names
-                if (!fallbackResult.equals(result)) {
+                // Windows display names. Subject to change if Windows changes its format.
+                if (!hostResult.equals(result)) {
                     throw new RuntimeException("Format failed. result: \"" +
-                        result + "\", expected: \"" + fallbackResult);
+                        result + "\", expected: \"" + hostResult);
                 }
             }
         }
diff --git a/jdk/test/java/util/Locale/LocaleProviders.sh b/jdk/test/java/util/Locale/LocaleProviders.sh
index fb8043e..798fce5 100644
--- a/jdk/test/java/util/Locale/LocaleProviders.sh
+++ b/jdk/test/java/util/Locale/LocaleProviders.sh
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 # @test
 # @bug 6336885 7196799 7197573 7198834 8000245 8000615 8001440 8008577
-#      8010666 8013086 8013233 8013903 8015960 8028771 8062006
+#      8010666 8013086 8013233 8013903 8015960 8028771 8054482 8062006
 # @summary tests for "java.locale.providers" system property
 # @compile -XDignore.symbol.file LocaleProviders.java
 # @run shell/timeout=600 LocaleProviders.sh
diff --git a/jdk/test/java/util/zip/ZipFile/TestZipFile.java b/jdk/test/java/util/zip/ZipFile/TestZipFile.java
index 9868777..515ed35 100644
--- a/jdk/test/java/util/zip/ZipFile/TestZipFile.java
+++ b/jdk/test/java/util/zip/ZipFile/TestZipFile.java
@@ -23,7 +23,7 @@
 
 /*
  * @test
- * @bug 8142508
+ * @bug 8142508 8146431
  * @summary Tests various ZipFile apis
  * @run main/manual TestZipFile
  */
@@ -216,6 +216,13 @@
     }
 
     static void doTest0(Zip zip, ZipFile zf) throws Throwable {
+        // (0) check zero-length entry name, no AIOOBE
+        try {
+            check(zf.getEntry("") == null);;
+        } catch (Throwable t) {
+            unexpected(t);
+        }
+
         List<ZipEntry> list = new ArrayList(zip.entries.keySet());
         // (1) check entry list, in expected order
         if (!check(Arrays.equals(
diff --git a/jdk/test/javax/management/ImplementationVersion/ImplVersionCommand.java b/jdk/test/javax/management/ImplementationVersion/ImplVersionCommand.java
index 7f142cf..1a24feb 100644
--- a/jdk/test/javax/management/ImplementationVersion/ImplVersionCommand.java
+++ b/jdk/test/javax/management/ImplementationVersion/ImplVersionCommand.java
@@ -53,21 +53,13 @@
 
         // Check JMX implementation version vs. JVM implementation version
         //
-        if (Boolean.valueOf(args[1]).booleanValue()) {
-            if (!mbsdVersion.equals(args[0]))
-                throw new IllegalArgumentException(
-                  "JMX and Java Runtime implementation versions do not match!");
-            // Test OK!
-            //
-            System.out.println("JMX and Java Runtime implementation " +
-                               "versions match!");
-        } else {
-            // Test OK!
-            //
-            System.out.println("JMX and Java Runtime implementation " +
-                               "versions do not match because the test " +
-                               "is using an unbundled version of JMX!");
-        }
+        if (!mbsdVersion.equals(args[0]))
+            throw new IllegalArgumentException(
+              "JMX and Java Runtime implementation versions do not match!");
+        // Test OK!
+        //
+        System.out.println("JMX and Java Runtime implementation " +
+                           "versions match!");
         System.out.println("Bye! Bye!");
     }
 }
diff --git a/jdk/test/javax/management/ImplementationVersion/ImplVersionTest.java b/jdk/test/javax/management/ImplementationVersion/ImplVersionTest.java
index b17fd64..ae454b5 100644
--- a/jdk/test/javax/management/ImplementationVersion/ImplVersionTest.java
+++ b/jdk/test/javax/management/ImplementationVersion/ImplVersionTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,9 +25,9 @@
  * @test
  * @bug 4842196
  * @summary Test that there is no difference between the JMX version and the
- * JDK version when JMX is bundled into the Java platform and the application
- * is run with a security manager and the test codebase has the java permission
- * to read the "java.runtime.version" system property.
+ * JDK version when the application is run with a security manager and the
+ * test codebase has the java permission to read the "java.runtime.version"
+ * system property.
  * @author Luis-Miguel Alventosa
  * @modules java.management
  * @run clean ImplVersionTest ImplVersionCommand
@@ -36,8 +36,6 @@
  */
 
 import java.io.File;
-import java.security.CodeSource;
-import javax.management.MBeanServer;
 
 public class ImplVersionTest {
 
@@ -70,18 +68,13 @@
             System.out.println("testClasses = " + testClasses);
             // Get boot class path
             //
-            boolean checkVersion = true;
-            String bootClassPath = System.getProperty("sun.boot.class.path");
-            if (bootClassPath != null &&
-                bootClassPath.indexOf("jmxri.jar") != -1)
-                checkVersion = false;
             String command =
                 javaHome + File.separator + "bin" + File.separator + "java " +
                 " -classpath " + testClasses +
                 " -Djava.security.manager -Djava.security.policy==" + testSrc +
                 File.separator + "policy -Dtest.classes=" + testClasses +
                 " ImplVersionCommand " +
-                System.getProperty("java.runtime.version") + " " + checkVersion;
+                System.getProperty("java.runtime.version");
             System.out.println("ImplVersionCommand Exec Command = " +command);
             Process proc = Runtime.getRuntime().exec(command);
             new ImplVersionReader(proc, proc.getInputStream()).start();
diff --git a/jdk/test/javax/management/remote/mandatory/version/ImplVersionTest.java b/jdk/test/javax/management/remote/mandatory/version/ImplVersionTest.java
index 0a92403..1e3662c 100644
--- a/jdk/test/javax/management/remote/mandatory/version/ImplVersionTest.java
+++ b/jdk/test/javax/management/remote/mandatory/version/ImplVersionTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,9 +25,9 @@
  * @test
  * @bug 5046815
  * @summary Test that RMIServer.getVersion() reflects the JDK version when
- * JMX is bundled into the Java platform and the application is run with a
- * security manager and the test codebase has the java permission to read
- * the "java.runtime.version" system property.
+ * the Java platform and the application is run with a security manager and the
+ * test codebase has the java permission to read the "java.runtime.version"
+ * system property.
  * @author Luis-Miguel Alventosa, Joel Feraud
  * @modules java.management
  * @run clean ImplVersionTest ImplVersionCommand
@@ -36,8 +36,6 @@
  */
 
 import java.io.File;
-import java.security.CodeSource;
-import javax.management.MBeanServer;
 
 public class ImplVersionTest {
 
diff --git a/jdk/test/sun/misc/VM/GetNanoTimeAdjustment.java b/jdk/test/jdk/internal/misc/VM/GetNanoTimeAdjustment.java
similarity index 99%
rename from jdk/test/sun/misc/VM/GetNanoTimeAdjustment.java
rename to jdk/test/jdk/internal/misc/VM/GetNanoTimeAdjustment.java
index d92cba9..9643525 100644
--- a/jdk/test/sun/misc/VM/GetNanoTimeAdjustment.java
+++ b/jdk/test/jdk/internal/misc/VM/GetNanoTimeAdjustment.java
@@ -21,13 +21,13 @@
  * questions.
  */
 import java.util.Objects;
-import sun.misc.VM;
+import jdk.internal.misc.VM;
 
 /**
  * @test
  * @bug 8068730
  * @summary tests that VM.getgetNanoTimeAdjustment() works as expected.
- * @modules java.base/sun.misc
+ * @modules java.base/jdk.internal.misc
  * @run main GetNanoTimeAdjustment
  * @author danielfuchs
  */
diff --git a/jdk/test/sun/security/krb5/auto/ReplayCacheTestProc.java b/jdk/test/sun/security/krb5/auto/ReplayCacheTestProc.java
index 5275b69..887ae76 100644
--- a/jdk/test/sun/security/krb5/auto/ReplayCacheTestProc.java
+++ b/jdk/test/sun/security/krb5/auto/ReplayCacheTestProc.java
@@ -78,7 +78,7 @@
                 mode = -1;
             }
 
-            uid = sun.misc.VM.geteuid();
+            uid = jdk.internal.misc.VM.geteuid();
 
             KDC kdc = KDC.create(OneKDC.REALM, HOST, 0, true);
             for (int i=0; i<nu; i++) {
diff --git a/jdk/test/sun/security/krb5/auto/TEST.properties b/jdk/test/sun/security/krb5/auto/TEST.properties
index 6814507..bdf8065 100644
--- a/jdk/test/sun/security/krb5/auto/TEST.properties
+++ b/jdk/test/sun/security/krb5/auto/TEST.properties
@@ -1,4 +1,5 @@
-modules java.base/sun.misc \
+modules java.base/jdk.internal.misc \
+        java.base/sun.misc \
         java.base/sun.net.spi.nameservice \
         java.base/sun.security.util \
         java.security.jgss/sun.security.jgss \
diff --git a/jdk/test/sun/security/pkcs11/rsa/TestKeyPairGenerator.java b/jdk/test/sun/security/pkcs11/rsa/TestKeyPairGenerator.java
index 6911dbe..655edd3 100644
--- a/jdk/test/sun/security/pkcs11/rsa/TestKeyPairGenerator.java
+++ b/jdk/test/sun/security/pkcs11/rsa/TestKeyPairGenerator.java
@@ -107,7 +107,7 @@
         data = new byte[2048];
         // keypair generation is very slow, test only a few short keys
         int[] keyLengths = {512, 512, 1024};
-        BigInteger[] pubExps = {null, BigInteger.valueOf(3), null};
+        BigInteger[] pubExps = {null, RSAKeyGenParameterSpec.F4, null};
         KeyPair[] keyPairs = new KeyPair[3];
         RandomFactory.getRandom().nextBytes(data);
         KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA", provider);
diff --git a/jdk/test/tools/pack200/Pack200Test.java b/jdk/test/tools/pack200/Pack200Test.java
index 3b1e5ca..9298e97 100644
--- a/jdk/test/tools/pack200/Pack200Test.java
+++ b/jdk/test/tools/pack200/Pack200Test.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  /*
   * @test
   * @bug 6521334 6712743 8007902
+  * @key intermittent
   * @summary check for memory leaks, test general packer/unpacker functionality\
   *          using native and java unpackers
   * @compile -XDignore.symbol.file Utils.java Pack200Test.java
diff --git a/langtools/.hgtags b/langtools/.hgtags
index 1f356ab..0d8509b 100644
--- a/langtools/.hgtags
+++ b/langtools/.hgtags
@@ -342,3 +342,4 @@
 ae8cdc734bab4f19ef8babd2434dcf024672ad38 jdk-9+97
 345520da2ec17100cb512a53d541a307a195305e jdk-9+98
 cb73b474703e2de266542b505cffd658bcc052da jdk-9+99
+51136404ee5e6cd5868b60d66ebd55a02170b508 jdk-9+100
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java b/langtools/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java
index bac95f4..c236a1f 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java
@@ -145,7 +145,7 @@
      * The version recognized by the Java Platform, Standard Edition
      * 9.
      *
-     * @since 1.9
+     * @since 9
      */
      RELEASE_9;
 
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor9.java
index 092a714..46b2875 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor9.java
@@ -57,7 +57,7 @@
  * @see AbstractAnnotationValueVisitor6
  * @see AbstractAnnotationValueVisitor7
  * @see AbstractAnnotationValueVisitor8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public abstract class AbstractAnnotationValueVisitor9<R, P> extends AbstractAnnotationValueVisitor8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor9.java
index 1d37826..c239303 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor9.java
@@ -61,7 +61,7 @@
  * @see AbstractElementVisitor6
  * @see AbstractElementVisitor7
  * @see AbstractElementVisitor8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public abstract class AbstractElementVisitor9<R, P> extends AbstractElementVisitor8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor9.java
index 051100c..d268e86 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor9.java
@@ -61,7 +61,7 @@
  * @see AbstractTypeVisitor6
  * @see AbstractTypeVisitor7
  * @see AbstractTypeVisitor8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public abstract class AbstractTypeVisitor9<R, P> extends AbstractTypeVisitor8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor9.java
index bd56111..a0e51e2 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor9.java
@@ -74,7 +74,7 @@
  * @see ElementKindVisitor6
  * @see ElementKindVisitor7
  * @see ElementKindVisitor8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public class ElementKindVisitor9<R, P> extends ElementKindVisitor8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementScanner9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementScanner9.java
index 32c368d..b6f8810 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementScanner9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/ElementScanner9.java
@@ -87,7 +87,7 @@
  * @see ElementScanner6
  * @see ElementScanner7
  * @see ElementScanner8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public class ElementScanner9<R, P> extends ElementScanner8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor9.java
index e48903d..d5cf8e0 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor9.java
@@ -64,7 +64,7 @@
  * @see SimpleAnnotationValueVisitor6
  * @see SimpleAnnotationValueVisitor7
  * @see SimpleAnnotationValueVisitor8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public class SimpleAnnotationValueVisitor9<R, P> extends SimpleAnnotationValueVisitor8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor9.java
index d7fc7b4..fae29ca 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor9.java
@@ -69,7 +69,7 @@
  * @see SimpleElementVisitor6
  * @see SimpleElementVisitor7
  * @see SimpleElementVisitor8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public class SimpleElementVisitor9<R, P> extends SimpleElementVisitor8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor9.java b/langtools/src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor9.java
index f92e9d7..299969b 100644
--- a/langtools/src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor9.java
+++ b/langtools/src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor9.java
@@ -72,7 +72,7 @@
  * @see TypeKindVisitor6
  * @see TypeKindVisitor7
  * @see TypeKindVisitor8
- * @since 1.9
+ * @since 9
  */
 @SupportedSourceVersion(RELEASE_9)
 public class TypeKindVisitor9<R, P> extends TypeKindVisitor8<R, P> {
diff --git a/langtools/src/java.compiler/share/classes/javax/tools/FileManagerUtils.java b/langtools/src/java.compiler/share/classes/javax/tools/FileManagerUtils.java
index fe8f658..1fe7783 100644
--- a/langtools/src/java.compiler/share/classes/javax/tools/FileManagerUtils.java
+++ b/langtools/src/java.compiler/share/classes/javax/tools/FileManagerUtils.java
@@ -32,7 +32,7 @@
 /**
  * Package-private utility methods to convert between files and paths.
  *
- * @since 1.9
+ * @since 9
  */
 class FileManagerUtils {
     private FileManagerUtils() { }
diff --git a/langtools/src/java.compiler/share/classes/javax/tools/StandardJavaFileManager.java b/langtools/src/java.compiler/share/classes/javax/tools/StandardJavaFileManager.java
index 9701584..e24d5a2 100644
--- a/langtools/src/java.compiler/share/classes/javax/tools/StandardJavaFileManager.java
+++ b/langtools/src/java.compiler/share/classes/javax/tools/StandardJavaFileManager.java
@@ -187,7 +187,7 @@
      * a directory or if this file manager does not support any of the
      * given paths.
      *
-     * @since 1.9
+     * @since 9
      */
     default Iterable<? extends JavaFileObject> getJavaFileObjectsFromPaths(
             Iterable<? extends Path> paths) {
@@ -226,7 +226,7 @@
      * @throws NullPointerException if the given array contains null
      * elements
      *
-     * @since 1.9
+     * @since 9
      */
     default Iterable<? extends JavaFileObject> getJavaFileObjects(Path... paths) {
         return getJavaFileObjectsFromPaths(Arrays.asList(paths));
@@ -295,7 +295,7 @@
      * @throws IOException if {@code location} is an output location and
      * {@code paths} does not represent an existing directory
      *
-     * @since 1.9
+     * @since 9
      */
     default void setLocationFromPaths(Location location, Iterable<? extends Path> paths)
         throws IOException {
@@ -324,7 +324,7 @@
      * associated search path
      *
      * @see #setLocationFromPaths
-     * @since 1.9
+     * @since 9
      */
     default Iterable<? extends Path> getLocationAsPaths(Location location) {
         return asPaths(getLocation(location));
@@ -345,7 +345,7 @@
      * @throws IllegalArgumentException if the file object does not have an underlying path
      * @throws UnsupportedOperationException if the operation is not supported by this file manager
      *
-     * @since 1.9
+     * @since 9
      */
     default Path asPath(FileObject file) {
         throw new UnsupportedOperationException();
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AttributeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AttributeTree.java
index 86d236f..d6c30f9 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AttributeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AttributeTree.java
@@ -33,12 +33,10 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface AttributeTree extends DocTree {
     /**
      * The kind of an attribute value.
      */
-    @jdk.Exported
     enum ValueKind {
         /** The attribute value is empty. */
         EMPTY,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AuthorTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AuthorTree.java
index 4dce58f..d1b1d19 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AuthorTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/AuthorTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface AuthorTree extends BlockTagTree {
     /**
      * Returns the name of the author.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/BlockTagTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/BlockTagTree.java
index 2284f01..bb5bbe4 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/BlockTagTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/BlockTagTree.java
@@ -31,7 +31,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface BlockTagTree extends DocTree {
     /**
      * Returns the name of the tag.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/CommentTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/CommentTree.java
index 346b154..52c5089 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/CommentTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/CommentTree.java
@@ -33,7 +33,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface CommentTree extends DocTree {
     /**
      * Returns the text of the comment.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DeprecatedTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DeprecatedTree.java
index bfcebcf..7855c89 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DeprecatedTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DeprecatedTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface DeprecatedTree extends BlockTagTree {
     /**
      * Returns the description explaining why an item is deprecated.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocCommentTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocCommentTree.java
index b85edc9..810be9e 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocCommentTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocCommentTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface DocCommentTree extends DocTree {
     /**
      * Returns the first sentence of a documentation comment.
@@ -49,7 +48,7 @@
      * before any block tags, including the first sentence.
      * @return body of a documentation comment first sentence inclusive
      *
-     * @since 1.9
+     * @since 9
      */
     default List<? extends DocTree> getFullBody() {
         ArrayList<DocTree> bodyList = new ArrayList<>();
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocRootTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocRootTree.java
index e0c3c91..2de83b3 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocRootTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocRootTree.java
@@ -33,5 +33,4 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface DocRootTree extends InlineTagTree { }
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTree.java
index 0b54ca8..2a526eb 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTree.java
@@ -30,12 +30,10 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface DocTree {
     /**
      * Enumerates all kinds of trees.
      */
-    @jdk.Exported
     enum Kind {
         /**
          * Used for instances of {@link AttributeTree}
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTreeVisitor.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTreeVisitor.java
index 1512cf0..f9a3d9e 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTreeVisitor.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/DocTreeVisitor.java
@@ -54,7 +54,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface DocTreeVisitor<R,P> {
 
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EndElementTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EndElementTree.java
index e54e308..5015b02 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EndElementTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EndElementTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface EndElementTree extends DocTree {
     /**
      * Returns the name of this element.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EntityTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EntityTree.java
index 5431fd7..5720023 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EntityTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/EntityTree.java
@@ -38,7 +38,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface EntityTree extends DocTree {
     /**
      * Returns the name or value of the entity.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ErroneousTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ErroneousTree.java
index eb0156f..4e867e2a 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ErroneousTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ErroneousTree.java
@@ -33,7 +33,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface ErroneousTree extends TextTree {
     /**
      * Returns a diagnostic object giving details about
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IdentifierTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IdentifierTree.java
index a82bf142..a4e54b6 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IdentifierTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IdentifierTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface IdentifierTree extends DocTree {
     /**
      * Returns the name of the identifier.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IndexTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IndexTree.java
index bfceffa..d6b5d7d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IndexTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/IndexTree.java
@@ -33,9 +33,8 @@
  * <p>
  * {&#064;index keyword optional description} <br>
  *
- * @since 1.9
+ * @since 9
  */
-@jdk.Exported
 public interface IndexTree extends InlineTagTree {
     /**
      * Returns the specified search term.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InheritDocTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InheritDocTree.java
index 444558a..54347d6 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InheritDocTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InheritDocTree.java
@@ -34,5 +34,4 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface InheritDocTree extends InlineTagTree { }
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InlineTagTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InlineTagTree.java
index 6cbf1fc..8a3222f 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InlineTagTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/InlineTagTree.java
@@ -31,7 +31,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface InlineTagTree extends DocTree {
     /**
      * Returns the name of the tag.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LinkTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LinkTree.java
index 1f4a0a1..7db7907 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LinkTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LinkTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface LinkTree extends InlineTagTree {
     /**
      * Returns the reference of a link.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LiteralTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LiteralTree.java
index 91727cc..babd857 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LiteralTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/LiteralTree.java
@@ -34,7 +34,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface LiteralTree extends InlineTagTree {
     /**
      * Returns the body of the {@code @code} or {@code @literal} tag.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ParamTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ParamTree.java
index b721783..cc800ca 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ParamTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ParamTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface ParamTree extends BlockTagTree {
     /**
      * Returns true if this is documenting a type parameter.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReferenceTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReferenceTree.java
index ab62303..9d4c0c0 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReferenceTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReferenceTree.java
@@ -34,7 +34,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface ReferenceTree extends DocTree {
     /**
      * Returns the signature of the Java language element being referenced,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReturnTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReturnTree.java
index 305c92c..5d23903 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReturnTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ReturnTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface ReturnTree extends BlockTagTree {
     /**
      * Returns the description of the return value of a method.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SeeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SeeTree.java
index 4ff81c0..ecab84d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SeeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SeeTree.java
@@ -38,7 +38,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface SeeTree extends BlockTagTree {
     /**
      * Returns the reference.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialDataTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialDataTree.java
index 9075759..2c7ff08 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialDataTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialDataTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface SerialDataTree extends BlockTagTree {
     /**
      * Returns the description of the serial data.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialFieldTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialFieldTree.java
index ff7c25a..5e0e648 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialFieldTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialFieldTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface SerialFieldTree extends BlockTagTree {
     /**
      * Returns the name of the serial field.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialTree.java
index 04feab7..980360d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SerialTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface SerialTree extends BlockTagTree {
     /**
      * Returns the description of the field, or the word
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SinceTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SinceTree.java
index 074aebd..68406a8 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SinceTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/SinceTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface SinceTree extends BlockTagTree {
     /**
      * Returns the text explaining the availability of the item being documented.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/StartElementTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/StartElementTree.java
index 34f98e8..5731f1a 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/StartElementTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/StartElementTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface StartElementTree extends DocTree {
     /**
      * Returns the name of the element.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/TextTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/TextTree.java
index f2adf02..86f81e8 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/TextTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/TextTree.java
@@ -30,7 +30,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface TextTree extends DocTree {
     /**
      * Returns the text.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ThrowsTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ThrowsTree.java
index 1f34046..0fcb086 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ThrowsTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ThrowsTree.java
@@ -38,7 +38,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface ThrowsTree extends BlockTagTree {
     /**
      * Returns a name of the exception being documented.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java
index 80d9357..d55a36b 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java
@@ -36,7 +36,6 @@
  * @since 1.8
  *
  */
-@jdk.Exported
 public interface UnknownBlockTagTree extends BlockTagTree {
     /**
      * Returns the content of an unrecognized block tag.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java
index b8cd4bd..2eedb18 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java
@@ -36,7 +36,6 @@
  * @since 1.8
  *
  */
-@jdk.Exported
 public interface UnknownInlineTagTree extends InlineTagTree {
     /**
      * Returns the content of an unrecognized inline tag.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ValueTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ValueTree.java
index 5c792b5..be6be16 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ValueTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ValueTree.java
@@ -33,7 +33,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface ValueTree extends InlineTagTree {
     /**
      * Returns the reference to the value.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/VersionTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/VersionTree.java
index eee4237..41cc20e 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/VersionTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/VersionTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface VersionTree extends BlockTagTree {
     /**
      * Returns the body of the tag.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/package-info.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/package-info.java
index 47de937..324da40 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/package-info.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/package-info.java
@@ -31,5 +31,4 @@
  * @since 1.8
  * @see <a href="http://download.oracle.com/javase/6/docs/technotes/tools/solaris/javadoc.html#javadoctags">http://download.oracle.com/javase/6/docs/technotes/tools/solaris/javadoc.html#javadoctags</a>
  */
-@jdk.Exported
 package com.sun.source.doctree;
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotatedTypeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotatedTypeTree.java
index d84fcd6..26d7473 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotatedTypeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotatedTypeTree.java
@@ -41,7 +41,6 @@
  * @author Mahmood Ali
  * @since 1.8
  */
-@jdk.Exported
 public interface AnnotatedTypeTree extends ExpressionTree {
     /**
      * Returns the annotations associated with this type expression.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotationTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotationTree.java
index b47cdbc..06c5a7d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotationTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AnnotationTree.java
@@ -42,7 +42,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface AnnotationTree extends ExpressionTree {
     /**
      * Returns the annotation type.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayAccessTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayAccessTree.java
index 515aee0..7ec7004 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayAccessTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayAccessTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ArrayAccessTree extends ExpressionTree {
     /**
      * Returns the expression for the array being accessed.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayTypeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayTypeTree.java
index d7d8ceb..504b3af 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayTypeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ArrayTypeTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ArrayTypeTree extends Tree {
     /**
      * Returns the element type of this array type.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssertTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssertTree.java
index 080bc3e..ee1cc7b 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssertTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssertTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface AssertTree extends StatementTree {
     /**
      * Returns the condition being asserted.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssignmentTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssignmentTree.java
index 5ce69d2..cb94ead 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssignmentTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/AssignmentTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface AssignmentTree extends ExpressionTree {
     /**
      * Returns the variable being assigned to.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BinaryTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BinaryTree.java
index 8f0d155..7769b71 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BinaryTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BinaryTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface BinaryTree extends ExpressionTree {
     /**
      * Returns the left (first) operand of the expression.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BlockTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BlockTree.java
index 4b5721e..b5ce0b7 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BlockTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BlockTree.java
@@ -45,7 +45,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface BlockTree extends StatementTree {
     /**
      * Returns true if and only if this is a static initializer block.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BreakTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BreakTree.java
index 4f900a6..9307d69 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BreakTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/BreakTree.java
@@ -43,7 +43,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface BreakTree extends StatementTree {
     /**
      * Returns the label for this {@code break} statement.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CaseTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CaseTree.java
index 6aa374f..a70fe7e 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CaseTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CaseTree.java
@@ -45,7 +45,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface CaseTree extends Tree {
     /**
      * Returns the expression for the case, or
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CatchTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CatchTree.java
index b91a94d..40ab239 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CatchTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CatchTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface CatchTree extends Tree {
     /**
      * Returns the catch variable.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ClassTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ClassTree.java
index 3a7f5b3..b58ccad 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ClassTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ClassTree.java
@@ -48,7 +48,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ClassTree extends StatementTree {
     /**
      * Returns the modifiers, including any annotations,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompilationUnitTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompilationUnitTree.java
index fa3e574..7aab122 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompilationUnitTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompilationUnitTree.java
@@ -37,7 +37,6 @@
  * @author Peter von der Ah&eacute;
  * @since 1.6
  */
-@jdk.Exported
 public interface CompilationUnitTree extends Tree {
     /**
      * Returns the annotations listed on any package declaration
@@ -59,7 +58,7 @@
      * Returns the package tree associated with this compilation unit,
      * or {@code null} if there is no package declaration.
      * @return the package tree
-     * @since 1.9
+     * @since 9
      */
     PackageTree getPackage();
 
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompoundAssignmentTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompoundAssignmentTree.java
index e4db62b..db6dcc8 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompoundAssignmentTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/CompoundAssignmentTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface CompoundAssignmentTree extends ExpressionTree {
     /**
      * Returns the variable on the left hand side of the compound assignment.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ConditionalExpressionTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ConditionalExpressionTree.java
index fa3dd83..aaf665b 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ConditionalExpressionTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ConditionalExpressionTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ConditionalExpressionTree extends ExpressionTree {
     /**
      * Returns the condition.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ContinueTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ContinueTree.java
index 2f6f3fa..0d9a4ab 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ContinueTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ContinueTree.java
@@ -42,7 +42,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ContinueTree extends StatementTree {
     /**
      * Returns the label for this {@code continue} statement.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/DoWhileLoopTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/DoWhileLoopTree.java
index 2aeac4b..6a89d2d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/DoWhileLoopTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/DoWhileLoopTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface DoWhileLoopTree extends StatementTree {
     /**
      * Returns the condition of the loop.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EmptyStatementTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EmptyStatementTree.java
index 6548eaf..4e33f96 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EmptyStatementTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EmptyStatementTree.java
@@ -39,5 +39,4 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface EmptyStatementTree extends StatementTree {}
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EnhancedForLoopTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EnhancedForLoopTree.java
index f9619f8..7316c43 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EnhancedForLoopTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/EnhancedForLoopTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface EnhancedForLoopTree extends StatementTree {
     /**
      * Returns the control variable for the loop.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ErroneousTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ErroneousTree.java
index b56c3ee..aa1dbca 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ErroneousTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ErroneousTree.java
@@ -34,7 +34,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ErroneousTree extends ExpressionTree {
     /**
      * Returns any trees that were saved in this node.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionStatementTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionStatementTree.java
index 7ae8c22..d2c852f 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionStatementTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionStatementTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ExpressionStatementTree extends StatementTree {
     /**
      * Returns the expression constituting this statement.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionTree.java
index f3a7ed3..ca1bc2d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionTree.java
@@ -35,5 +35,4 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ExpressionTree extends Tree {}
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ForLoopTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ForLoopTree.java
index e42daff..b155b5f 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ForLoopTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ForLoopTree.java
@@ -42,7 +42,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ForLoopTree extends StatementTree {
     /**
      * Returns any initializers of the {@code for} statement.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IdentifierTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IdentifierTree.java
index 3f2a2f4..bb37699 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IdentifierTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IdentifierTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface IdentifierTree extends ExpressionTree {
     /**
      * Returns the name of the identifier.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IfTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IfTree.java
index f5790c7..6358e3a 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IfTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IfTree.java
@@ -45,7 +45,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface IfTree extends StatementTree {
     /**
      * Returns the condition of the if-statement.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ImportTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ImportTree.java
index dfd57e5..0b0c192 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ImportTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ImportTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ImportTree extends Tree {
     /**
      * Returns true if this is a static import declaration.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/InstanceOfTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/InstanceOfTree.java
index 7766482..1bd27b6 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/InstanceOfTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/InstanceOfTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface InstanceOfTree extends ExpressionTree {
     /**
      * Returns the expression to be tested.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IntersectionTypeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IntersectionTypeTree.java
index 0b2790a..c7b77a0 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IntersectionTypeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/IntersectionTypeTree.java
@@ -34,7 +34,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface IntersectionTypeTree extends Tree {
     /**
      * Returns the bounds of the type.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LabeledStatementTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LabeledStatementTree.java
index 3fe724e..966cf02 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LabeledStatementTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LabeledStatementTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface LabeledStatementTree extends StatementTree {
     /**
      * Returns the label.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LambdaExpressionTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LambdaExpressionTree.java
index 9f3c988..4efa546 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LambdaExpressionTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LambdaExpressionTree.java
@@ -37,7 +37,6 @@
  *   (x,y)-> { return x + y; }
  * }</pre>
  */
-@jdk.Exported
 public interface LambdaExpressionTree extends ExpressionTree {
 
     /**
@@ -47,7 +46,6 @@
      * <li> statement lambdas, whose body is a block
      * </ul>
      */
-    @jdk.Exported
     public enum BodyKind {
         /** enum constant for expression lambdas */
         EXPRESSION,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LineMap.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LineMap.java
index 7a396d1..711f63a 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LineMap.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LineMap.java
@@ -31,7 +31,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public interface LineMap {
     /**
      * Finds the start position of a line.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LiteralTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LiteralTree.java
index 4c8fa52..c4cb9ca 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LiteralTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/LiteralTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface LiteralTree extends ExpressionTree {
     /**
      * Returns the value of the literal expression.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberReferenceTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberReferenceTree.java
index 23c77bf..d9c4885 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberReferenceTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberReferenceTree.java
@@ -39,14 +39,12 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface MemberReferenceTree extends ExpressionTree {
 
     /**
      * There are two kinds of member references: (i) method references and
      * (ii) constructor references
      */
-    @jdk.Exported
     public enum ReferenceMode {
         /** enum constant for method references. */
         INVOKE,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberSelectTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberSelectTree.java
index dac7472..1834e88 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberSelectTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MemberSelectTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface MemberSelectTree extends ExpressionTree {
     /**
      * Returns the expression for which a member is to be selected.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodInvocationTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodInvocationTree.java
index 3e7088b..3d04ddd 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodInvocationTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodInvocationTree.java
@@ -43,7 +43,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface MethodInvocationTree extends ExpressionTree {
     /**
      * Returns the type arguments for this method invocation.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodTree.java
index f16c521..83756d1 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/MethodTree.java
@@ -46,7 +46,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface MethodTree extends Tree {
     /**
      * Returns the modifiers, including any annotations for the method being declared.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ModifiersTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ModifiersTree.java
index 1dd45fb..6aebf0d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ModifiersTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ModifiersTree.java
@@ -45,7 +45,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ModifiersTree extends Tree {
     /**
      * Returns the flags in this modifiers tree.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewArrayTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewArrayTree.java
index beea5bb..0b52c88 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewArrayTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewArrayTree.java
@@ -43,7 +43,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface NewArrayTree extends ExpressionTree {
     /**
      * Returns the base type of the expression.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewClassTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewClassTree.java
index b82faaf..34f3013 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewClassTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/NewClassTree.java
@@ -48,7 +48,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface NewClassTree extends ExpressionTree {
     /**
      * Returns the enclosing expression, or {@code null} if none.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PackageTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PackageTree.java
index 8d722f6..1ab65a6 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PackageTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PackageTree.java
@@ -33,9 +33,8 @@
  * @jls sections 7.3, and 7.4
  *
  * @author Paul Govereau
- * @since 1.9
+ * @since 9
  */
-@jdk.Exported
 public interface PackageTree extends Tree {
     /**
      * Returns the annotations associated with this package declaration.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParameterizedTypeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParameterizedTypeTree.java
index 99f5b75..93f3091 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParameterizedTypeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParameterizedTypeTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ParameterizedTypeTree extends Tree {
     /**
      * Returns the base type.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParenthesizedTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParenthesizedTree.java
index 02eb7b3..ab4d9bd 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParenthesizedTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ParenthesizedTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ParenthesizedTree extends ExpressionTree {
     /**
      * Returns the expression within the parentheses.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PrimitiveTypeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PrimitiveTypeTree.java
index 4d509a7..72d4eba 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PrimitiveTypeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/PrimitiveTypeTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface PrimitiveTypeTree extends Tree {
     /**
      * Returns the kind of this primitive type.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ReturnTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ReturnTree.java
index 6f58574..cabc303 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ReturnTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ReturnTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ReturnTree extends StatementTree {
     /**
      * Returns the expression to be returned.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Scope.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Scope.java
index e30d927..d0ea08b 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Scope.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Scope.java
@@ -48,7 +48,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public interface Scope {
     /**
      * Returns the enclosing scope.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/StatementTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/StatementTree.java
index c558ea2..442dcee 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/StatementTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/StatementTree.java
@@ -35,5 +35,4 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface StatementTree extends Tree {}
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SwitchTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SwitchTree.java
index 76e9088..9e40968 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SwitchTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SwitchTree.java
@@ -43,7 +43,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface SwitchTree extends StatementTree {
     /**
      * Returns the expression for the {@code switch} statement.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SynchronizedTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SynchronizedTree.java
index cb72cf7..51edafd 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SynchronizedTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/SynchronizedTree.java
@@ -40,7 +40,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface SynchronizedTree extends StatementTree {
     /**
      * Returns the expression on which to synchronize.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ThrowTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ThrowTree.java
index af319f3..d23e896 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ThrowTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/ThrowTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface ThrowTree extends StatementTree {
     /**
      * Returns the expression to be thrown.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java
index 8c6b088..bdd0f53 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java
@@ -39,13 +39,11 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public interface Tree {
 
     /**
      * Enumerates all kinds of trees.
      */
-    @jdk.Exported
     public enum Kind {
         /**
          * Used for instances of {@link AnnotatedTypeTree}
@@ -212,7 +210,7 @@
 
         /**
          * Used for instances of {@link PackageTree}.
-         * @since 1.9
+         * @since 9
          */
         PACKAGE(PackageTree.class),
 
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java
index 8f63188..30d2a32 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java
@@ -56,7 +56,6 @@
  *
  * @since 1.6
  */
-@jdk.Exported
 public interface TreeVisitor<R,P> {
     /**
      * Visits an AnnotatedTypeTree node.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TryTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TryTree.java
index a02e2e5..7643598 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TryTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TryTree.java
@@ -45,7 +45,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface TryTree extends StatementTree {
     /**
      * Returns the block of the {@code try} statement.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeCastTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeCastTree.java
index 23d14e8..ac86ecd 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeCastTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeCastTree.java
@@ -39,7 +39,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface TypeCastTree extends ExpressionTree {
     /**
      * Returns the target type of the cast.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeParameterTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeParameterTree.java
index 5ffd552..a911002 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeParameterTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/TypeParameterTree.java
@@ -46,7 +46,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface TypeParameterTree extends Tree {
     /**
      * Returns the name of the type parameter.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnaryTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnaryTree.java
index c9ad921..5ba18fd 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnaryTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnaryTree.java
@@ -42,7 +42,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface UnaryTree extends ExpressionTree {
     /**
      * Returns the expression that is the operand of the unary operator.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnionTypeTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnionTypeTree.java
index 5443668..07f488f 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnionTypeTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/UnionTypeTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.7
  */
-@jdk.Exported
 public interface UnionTypeTree extends Tree {
     /**
      * Returns the alternative type expressions.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/VariableTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/VariableTree.java
index 203178b..9342ccd 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/VariableTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/VariableTree.java
@@ -42,7 +42,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface VariableTree extends StatementTree {
     /**
      * Returns the modifiers, including any annotations, on the declaration.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WhileLoopTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WhileLoopTree.java
index e59a8d2..58597ed 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WhileLoopTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WhileLoopTree.java
@@ -41,7 +41,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface WhileLoopTree extends StatementTree {
     /**
      * Returns the condition of the loop.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WildcardTree.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WildcardTree.java
index 3fad97b..f5095c1 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WildcardTree.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/WildcardTree.java
@@ -44,7 +44,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface WildcardTree extends Tree {
     /**
      * Returns the bound of the wildcard.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/package-info.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/package-info.java
index 22d1c9b..9819a36 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/package-info.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/tree/package-info.java
@@ -31,5 +31,4 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 package com.sun.source.tree;
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocSourcePositions.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocSourcePositions.java
index a6d5c8d..8298fac 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocSourcePositions.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocSourcePositions.java
@@ -36,7 +36,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface DocSourcePositions extends SourcePositions {
 
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePath.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePath.java
index 1ab74eb..50e9bc8 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePath.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePath.java
@@ -37,7 +37,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public class DocTreePath implements Iterable<DocTree> {
     /**
      * Returns a documentation tree path for a tree node within a compilation unit,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java
index e12aea6..6e11ca1 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java
@@ -37,7 +37,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public class DocTreePathScanner<R, P> extends DocTreeScanner<R, P> {
     /**
      * Scans a tree from a position identified by a tree path.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java
index 4866ab6..9898256 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java
@@ -68,7 +68,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public class DocTreeScanner<R,P> implements DocTreeVisitor<R,P> {
 
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTrees.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTrees.java
index 94537ce..dddbc6c 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTrees.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTrees.java
@@ -43,7 +43,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public abstract class DocTrees extends Trees {
     /**
      * Returns a DocTrees object for a given CompilationTask.
@@ -73,7 +72,7 @@
      * Returns {@code null} if none has been specified.
      * @return the break iterator
      *
-     * @since 1.9
+     * @since 9
      */
     public abstract BreakIterator getBreakIterator();
 
@@ -91,7 +90,7 @@
      * @param e an element whose documentation is required
      * @return the doc comment tree
      *
-     * @since 1.9
+     * @since 9
      */
     public abstract DocCommentTree getDocCommentTree(Element e);
 
@@ -105,7 +104,7 @@
      * @param fileObject the content container
      * @return the doc comment tree
      *
-     * @since 1.9
+     * @since 9
      */
     public abstract DocCommentTree getDocCommentTree(FileObject fileObject);
 
@@ -122,7 +121,7 @@
      * @return the doc comment tree
      * @throws java.io.IOException if an exception occurs
      *
-     * @since 1.9
+     * @since 9
      */
     public abstract DocCommentTree getDocCommentTree(Element e, String relativePath) throws IOException;
 
@@ -141,7 +140,7 @@
      * @param list the DocTree list to interrogate
      * @return the first sentence
      *
-     * @since 1.9
+     * @since 9
      */
     public abstract List<DocTree> getFirstSentence(List<? extends DocTree> list);
 
@@ -173,7 +172,7 @@
      * @param breakiterator a break iterator or {@code null} to specify the default
      *                      sentence breaker
      *
-     * @since 1.9
+     * @since 9
      */
     public abstract void setBreakIterator(BreakIterator breakiterator);
 }
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/JavacTask.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/JavacTask.java
index 622c294..8f1c998 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/JavacTask.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/JavacTask.java
@@ -48,7 +48,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public abstract class JavacTask implements CompilationTask {
 
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Plugin.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Plugin.java
index d31508a..68c14f7 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Plugin.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Plugin.java
@@ -49,7 +49,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public interface Plugin {
     /**
      * Returns the user-friendly name of this plug-in.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java
index 28a946a..4f28955 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java
@@ -38,7 +38,6 @@
  *
  * @since 1.8
  */
-@jdk.Exported
 public class SimpleDocTreeVisitor<R,P> implements DocTreeVisitor<R, P> {
     /**
      * The default value, returned by the {@link #defaultAction default action}.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleTreeVisitor.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleTreeVisitor.java
index 28bd802..a7e5740 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleTreeVisitor.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SimpleTreeVisitor.java
@@ -39,7 +39,6 @@
  * @author Peter von der Ah&eacute;
  * @since 1.6
  */
-@jdk.Exported
 public class SimpleTreeVisitor <R,P> implements TreeVisitor<R,P> {
     /**
      * The default value, returned by the {@link #defaultAction default action}.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SourcePositions.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SourcePositions.java
index 7a2054b..4f5bbbc 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SourcePositions.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/SourcePositions.java
@@ -35,7 +35,6 @@
  * @author Peter von der Ah&eacute;
  * @since 1.6
  */
-@jdk.Exported
 public interface SourcePositions {
 
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskEvent.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskEvent.java
index 9ead33e..6a116ab 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskEvent.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskEvent.java
@@ -36,14 +36,12 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public final class TaskEvent
 {
     /**
      * Kind of task event.
      * @since 1.6
      */
-    @jdk.Exported
     public enum Kind {
         /**
          * For events related to the parsing of a file.
@@ -74,7 +72,7 @@
          * This event is not sent when using {@link JavacTask#parse()},
          * {@link JavacTask#analyze()} or {@link JavacTask#generate()}.
          *
-         * @since 1.9
+         * @since 9
          */
         COMPILATION,
     }
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskListener.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskListener.java
index 9a57b13..eef9389 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskListener.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TaskListener.java
@@ -32,7 +32,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public interface TaskListener
 {
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePath.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePath.java
index 4c7e395..3040d1f 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePath.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePath.java
@@ -37,7 +37,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public class TreePath implements Iterable<Tree> {
     /**
      * Returns a tree path for a tree node within a compilation unit,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePathScanner.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePathScanner.java
index a07f829..46a3e1e 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePathScanner.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreePathScanner.java
@@ -38,7 +38,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public class TreePathScanner<R, P> extends TreeScanner<R, P> {
 
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreeScanner.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreeScanner.java
index 275d9c8..3e37f6f 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreeScanner.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/TreeScanner.java
@@ -74,7 +74,6 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 public class TreeScanner<R,P> implements TreeVisitor<R,P> {
 
     /**
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Trees.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Trees.java
index 5e464c7..3f72336 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Trees.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Trees.java
@@ -51,7 +51,6 @@
  *
  * @author Peter von der Ah&eacute;
  */
-@jdk.Exported
 public abstract class Trees {
     /**
      * Returns a Trees object for a given CompilationTask.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/package-info.java b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/package-info.java
index 01a7888..65afc0b 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/package-info.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/package-info.java
@@ -30,5 +30,4 @@
  * @author Jonathan Gibbons
  * @since 1.6
  */
-@jdk.Exported
 package com.sun.source.util;
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/Main.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/Main.java
index 5ad9d4b..6d35e1d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/Main.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/Main.java
@@ -31,7 +31,6 @@
  * The programmatic interface for the Java Programming Language
  * compiler, javac.
  */
-@jdk.Exported
 public class Main {
 
     /** Main entry point for the launcher.
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/package-info.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/package-info.java
index e5f461c..f843a8a 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/package-info.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/package-info.java
@@ -31,5 +31,4 @@
  *  This code and its internal interfaces are subject to change or
  *  deletion without notice.</b>
  */
-@jdk.Exported(false)
 package com.sun.tools.javac.platform;
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CleanProperties.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CleanProperties.java
index 0525b47..03f02d8 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CleanProperties.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CleanProperties.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -66,7 +66,6 @@
     public boolean transform(CompilationService sjavac,
                              Map<String,Set<URI>> pkgSrcs,
                              Set<URI>             visibleSrcs,
-                             Map<URI,Set<String>> visibleClasses,
                              Map<String,Set<String>> oldPackageDependencies,
                              URI destRoot,
                              Map<String,Set<URI>>    packageArtifacts,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileJavaPackages.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileJavaPackages.java
index c13376d..14fc859 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileJavaPackages.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileJavaPackages.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -80,7 +80,6 @@
     public boolean transform(final CompilationService sjavac,
                              Map<String,Set<URI>> pkgSrcs,
                              final Set<URI>             visibleSources,
-                             final Map<URI,Set<String>> visibleClasses,
                              Map<String,Set<String>> oldPackageDependents,
                              URI destRoot,
                              final Map<String,Set<URI>>    packageArtifacts,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileProperties.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileProperties.java
index 18a335f..3ca37b5 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileProperties.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CompileProperties.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -74,7 +74,6 @@
     public boolean transform(CompilationService compilationService,
                              Map<String,Set<URI>> pkgSrcs,
                              Set<URI>             visibleSrcs,
-                             Map<URI,Set<String>> visibleClasses,
                              Map<String,Set<String>> oldPackageDependents,
                              URI destRoot,
                              Map<String,Set<URI>>    packageArtifacts,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CopyFile.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CopyFile.java
index 5b12bcc..5ab8d22 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CopyFile.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/CopyFile.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -61,7 +61,6 @@
     public boolean transform(CompilationService compilationService,
                              Map<String,Set<URI>> pkgSrcs,
                              Set<URI> visibleSrcs,
-                             Map<URI,Set<String>> visibleClasses,
                              Map<String,Set<String>> oldPackageDependents,
                              URI destRoot,
                              Map<String,Set<URI>>    packageArtifacts,
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/JavacState.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/JavacState.java
index 8e1c946..114d128 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/JavacState.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/JavacState.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -120,13 +120,6 @@
     // ones that -sourcepath is allowed to see.
     Set<URI> visibleSrcs;
 
-    // Visible classes for linking. These are the only
-    // ones that -classpath is allowed to see.
-    // It maps from a classpath root to the set of visible classes for that root.
-    // If the set is empty, then all classes are visible for that root.
-    // It can also map from a jar file to the set of visible classes for that jar file.
-    Map<URI,Set<String>> visibleClasses;
-
     // Setup transform that always exist.
     private CompileJavaPackages compileJavaPackages = new CompileJavaPackages();
 
@@ -214,16 +207,6 @@
     }
 
     /**
-     * Specify which classes are visible to the compiler through -classpath.
-     */
-    public void setVisibleClasses(Map<String,Source> vs) {
-        visibleSrcs = new HashSet<>();
-        for (String s : vs.keySet()) {
-            Source src = vs.get(s);
-            visibleSrcs.add(src.file().toURI());
-        }
-    }
-    /**
      * Returns true if this is an incremental build.
      */
     public boolean isIncremental() {
@@ -820,7 +803,6 @@
             boolean r = t.transform(sjavac,
                                     srcs,
                                     visibleSrcs,
-                                    visibleClasses,
                                     prev.dependents(),
                                     outputDir.toURI(),
                                     packageArtifacts,
@@ -954,8 +936,7 @@
             }
         }
         // Read in the file and create another set of filenames with full paths.
-        try {
-            BufferedReader in = new BufferedReader(new FileReader(makefileSourceList));
+        try(BufferedReader in = new BufferedReader(new FileReader(makefileSourceList))) {
             for (;;) {
                 String l = in.readLine();
                 if (l==null) break;
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/Transformer.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/Transformer.java
index 93e1419..7fcac27 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/Transformer.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/Transformer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -86,7 +86,6 @@
     boolean transform(CompilationService sjavac,
                       Map<String,Set<URI>> pkgSrcs,
                       Set<URI>             visibleSources,
-                      Map<URI,Set<String>> visibleClasses,
                       Map<String,Set<String>> oldPackageDependencies,
                       URI destRoot,
                       Map<String,Set<URI>>    packageArtifacts,
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/javadoc/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/javadoc/package-info.java
index 100318f..ace69c0 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/javadoc/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/javadoc/package-info.java
@@ -144,5 +144,4 @@
 @see com.sun.javadoc.Doclet
 @see com.sun.javadoc.RootDoc
 */
-@jdk.Exported
 package com.sun.javadoc;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/package-info.java
index 3503e95..7c8766c 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/markup/package-info.java
@@ -31,5 +31,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
  */
-@jdk.Exported(false)
 package com.sun.tools.doclets.formats.html.markup;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/package-info.java
index e4d51f6..dadc9e1 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/package-info.java
@@ -36,5 +36,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.doclets.formats.html;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package-info.java
index a5e2db3..ef8b4ac 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package-info.java
@@ -37,5 +37,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.doclets.internal.toolkit.builders;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/package-info.java
index 5e3f61f..e8bcae2 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/package-info.java
@@ -53,5 +53,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.doclets.internal.toolkit;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package-info.java
index cb7d6b6..43750f1 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package-info.java
@@ -48,5 +48,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.doclets.internal.toolkit.taglets;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package-info.java
index 7244b53..1319ccd 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package-info.java
@@ -31,5 +31,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.doclets.internal.toolkit.util.links;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/package-info.java
index 39f37a3..2e89801 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/package-info.java
@@ -32,5 +32,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.doclets.internal.toolkit.util;
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java
index 6df5c2b..0ced35a 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java
@@ -32,5 +32,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.doclets;
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/package-info.java b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/package-info.java
index 588ae3b..adcd32c 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/package-info.java
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/package-info.java
@@ -33,5 +33,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.classfile;
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/package-info.java b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/package-info.java
index aa2de00..77fa318 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/package-info.java
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/package-info.java
@@ -31,5 +31,4 @@
     This code and its internal interfaces are subject to change or
     deletion without notice.</b>
 */
-@jdk.Exported(false)
 package com.sun.tools.javap;
diff --git a/langtools/test/tools/javac/proprietary/WarnImport.java b/langtools/test/tools/javac/proprietary/WarnImport.java
index 9b536f4..8782a04 100644
--- a/langtools/test/tools/javac/proprietary/WarnImport.java
+++ b/langtools/test/tools/javac/proprietary/WarnImport.java
@@ -9,6 +9,6 @@
  * @compile/fail/ref=WarnImport.out -XDrawDiagnostics  -Werror -Xlint:none WarnImport.java
  */
 
-import sun.misc.VM;
+import sun.security.x509.X509CertInfo;
 
 public class WarnImport {}
diff --git a/langtools/test/tools/javac/proprietary/WarnImport.out b/langtools/test/tools/javac/proprietary/WarnImport.out
index 73582b2..274ffa3 100644
--- a/langtools/test/tools/javac/proprietary/WarnImport.out
+++ b/langtools/test/tools/javac/proprietary/WarnImport.out
@@ -1,4 +1,4 @@
-WarnImport.java:12:16: compiler.warn.sun.proprietary: sun.misc.VM
+WarnImport.java:12:25: compiler.warn.sun.proprietary: sun.security.x509.X509CertInfo
 - compiler.err.warnings.and.werror
 1 error
 1 warning
diff --git a/langtools/test/tools/javac/proprietary/WarnMethod.java b/langtools/test/tools/javac/proprietary/WarnMethod.java
index e9ccbfa..f8eb51d 100644
--- a/langtools/test/tools/javac/proprietary/WarnMethod.java
+++ b/langtools/test/tools/javac/proprietary/WarnMethod.java
@@ -3,7 +3,7 @@
  * @bug     6380059
  * @summary Emit warnings for proprietary packages in the boot class path
  * @author  Peter von der Ah\u00e9
- * @modules java.base/sun.misc
+ * @modules java.base/sun.security.x509
  * @compile WarnMethod.java
  * @compile/fail/ref=WarnMethod.out -XDrawDiagnostics  -Werror WarnMethod.java
  * @compile/fail/ref=WarnMethod.out -XDrawDiagnostics  -Werror -nowarn WarnMethod.java
@@ -12,6 +12,6 @@
 
 public class WarnMethod {
     public static void main(String... args) {
-        System.out.println(sun.misc.VM.getFinalRefCount());
+        System.out.println(sun.security.x509.OIDMap.getOID(""));
     }
 }
diff --git a/langtools/test/tools/javac/proprietary/WarnMethod.out b/langtools/test/tools/javac/proprietary/WarnMethod.out
index 4dc562c..83fb6bd 100644
--- a/langtools/test/tools/javac/proprietary/WarnMethod.out
+++ b/langtools/test/tools/javac/proprietary/WarnMethod.out
@@ -1,4 +1,4 @@
-WarnMethod.java:15:36: compiler.warn.sun.proprietary: sun.misc.VM
+WarnMethod.java:15:45: compiler.warn.sun.proprietary: sun.security.x509.OIDMap
 - compiler.err.warnings.and.werror
 1 error
 1 warning
diff --git a/langtools/test/tools/javac/proprietary/WarnStaticImport.java b/langtools/test/tools/javac/proprietary/WarnStaticImport.java
index 0d78060..91fc369 100644
--- a/langtools/test/tools/javac/proprietary/WarnStaticImport.java
+++ b/langtools/test/tools/javac/proprietary/WarnStaticImport.java
@@ -9,6 +9,6 @@
  * @compile/fail/ref=WarnStaticImport.out -XDrawDiagnostics  -Werror -Xlint:none WarnStaticImport.java
  */
 
-import static sun.misc.VM.getFinalRefCount;
+import static sun.security.x509.OIDMap.getOID;
 
 public class WarnStaticImport {}
diff --git a/langtools/test/tools/javac/proprietary/WarnStaticImport.out b/langtools/test/tools/javac/proprietary/WarnStaticImport.out
index c06c12e..7e7d91f 100644
--- a/langtools/test/tools/javac/proprietary/WarnStaticImport.out
+++ b/langtools/test/tools/javac/proprietary/WarnStaticImport.out
@@ -1,4 +1,4 @@
-WarnStaticImport.java:12:23: compiler.warn.sun.proprietary: sun.misc.VM
+WarnStaticImport.java:12:32: compiler.warn.sun.proprietary: sun.security.x509.OIDMap
 - compiler.err.warnings.and.werror
 1 error
 1 warning
diff --git a/langtools/test/tools/javac/tree/NoPrivateTypesExported.java b/langtools/test/tools/javac/tree/NoPrivateTypesExported.java
index 11c6de3..38b6b96 100644
--- a/langtools/test/tools/javac/tree/NoPrivateTypesExported.java
+++ b/langtools/test/tools/javac/tree/NoPrivateTypesExported.java
@@ -90,8 +90,7 @@
             "java.text.",
             "java.util.",
             "javax.lang.model.",
-            "javax.annotation.processing.SupportedSourceVersion",
-            "jdk.Exported"
+            "javax.annotation.processing.SupportedSourceVersion"
         ));
         Set<String> javaxToolsProcessingAcceptableTemp = new HashSet<>();
         javaxToolsProcessingAcceptableTemp.addAll(javaxLangModelAcceptable);
diff --git a/langtools/test/tools/javac/util/context/T7021650.java b/langtools/test/tools/javac/util/context/T7021650.java
deleted file mode 100644
index 8325dc1..0000000
--- a/langtools/test/tools/javac/util/context/T7021650.java
+++ /dev/null
@@ -1,223 +0,0 @@
-/*
- * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-/**
- * @test
- * @bug 7021650
- * @summary Fix Context issues
- * @library /tools/javac/lib
- * @modules jdk.compiler/com.sun.tools.javac.comp
- *          jdk.compiler/com.sun.tools.javac.file
- *          jdk.compiler/com.sun.tools.javac.main
- *          jdk.compiler/com.sun.tools.javac.processing
- *          jdk.compiler/com.sun.tools.javac.util
- * @build JavacTestingAbstractProcessor T7021650
- * @run main T7021650
- */
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-import javax.annotation.processing.*;
-import javax.lang.model.element.*;
-import javax.tools.*;
-
-import com.sun.tools.javac.comp.Attr;
-import com.sun.tools.javac.file.JavacFileManager;
-import com.sun.tools.javac.main.Main;
-import com.sun.tools.javac.processing.JavacProcessingEnvironment;
-import com.sun.tools.javac.util.Context;
-
-public class T7021650 extends JavacTestingAbstractProcessor {
-    public static void main(String... args) throws Exception {
-        new T7021650().run();
-    }
-
-    static File testSrc = new File(System.getProperty("test.src"));
-    static final int MAX_ROUNDS = 3;
-
-    /**
-     * Perform a compilation with custom factories registered in the context,
-     * and verify that corresponding objects are created in each round.
-     */
-    void run() throws Exception {
-        Counter myDemoCounter = new Counter();
-        Counter myAttrCounter = new Counter();
-
-        Context context = new Context();
-        // Use a custom file manager which creates classloaders for annotation
-        // processors with a sensible delegation parent, so that all instances
-        // of test classes come from the same class loader. This is important
-        // because the test performs class checks on the instances of classes
-        // found in the context for each round or processing.
-        context.put(JavaFileManager.class, new Context.Factory<JavaFileManager>() {
-            public JavaFileManager make(Context c) {
-                return new JavacFileManager(c, true, null) {
-                    @Override
-                    protected ClassLoader getClassLoader(URL[] urls) {
-                        return new URLClassLoader(urls, T7021650.class.getClassLoader());
-                    }
-                };
-            }
-        });
-
-        MyDemo.preRegister(context, myDemoCounter);
-        MyAttr.preRegister(context, myAttrCounter);
-
-        String[] args = {
-            "-d", ".",
-            "-processor", T7021650.class.getName(),
-            "-XprintRounds",
-            new File(testSrc, T7021650.class.getName() + ".java").getPath()
-        };
-
-        compile(context, args);
-
-        // the services should only be created once in the current scheme:
-        checkEqual("demoCounter", myDemoCounter.count, 1);
-        checkEqual("myAttrCounter", myAttrCounter.count, 1);
-    }
-
-    void compile(Context context, String... args) throws Exception {
-        StringWriter sw = new StringWriter();
-        PrintWriter pw = new PrintWriter(sw);
-        Main m = new Main("javac", pw);
-        Main.Result res = m.compile(args, context);
-        pw.close();
-        String out = sw.toString();
-        if (!out.isEmpty())
-            System.err.println(out);
-        if (!res.isOK())
-            throw new Exception("compilation failed unexpectedly: result=" + res);
-    }
-
-    void checkEqual(String label, int found, int expect) throws Exception {
-        if (found != expect)
-            throw new Exception("unexpected value for " + label
-                    + ": expected " + expect
-                    + ": found " + found);
-    }
-
-    //---------------
-
-    /*
-     * A custom class unknown to javac but nonetheless registered in the context.
-     */
-    static class Demo {
-        Demo(Context c) {
-            c.put(Demo.class, this);
-        }
-
-        static Demo instance(Context context) {
-            return context.get(Demo.class);
-        }
-    }
-
-    static class MyDemo extends Demo {
-        static void preRegister(Context context, final Counter counter) {
-            context.put(Demo.class, new Context.Factory<Demo>() {
-                public Demo make(Context c) {
-                    counter.count++;
-                    return new MyDemo(c);
-                }
-            });
-        }
-
-        MyDemo(Context c) {
-            super(c);
-        }
-    }
-
-    /**
-     * A custom version of a standard javac component.
-     */
-    static class MyAttr extends Attr {
-        static void preRegister(Context context, final Counter counter) {
-            context.put(attrKey, new Context.Factory<Attr>() {
-                public Attr make(Context c) {
-                    counter.count++;
-                    return new MyAttr(c);
-                }
-            });
-        }
-
-        MyAttr(Context c) {
-            super(c);
-        }
-    }
-
-    static class Counter {
-        int count;
-    }
-
-    //---------------
-
-    int round = 0;
-
-    @Override
-    public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
-        round++;
-
-        Context context = ((JavacProcessingEnvironment) processingEnv).getContext();
-
-        // verify items in context as expected
-        check("Demo", Demo.instance(context), MyDemo.class);
-        check("Attr", Attr.instance(context), MyAttr.class);
-
-        // For a few rounds, generate new source files, so that we can check whether
-        // values in the context are correctly handled in subsequent processing rounds
-        if (round <= MAX_ROUNDS) {
-            String pkg = "p";
-            String currClass = "Gen" + round;
-            String curr = pkg + "." + currClass;
-            String next = (pkg + ".Gen" + (round + 1));
-            StringBuilder text = new StringBuilder();
-            text.append("package ").append(pkg).append(";\n");
-            text.append("public class ").append(currClass).append(" {\n");
-            if (round < MAX_ROUNDS)
-                text.append("    ").append(next).append(" x;\n");
-            text.append("}\n");
-
-            try {
-                JavaFileObject fo = filer.createSourceFile(curr);
-                Writer out = fo.openWriter();
-                try {
-                    out.write(text.toString());
-                } finally {
-                    out.close();
-                }
-            } catch (IOException e) {
-                throw new Error(e);
-            }
-        }
-
-        return true;
-    }
-
-    void check(String label, Object o, Class<?> clazz) {
-        if (o == null)
-            throw new IllegalStateException(label + ": no item found");
-        if (!clazz.isAssignableFrom(o.getClass()))
-            throw new IllegalStateException(label + ": unexpected class: " + o.getClass());
-    }
-}
diff --git a/langtools/test/tools/jdeps/m/Gee.java b/langtools/test/tools/jdeps/m/Gee.java
index 338478b..194a30d 100644
--- a/langtools/test/tools/jdeps/m/Gee.java
+++ b/langtools/test/tools/jdeps/m/Gee.java
@@ -26,7 +26,7 @@
 
 class Gee extends g.G {
     public sun.security.x509.X509CertInfo cert;
-    public com.sun.tools.classfile.ClassFile cf;     // @jdk.Exported(false)
-    public com.sun.source.tree.BinaryTree tree;      // @jdk.Exported
-    public com.sun.management.ThreadMXBean mxbean;   // @jdk.Exported on package-info
+    public com.sun.tools.classfile.ClassFile cf;     // not exported
+    public com.sun.source.tree.BinaryTree tree;      // exported
+    public com.sun.management.ThreadMXBean mxbean;   // exported
 }
diff --git a/make/common/NON_CORE_PKGS.gmk b/make/common/NON_CORE_PKGS.gmk
index 8d7f1a7..b6d9212 100644
--- a/make/common/NON_CORE_PKGS.gmk
+++ b/make/common/NON_CORE_PKGS.gmk
@@ -79,8 +79,7 @@
 
 TREEAPI_PKGS = com.sun.source.doctree \
     com.sun.source.tree \
-    com.sun.source.util \
-    jdk
+    com.sun.source.util
 
 NASHORNAPI_PKGS = jdk.nashorn.api.scripting \
     jdk.nashorn.api.tree
diff --git a/make/common/NativeCompilation.gmk b/make/common/NativeCompilation.gmk
index 7c4736a..89a2d07 100644
--- a/make/common/NativeCompilation.gmk
+++ b/make/common/NativeCompilation.gmk
@@ -783,13 +783,13 @@
 
     $1_LD_OBJ_ARG := $$($1_ALL_OBJS)
 
-    # If there are many object files, use an @-file.
+    # If there are many object files, use an @-file...
     ifneq ($$(word 17, $$($1_ALL_OBJS)), )
       $1_OBJ_FILE_LIST := $$($1_OBJECT_DIR)/_$1_objectfilenames.txt
-      ifneq ($(TOOLCHAIN_TYPE),solstudio)
+      ifneq ($(COMPILER_COMMAND_FILE_FLAG),)
         $1_LD_OBJ_ARG := $(COMPILER_COMMAND_FILE_FLAG)$$($1_OBJ_FILE_LIST)
       else
-        # The solstudio linker does not support @-files.
+        # ...except for toolchains which don't support them.
         $1_LD_OBJ_ARG := `cat $$($1_OBJ_FILE_LIST)`
       endif
     endif
diff --git a/modules.xml b/modules.xml
index 825f4ac..d7db4ed 100644
--- a/modules.xml
+++ b/modules.xml
@@ -205,9 +205,6 @@
       <name>javax.security.cert</name>
     </export>
     <export>
-      <name>jdk</name>
-    </export>
-    <export>
       <name>jdk.net</name>
     </export>
     <export>
@@ -233,9 +230,11 @@
       <to>java.logging</to>
       <to>java.management</to>
       <to>java.naming</to>
+      <to>java.rmi</to>
       <to>java.security.jgss</to>
       <to>java.sql</to>
       <to>java.xml</to>
+      <to>jdk.charsets</to>
       <to>jdk.management.resource</to>
       <to>jdk.scripting.nashorn</to>
     </export>
diff --git a/nashorn/.hgtags b/nashorn/.hgtags
index edc7868..a506482 100644
--- a/nashorn/.hgtags
+++ b/nashorn/.hgtags
@@ -333,3 +333,4 @@
 2beaef2b6a880c0bff8c9f57ffca33477d647f8b jdk-9+97
 68a36216f70c0de4c7e36f8978995934fc72ec03 jdk-9+98
 74ddd1339c57cf2c2a13e34e1760006c2e54d1fc jdk-9+99
+da397aea8adad7e6f743b60bfe0c415fc8508df5 jdk-9+100
diff --git a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/ClassLinker.java b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/ClassLinker.java
index fdb3e1c..47db85f 100644
--- a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/ClassLinker.java
+++ b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/ClassLinker.java
@@ -102,7 +102,7 @@
         setPropertyGetter("static", FOR_CLASS, ValidationType.EXACT_CLASS);
     }
 
-    private static final MethodHandle FOR_CLASS = new Lookup(MethodHandles.lookup()).findStatic(StaticClass.class,
+    private static final MethodHandle FOR_CLASS = Lookup.PUBLIC.findStatic(StaticClass.class,
             "forClass", MethodType.methodType(StaticClass.class, Class.class));
 
 }
diff --git a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/OverloadedDynamicMethod.java b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/OverloadedDynamicMethod.java
index 4496503..b54b32f 100644
--- a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/OverloadedDynamicMethod.java
+++ b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/OverloadedDynamicMethod.java
@@ -112,8 +112,7 @@
     /**
      * Holds a list of all methods.
      */
-    private final LinkedList<SingleDynamicMethod> methods;
-    private final ClassLoader classLoader;
+    private final LinkedList<SingleDynamicMethod> methods = new LinkedList<>();
 
     /**
      * Creates a new overloaded dynamic method.
@@ -122,13 +121,7 @@
      * @param name the name of the method
      */
     OverloadedDynamicMethod(final Class<?> clazz, final String name) {
-        this(new LinkedList<SingleDynamicMethod>(), clazz.getClassLoader(), getClassAndMethodName(clazz, name));
-    }
-
-    private OverloadedDynamicMethod(final LinkedList<SingleDynamicMethod> methods, final ClassLoader classLoader, final String name) {
-        super(name);
-        this.methods = methods;
-        this.classLoader = classLoader;
+        super(getClassAndMethodName(clazz, name));
     }
 
     @Override
@@ -288,10 +281,6 @@
         return b.toString();
     };
 
-    ClassLoader getClassLoader() {
-        return classLoader;
-    }
-
     private static boolean isApplicableDynamically(final LinkerServices linkerServices, final MethodType callSiteType,
             final SingleDynamicMethod m) {
         final MethodType methodType = m.getMethodType();
diff --git a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/package-info.java b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/package-info.java
index c00a693..0f15461 100644
--- a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/package-info.java
+++ b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/beans/package-info.java
@@ -85,5 +85,4 @@
  * Contains the linker for ordinary Java objects.
  * @since 1.9
  */
-@jdk.Exported
 package jdk.dynalink.beans;
diff --git a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/package-info.java b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/package-info.java
index 69a80d8..ab71a0a 100644
--- a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/package-info.java
+++ b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/package-info.java
@@ -113,5 +113,4 @@
  * </p>
  * @since 1.9
  */
-@jdk.Exported
 package jdk.dynalink.linker;
diff --git a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/support/package-info.java b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/support/package-info.java
index fe82e72..b5726e8 100644
--- a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/support/package-info.java
+++ b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/linker/support/package-info.java
@@ -89,5 +89,4 @@
  * </p>
  * @since 1.9
  */
-@jdk.Exported
 package jdk.dynalink.linker.support;
diff --git a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/package-info.java b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/package-info.java
index 773783b..e68bf14 100644
--- a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/package-info.java
+++ b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/package-info.java
@@ -273,5 +273,4 @@
  * from B will get a chance to link the call site in A when it encounters the
  * object from B.
  */
-@jdk.Exported
 package jdk.dynalink;
diff --git a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/support/package-info.java b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/support/package-info.java
index 6ed59c0..f2fe698 100644
--- a/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/support/package-info.java
+++ b/nashorn/src/jdk.dynalink/share/classes/jdk/dynalink/support/package-info.java
@@ -87,5 +87,4 @@
  * </p>
  * @since 1.9
  */
-@jdk.Exported
 package jdk.dynalink.support;
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/AbstractJSObject.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/AbstractJSObject.java
index 9db9dd3..ce2c188 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/AbstractJSObject.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/AbstractJSObject.java
@@ -39,7 +39,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public abstract class AbstractJSObject implements JSObject {
     /**
      * Call this object as a JavaScript function. This is equivalent to
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ClassFilter.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ClassFilter.java
index 1a03c17..a19dcd1 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ClassFilter.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ClassFilter.java
@@ -31,7 +31,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public interface ClassFilter {
      /**
       * Should the Java class of the specified name be exposed to scripts?
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/JSObject.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/JSObject.java
index 699c7fe..8545bf7 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/JSObject.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/JSObject.java
@@ -37,7 +37,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public interface JSObject {
     /**
      * Call this object as a JavaScript function. This is equivalent to
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornException.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornException.java
index 1509a7d..b6fa2c6 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornException.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornException.java
@@ -44,7 +44,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 @SuppressWarnings("serial")
 public abstract class NashornException extends RuntimeException {
     // script file name
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java
index 0f2f3d7..801d0c8 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java
@@ -69,7 +69,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public final class NashornScriptEngine extends AbstractScriptEngine implements Compilable, Invocable {
     /**
      * Key used to associate Nashorn global object mirror with arbitrary Bindings instance.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngineFactory.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngineFactory.java
index f38244c..f05b707 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngineFactory.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngineFactory.java
@@ -48,7 +48,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public final class NashornScriptEngineFactory implements ScriptEngineFactory {
     @Override
     public String getEngineName() {
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptObjectMirror.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptObjectMirror.java
index e3bd9c2..ea2f51f 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptObjectMirror.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptObjectMirror.java
@@ -60,7 +60,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public final class ScriptObjectMirror extends AbstractJSObject implements Bindings {
     private static AccessControlContext getContextAccCtxt() {
         final Permissions perms = new Permissions();
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptUtils.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptUtils.java
index 6fd52a5..367efa5 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptUtils.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptUtils.java
@@ -39,7 +39,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public final class ScriptUtils {
     private ScriptUtils() {}
 
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/URLReader.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/URLReader.java
index 85a585c..cca271b 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/URLReader.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/URLReader.java
@@ -39,7 +39,6 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 public final class URLReader extends Reader {
     // underlying URL
     private final URL url;
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/package-info.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/package-info.java
index 1890924..95781bd 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/package-info.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/package-info.java
@@ -38,5 +38,4 @@
  *
  * @since 1.8u40
  */
-@jdk.Exported
 package jdk.nashorn.api.scripting;
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayAccessTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayAccessTree.java
index ff6b84b..a1373a3 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayAccessTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayAccessTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ArrayAccessTree extends ExpressionTree {
     /**
      * Returns the array that is accessed.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayLiteralTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayLiteralTree.java
index a4c1182..327b585 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayLiteralTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ArrayLiteralTree.java
@@ -32,7 +32,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ArrayLiteralTree extends ExpressionTree {
     /**
      * Returns the list of Array element expressions.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/AssignmentTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/AssignmentTree.java
index d09e1cc..8199aef 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/AssignmentTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/AssignmentTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface AssignmentTree extends ExpressionTree {
     /**
      * Returns the left hand side (LHS) of this assignment.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BinaryTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BinaryTree.java
index b92afc5..84187c2 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BinaryTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BinaryTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface BinaryTree extends ExpressionTree {
     /**
      * Returns left hand side (LHS) of this binary expression.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BlockTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BlockTree.java
index bdb6ed1..efc6d86 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BlockTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BlockTree.java
@@ -39,7 +39,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface BlockTree extends StatementTree {
     /**
      * Returns the list of statements in this block.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BreakTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BreakTree.java
index 79450f3..cdf7297 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BreakTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/BreakTree.java
@@ -37,7 +37,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface BreakTree extends GotoTree {
     /**
      * Label associated with this break statement. This is null
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CaseTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CaseTree.java
index a5c2b69..4d8578d 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CaseTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CaseTree.java
@@ -41,7 +41,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface CaseTree extends Tree {
     /**
      * Case expression of this 'case' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CatchTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CatchTree.java
index 91e0c3e..ac9b2af2 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CatchTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CatchTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface CatchTree extends Tree {
     /**
      * Returns the catch parameter identifier of the exception caught.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompilationUnitTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompilationUnitTree.java
index 60b69ad..0f69ad6 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompilationUnitTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompilationUnitTree.java
@@ -33,7 +33,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface CompilationUnitTree extends Tree {
     /**
      * Return the list of source elements in this compilation unit.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompoundAssignmentTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompoundAssignmentTree.java
index 228791f..66d4e99 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompoundAssignmentTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/CompoundAssignmentTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface CompoundAssignmentTree extends ExpressionTree {
     /**
      * Returns the left hand side (LHS) of this assignment.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalExpressionTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalExpressionTree.java
index 55b5b09..0eb16e1 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalExpressionTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalExpressionTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ConditionalExpressionTree extends ExpressionTree {
     /**
      * Returns the condition expression of this ternary expression.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalLoopTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalLoopTree.java
index a621571..103ce58 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalLoopTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ConditionalLoopTree.java
@@ -30,7 +30,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ConditionalLoopTree extends LoopTree {
     /**
      * Returns the condition expression of this 'loop' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ContinueTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ContinueTree.java
index faded12..e1c7d42 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ContinueTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ContinueTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ContinueTree extends GotoTree {
     /**
      * Label associated with this continue statement. This is null
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DebuggerTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DebuggerTree.java
index 92beb54..70a9892 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DebuggerTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DebuggerTree.java
@@ -35,6 +35,5 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface DebuggerTree extends StatementTree {
 }
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Diagnostic.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Diagnostic.java
index 4fa51b7..5eae67e 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Diagnostic.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Diagnostic.java
@@ -42,7 +42,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface Diagnostic {
 
     /**
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DiagnosticListener.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DiagnosticListener.java
index d84fe87..a79829f 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DiagnosticListener.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DiagnosticListener.java
@@ -30,7 +30,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 @FunctionalInterface
 public interface DiagnosticListener {
     /**
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DoWhileLoopTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DoWhileLoopTree.java
index 80632ed..de4d848 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DoWhileLoopTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/DoWhileLoopTree.java
@@ -37,7 +37,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface DoWhileLoopTree extends ConditionalLoopTree {
     /**
      * Returns the condition expression of this do-while statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/EmptyStatementTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/EmptyStatementTree.java
index 30667b0..280ae6d 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/EmptyStatementTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/EmptyStatementTree.java
@@ -35,5 +35,4 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface EmptyStatementTree extends StatementTree {}
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ErroneousTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ErroneousTree.java
index b335bae..eb78051 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ErroneousTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ErroneousTree.java
@@ -30,6 +30,5 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ErroneousTree extends ExpressionTree {
 }
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionStatementTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionStatementTree.java
index 3c07edb..8881031 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionStatementTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionStatementTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ExpressionStatementTree extends StatementTree {
     /**
      * Returns the expression of this expression statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionTree.java
index f831855..7fa88a1 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ExpressionTree.java
@@ -31,5 +31,4 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ExpressionTree extends Tree {}
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForInLoopTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForInLoopTree.java
index 0e28497..84a9155 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForInLoopTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForInLoopTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ForInLoopTree extends LoopTree {
     /**
      * The for..in left hand side expression.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForLoopTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForLoopTree.java
index 9d6e538..83fc390 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForLoopTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForLoopTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ForLoopTree extends ConditionalLoopTree {
     /**
      * Returns the initializer expression of this 'for' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionCallTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionCallTree.java
index 8157f13..82a0651 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionCallTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionCallTree.java
@@ -39,7 +39,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface FunctionCallTree extends ExpressionTree {
     /**
      * Returns the function being called.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionDeclarationTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionDeclarationTree.java
index df55089..3453468 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionDeclarationTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionDeclarationTree.java
@@ -39,7 +39,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface FunctionDeclarationTree extends StatementTree {
     /**
      * Returns the name of the function being declared.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionExpressionTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionExpressionTree.java
index 40b4053..260eef9 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionExpressionTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionExpressionTree.java
@@ -39,7 +39,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface FunctionExpressionTree extends ExpressionTree {
     /**
      * Returns the name of the function being declared.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/GotoTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/GotoTree.java
index fb0517e..4c77ad4 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/GotoTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/GotoTree.java
@@ -33,7 +33,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface GotoTree extends StatementTree {
     /**
      * Label associated with this goto statement. This is null
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IdentifierTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IdentifierTree.java
index 03035b6..8af1922 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IdentifierTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IdentifierTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface IdentifierTree extends ExpressionTree {
     /**
      * Returns the name of this identifier.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IfTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IfTree.java
index fe98193..d0ffebf 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IfTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/IfTree.java
@@ -41,7 +41,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface IfTree extends StatementTree {
     /**
      * Returns the condition expression of this 'if' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/InstanceOfTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/InstanceOfTree.java
index f1b36f9..7eb4506 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/InstanceOfTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/InstanceOfTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface InstanceOfTree extends ExpressionTree {
     /**
      * Returns the expression whose type is being checked.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LabeledStatementTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LabeledStatementTree.java
index 893fafd..dd2c643 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LabeledStatementTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LabeledStatementTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface LabeledStatementTree extends StatementTree {
     /**
      * Returns the label associated with this statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LineMap.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LineMap.java
index f65d39d..3a4f050 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LineMap.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LineMap.java
@@ -31,7 +31,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface LineMap {
     /**
      * Find the line containing a position; a line termination
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LiteralTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LiteralTree.java
index 4bae2d1..5ec1c32 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LiteralTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LiteralTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface LiteralTree extends ExpressionTree {
     /**
      * Returns the value of this literal.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LoopTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LoopTree.java
index 4d2ca02..9768705 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LoopTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/LoopTree.java
@@ -30,7 +30,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface LoopTree extends StatementTree {
     /**
      * Returns the statement contained in this 'loop' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/MemberSelectTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/MemberSelectTree.java
index d34214e..d145737 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/MemberSelectTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/MemberSelectTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface MemberSelectTree extends ExpressionTree {
     /**
      * The object expression whose member is being selected.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/NewTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/NewTree.java
index 59c536d..ecad024 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/NewTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/NewTree.java
@@ -37,7 +37,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface NewTree extends ExpressionTree {
     /**
      * Returns the constructor expression of this 'new' expression.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ObjectLiteralTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ObjectLiteralTree.java
index 7639935..f287786 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ObjectLiteralTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ObjectLiteralTree.java
@@ -32,7 +32,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ObjectLiteralTree extends ExpressionTree {
     /**
      * Returns the list of properties of this object literal.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ParenthesizedTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ParenthesizedTree.java
index 2352742..d90bc8c 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ParenthesizedTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ParenthesizedTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ParenthesizedTree extends ExpressionTree {
     /**
      * Returns the expression within the parenthesis.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Parser.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Parser.java
index 627351a..10bbebe 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Parser.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Parser.java
@@ -38,7 +38,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface Parser {
     /**
      * Parses the source file and returns compilation unit tree
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/PropertyTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/PropertyTree.java
index b7bdd20..fed1e42 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/PropertyTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/PropertyTree.java
@@ -30,7 +30,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface PropertyTree extends Tree {
     /**
      * Returns the name of this property.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/RegExpLiteralTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/RegExpLiteralTree.java
index d8b4a42..2b09e52 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/RegExpLiteralTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/RegExpLiteralTree.java
@@ -30,7 +30,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface RegExpLiteralTree extends Tree {
     /**
      * Regular expression pattern to match.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ReturnTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ReturnTree.java
index 11fd296..765c9d7 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ReturnTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ReturnTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ReturnTree extends StatementTree {
     /**
      * Returns the expression being returned. This is null if no value
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/StatementTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/StatementTree.java
index c508239..7dc58da 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/StatementTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/StatementTree.java
@@ -31,6 +31,5 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface StatementTree extends Tree {
 }
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/SwitchTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/SwitchTree.java
index 48c1bd7..3c9da0e 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/SwitchTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/SwitchTree.java
@@ -39,7 +39,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface SwitchTree extends StatementTree {
     /**
      * Returns the expression on which this statement switches.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ThrowTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ThrowTree.java
index 339abb0..c1f0a67 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ThrowTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ThrowTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface ThrowTree extends StatementTree {
     /**
      * Returns the expression being thrown.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Tree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Tree.java
index 210ec56..13cd6f8 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Tree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/Tree.java
@@ -33,13 +33,11 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface Tree {
 
     /**
      * Enumerates all kinds of trees.
      */
-    @jdk.Exported
     public enum Kind {
         /**
          * Used for instances of {@link ArrayAccessTree}.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TreeVisitor.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TreeVisitor.java
index ee064b2..f97b520 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TreeVisitor.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TreeVisitor.java
@@ -53,7 +53,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface TreeVisitor<R,P> {
     /**
      * Visit assignment tree.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TryTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TryTree.java
index 59fbdcc..583d560 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TryTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TryTree.java
@@ -41,7 +41,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface TryTree extends StatementTree {
     /**
      * Returns the 'try' block of this 'try' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnaryTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnaryTree.java
index e2e1bc2..16fb334 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnaryTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnaryTree.java
@@ -38,7 +38,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface UnaryTree extends ExpressionTree {
     /**
      * Returns the expression operated by the unary operator.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnknownTreeException.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnknownTreeException.java
index 2892568..0a801b8 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnknownTreeException.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/UnknownTreeException.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public class UnknownTreeException extends RuntimeException {
 
     private static final long serialVersionUID = 1L;
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/VariableTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/VariableTree.java
index aec0e6c..2fd4d42 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/VariableTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/VariableTree.java
@@ -35,7 +35,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface VariableTree extends StatementTree {
     /**
      * Returns the name of this variable.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WhileLoopTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WhileLoopTree.java
index 5910caf..63fb01a 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WhileLoopTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WhileLoopTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface WhileLoopTree extends ConditionalLoopTree {
     /**
      * The condition expression of this 'while' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WithTree.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WithTree.java
index 96c4b2a..684498c 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WithTree.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/WithTree.java
@@ -36,7 +36,6 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 public interface WithTree extends StatementTree {
     /**
      * The scope object expression for this 'with' statement.
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/package-info.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/package-info.java
index 1c2d048..725856c 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/package-info.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/package-info.java
@@ -70,6 +70,5 @@
  *
  * @since 1.9
  */
-@jdk.Exported
 package jdk.nashorn.api.tree;
 
diff --git a/nashorn/test/script/basic/JDK-8134488.js b/nashorn/test/script/basic/JDK-8134488.js
index 928961a..68b3ebb 100644
--- a/nashorn/test/script/basic/JDK-8134488.js
+++ b/nashorn/test/script/basic/JDK-8134488.js
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  * 
  * This code is free software; you can redistribute it and/or modify it
diff --git a/nashorn/test/script/basic/JDK-8134490.js b/nashorn/test/script/basic/JDK-8134490.js
index d7c10fd..2a2a012 100644
--- a/nashorn/test/script/basic/JDK-8134490.js
+++ b/nashorn/test/script/basic/JDK-8134490.js
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  * 
  * This code is free software; you can redistribute it and/or modify it
diff --git a/nashorn/test/script/basic/JDK-8134939.js b/nashorn/test/script/basic/JDK-8134939.js
index 4f22ef0..0aa1b82 100644
--- a/nashorn/test/script/basic/JDK-8134939.js
+++ b/nashorn/test/script/basic/JDK-8134939.js
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  * 
  * This code is free software; you can redistribute it and/or modify it