test/jdk/jdk/jfr/event/gc/configuration/TestGCHeapConfigurationEventWithHeapBasedOops.sh
branchunixdomainchannels
changeset 59004 84e08e00c29c
parent 59003 aaba7cc40951
parent 59002 586415e8abcb
child 59007 27709bf817a5
equal deleted inserted replaced
59003:aaba7cc40951 59004:84e08e00c29c
     1 #
       
     2 # Copyright (c) 2013, 2018, Oracle and/or its affiliates. All rights reserved.
       
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       
     4 #
       
     5 # This code is free software; you can redistribute it and/or modify it
       
     6 # under the terms of the GNU General Public License version 2 only, as
       
     7 # published by the Free Software Foundation.
       
     8 #
       
     9 # This code is distributed in the hope that it will be useful, but WITHOUT
       
    10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
       
    11 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
       
    12 # version 2 for more details (a copy is included in the LICENSE file that
       
    13 # accompanied this code).
       
    14 #
       
    15 # You should have received a copy of the GNU General Public License version
       
    16 # 2 along with this work; if not, write to the Free Software Foundation,
       
    17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
       
    18 #
       
    19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
       
    20 # or visit www.oracle.com if you need additional information or have any
       
    21 # questions.
       
    22 #
       
    23 # @test TestGCHeapConfigurationEventWithHeapBasedOops
       
    24 # @key jfr
       
    25 # @requires vm.hasJFR
       
    26 # @requires vm.gc == "Parallel" | vm.gc == null
       
    27 # @library /test/lib /test/jdk
       
    28 # @build jdk.jfr.event.gc.configuration.TestGCHeapConfigurationEventWithHeapBasedOops
       
    29 # @run shell TestGCHeapConfigurationEventWithHeapBasedOops.sh
       
    30 
       
    31 uses_64_bit_testjava() {
       
    32   ${TESTJAVA}/bin/java ${TESTVMOPTS} -version 2>&1 | grep '64-Bit' > /dev/null
       
    33 }
       
    34 
       
    35 uses_windows_or_linux() {
       
    36     case `uname -s` in
       
    37       Linux | CYGWIN* | Windows* )
       
    38         return 0
       
    39         ;;
       
    40     esac
       
    41     return 1
       
    42 }
       
    43 
       
    44 TEST='jdk.jfr.event.gc.configuration.TestGCHeapConfigurationEventWithHeapBasedOops'
       
    45 
       
    46 # NOTE: Can't use 32g heap with UseCompressedOops. Hopefully the 31g heap will
       
    47 # force HeapBased compressed oops to be enalbed by hoping that there isn't
       
    48 # enough space in the lowest 1 GB of the virtual address space.
       
    49 OPTIONS='-XX:+UnlockExperimentalVMOptions -XX:-UseFastUnorderedTimeStamps -XX:+UseParallelGC -XX:+UseParallelOldGC -Xmx31g -XX:+UseCompressedOops'
       
    50 
       
    51 if [ -z "${TESTCLASSPATH}" ]; then
       
    52     echo "Using TESTCLASSES"
       
    53     MY_CLASSPATH=${TESTCLASSES}
       
    54 else
       
    55     echo "Using TESTCLASSPATH"
       
    56     MY_CLASSPATH=${TESTCLASSPATH}
       
    57 fi
       
    58 
       
    59 if uses_windows_or_linux && uses_64_bit_testjava; then
       
    60   printenv
       
    61   echo "${TESTJAVA}/bin/java ${TESTVMOPTS} ${OPTIONS} -cp ${MY_CLASSPATH} ${TEST}"
       
    62   ${TESTJAVA}/bin/java ${TESTVMOPTS} ${OPTIONS} -cp ${MY_CLASSPATH} ${TEST}
       
    63 fi