hotspot/test/runtime/7162488/Test7162488.sh
author stefank
Tue, 09 Oct 2012 22:12:25 +0200
changeset 14075 53f86368a6a6
parent 12498 961dc4bd60d6
child 16457 92af83361777
permissions -rw-r--r--
8000659: NPG: ClassCastExceptions are unexpectedly thrown when testing nashorn Summary: Treat the oops in invoke_method_table() as strong roots when ClassUnloading is enabled. Reviewed-by: kamg, coleenp
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12498
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     1
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     2
#  Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     3
#  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     4
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     5
#  This code is free software; you can redistribute it and/or modify it
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     6
#  under the terms of the GNU General Public License version 2 only, as
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     7
#  published by the Free Software Foundation.
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     8
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
     9
#  This code is distributed in the hope that it will be useful, but WITHOUT
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    10
#  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    11
#  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    12
#  version 2 for more details (a copy is included in the LICENSE file that
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    13
#  accompanied this code).
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    14
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    15
#  You should have received a copy of the GNU General Public License version
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    16
#  2 along with this work; if not, write to the Free Software Foundation,
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    17
#  Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    18
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    19
#  Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    20
#  or visit www.oracle.com if you need additional information or have any
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    21
#  questions.
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    22
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    23
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    24
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    25
# @test Test7162488.sh
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    26
# @bug 7162488
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    27
# @summary VM not printing unknown -XX options
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    28
# @run shell Test7162488.sh
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    29
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    30
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    31
if [ "${TESTSRC}" = "" ]
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    32
  then TESTSRC=.
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    33
fi
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    34
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    35
if [ "${TESTJAVA}" = "" ]
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    36
then
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    37
  PARENT=`dirname \`which java\``
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    38
  TESTJAVA=`dirname ${PARENT}`
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    39
  printf "TESTJAVA not set, selecting " ${TESTJAVA}
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    40
  printf "  If this is incorrect, try setting the variable manually.\n"
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    41
fi
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    42
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    43
# set platform-dependent variables
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    44
OS=`uname -s`
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    45
case "$OS" in
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    46
  Windows_* )
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    47
    FS="\\"
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    48
    ;;
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    49
  * )
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    50
    FS="/"
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    51
    ;;
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    52
esac
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    53
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    54
JAVA=${TESTJAVA}${FS}bin${FS}java
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    55
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    56
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    57
# Just run with an option we are confident will not be recognized,
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    58
# and check for the message:
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    59
#
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    60
OPTION=this_is_not_an_option
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    61
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    62
${JAVA} ${TESTVMOPTS} -showversion -XX:${OPTION} 2>&1 | grep "Unrecognized VM option" 
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    63
if [ "$?" != "0" ]
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    64
then
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    65
  printf "FAILED: option not flagged as unrecognized.\n"
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    66
  exit 1
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    67
fi
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    68
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    69
${JAVA} ${TESTVMOPTS} -showversion -XX:${OPTION} 2>&1 | grep ${OPTION}
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    70
if [ "$?" != "0" ]
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    71
then
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    72
  printf "FAILED: bad option not named as being bad.\n"
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    73
  exit 1
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    74
fi
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    75
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    76
printf "Passed.\n"
961dc4bd60d6 7162488: VM not printing unknown -XX options
kevinw
parents:
diff changeset
    77