annotate test/compiler/ciReplay/TestSA.sh @ 20218:828056cf311f

8040792: G1: Memory usage calculation uses sizeof(this) instead of sizeof(classname) Summary: A few locations in the code use sizeof(this) which returns the size of the pointer instead of sizeof(classname) which returns the size of the sum of its members. This change fixes these errors and adds a few tests. Reviewed-by: mgerdin, brutisso
author tschatzl
date Mon, 21 Jul 2014 09:40:19 +0200
parents cd6f6fccd287
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10197
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
1 #!/bin/sh
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
2 #
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
3 # Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
4 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
5 #
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
6 # This code is free software; you can redistribute it and/or modify it
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
7 # under the terms of the GNU General Public License version 2 only, as
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
8 # published by the Free Software Foundation.
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
9 #
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
10 # This code is distributed in the hope that it will be useful, but WITHOUT
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
12 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
13 # version 2 for more details (a copy is included in the LICENSE file that
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
14 # accompanied this code).
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
15 #
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
16 # You should have received a copy of the GNU General Public License version
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
17 # 2 along with this work; if not, write to the Free Software Foundation,
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
19 #
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
21 # or visit www.oracle.com if you need additional information or have any
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
22 # questions.
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
23 #
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
24 #
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
25
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
26 ##
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
27 ## @test
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
28 ## @bug 8011675
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
29 ## @summary testing of ciReplay with using generated by SA replay.txt
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
30 ## @author igor.ignatyev@oracle.com
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
31 ## @run shell TestSA.sh
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
32 ##
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
33
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
34 if [ "${TESTSRC}" = "" ]
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
35 then
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
36 TESTSRC=${PWD}
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
37 echo "TESTSRC not set. Using "${TESTSRC}" as default"
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
38 fi
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
39 echo "TESTSRC=${TESTSRC}"
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
40
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
41 ## Adding common setup Variables for running shell tests.
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
42 . ${TESTSRC}/../../test_env.sh
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
43
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
44 . ${TESTSRC}/common.sh
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
45
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
46 generate_replay
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
47
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
48 ${MV} ${replay_data} replay_vm.txt
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
49
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
50 if [ -z "${core_file}" -o ! -r "${core_file}" ]
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
51 then
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
52 # skip test if MacOS host isn't configured for core dumping
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
53 if [ "$OS" = "Darwin" ]
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
54 then
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
55 if [ ! -d "/cores" ]
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
56 then
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
57 echo TEST SKIPPED: \'/cores\' dir doens\'t exist
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
58 exit 0
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
59 fi
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
60 if [ ! -w "/cores" ]
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
61 then
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
62 echo TEST SKIPPED: \'/cores\' dir exists but is not writable
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
63 exit 0
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
64 fi
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
65 fi
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
66 test_fail 2 "CHECK :: CORE GENERATION" "core wasn't generated on $OS"
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
67 fi
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
68
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
69 echo "dumpreplaydata -a > ${replay_data}" | \
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
70 ${JAVA} ${TESTVMOPTS} \
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
71 -cp ${TESTJAVA}${FS}lib${FS}sa-jdi.jar \
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
72 sun.jvm.hotspot.CLHSDB ${JAVA} ${core_file}
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
73
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
74 if [ ! -s ${replay_data} ]
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
75 then
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
76 test_fail 1 "CHECK :: REPLAY DATA GENERATION" \
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
77 "replay data wasn't generated by SA"
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
78 fi
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
79
10282
cd6f6fccd287 8014068: TEST_BUG: compiler/ciReplay/TestSA.sh fails on Windows: core wasn't generated
iignatyev
parents: 10197
diff changeset
80 diff ${replay_data} replay_vm.txt > replay.diff 2>&1
cd6f6fccd287 8014068: TEST_BUG: compiler/ciReplay/TestSA.sh fails on Windows: core wasn't generated
iignatyev
parents: 10197
diff changeset
81 if [ -s replay.diff ]
10197
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
82 then
10282
cd6f6fccd287 8014068: TEST_BUG: compiler/ciReplay/TestSA.sh fails on Windows: core wasn't generated
iignatyev
parents: 10197
diff changeset
83 echo WARNING: replay.txt from SA != replay.txt from VM:
cd6f6fccd287 8014068: TEST_BUG: compiler/ciReplay/TestSA.sh fails on Windows: core wasn't generated
iignatyev
parents: 10197
diff changeset
84 cat replay.diff
10197
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
85 fi
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
86
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
87 common_tests 10
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
88 ${VM_TYPE}_tests 20
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
89
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
90 cleanup
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
91
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
92 echo TEST PASSED
7b23cb975cf2 8011675: adding compilation level to replay data
iignatyev
parents:
diff changeset
93