annotate test/runtime/6929067/Test6929067.sh @ 19134:0b05bd821399

Factor the findSpecialCallTarget logic when canonicalizing MethodCallTarget nodes into a static method.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Wed, 04 Feb 2015 21:04:41 +0100
parents 4ca6dc0799b6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
1 #!/bin/sh
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
2
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
3 ##
14909
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
4 ## @ignore 8028740
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
5 ## @test Test6929067.sh
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
6 ## @bug 6929067
11967
f9ee986a9fea 8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents: 8831
diff changeset
7 ## @bug 8021296
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
8 ## @summary Stack guard pages should be removed when thread is detached
14909
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
9 ## @compile T.java
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
10 ## @run shell Test6929067.sh
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
11 ##
14909
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
12 set -x
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
13 if [ "${TESTSRC}" = "" ]
8831
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
14 then
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
15 TESTSRC=${PWD}
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
16 echo "TESTSRC not set. Using "${TESTSRC}" as default"
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
17 fi
8831
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
18 echo "TESTSRC=${TESTSRC}"
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
19 ## Adding common setup Variables for running shell tests.
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
20 . ${TESTSRC}/../../test_env.sh
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
21
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
22 # set platform-dependent variables
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
23 OS=`uname -s`
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
24 case "$OS" in
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
25 Linux)
11967
f9ee986a9fea 8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents: 8831
diff changeset
26 gcc_cmd=`which gcc`
f9ee986a9fea 8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents: 8831
diff changeset
27 if [ "x$gcc_cmd" == "x" ]; then
f9ee986a9fea 8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents: 8831
diff changeset
28 echo "WARNING: gcc not found. Cannot execute test." 2>&1
f9ee986a9fea 8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents: 8831
diff changeset
29 exit 0;
f9ee986a9fea 8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents: 8831
diff changeset
30 fi
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
31 NULL=/dev/null
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
32 PS=":"
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
33 FS="/"
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
34 ;;
6598
6acee021f5ac 7129723: MAC: Some regression tests need to recognize Mac OS X platform
coleenp
parents: 6074
diff changeset
35 * )
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
36 echo "Test passed; only valid for Linux"
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
37 exit 0;
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
38 ;;
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
39 esac
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
40
6869
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
41 ${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -Xinternalversion > vm_version.out 2>&1
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
42
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
43 # Bitness:
6074
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
44 # Cannot simply look at TESTVMOPTS as -d64 is not
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
45 # passed if there is only a 64-bit JVM available.
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
46
6869
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
47 grep "64-Bit" vm_version.out > ${NULL}
6074
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
48 if [ "$?" = "0" ]
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
49 then
6869
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
50 COMP_FLAG="-m64"
6074
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
51 else
6869
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
52 COMP_FLAG="-m32"
6074
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
53 fi
037973617842 7157734: hotspot test scripts not testing 64-bit JVM under JPRT/JTREG.
kevinw
parents: 3960
diff changeset
54
6869
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
55
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
56 # Architecture:
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
57 # Translate uname output to JVM directory name, but permit testing
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
58 # 32-bit x86 on an x64 platform.
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
59 ARCH=`uname -m`
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
60 case "$ARCH" in
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
61 x86_64)
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
62 if [ "$COMP_FLAG" = "-m32" ]; then
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
63 ARCH=i386
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
64 else
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
65 ARCH=amd64
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
66 fi
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
67 ;;
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
68 ppc64)
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
69 if [ "$COMP_FLAG" = "-m32" ]; then
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
70 ARCH=ppc
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
71 else
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
72 ARCH=ppc64
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
73 fi
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
74 ;;
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
75 sparc64)
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
76 if [ "$COMP_FLAG" = "-m32" ]; then
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
77 ARCH=sparc
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
78 else
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
79 ARCH=sparc64
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
80 fi
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
81 ;;
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
82 arm*)
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
83 # 32-bit ARM machine: compiler may not recognise -m32
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
84 COMP_FLAG=""
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
85 ARCH=arm
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
86 ;;
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
87 aarch64)
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
88 # 64-bit arm machine, could be testing 32 or 64-bit:
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
89 if [ "$COMP_FLAG" = "-m32" ]; then
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
90 ARCH=arm
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
91 else
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
92 ARCH=aarch64
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
93 fi
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
94 ;;
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
95 i586)
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
96 ARCH=i386
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
97 ;;
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
98 i686)
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
99 ARCH=i386
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
100 ;;
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
101 # Assuming other ARCH values need no translation
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
102 esac
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
103
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
104
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
105 # VM type: need to know server or client
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
106 VMTYPE=client
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
107 grep Server vm_version.out > ${NULL}
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
108 if [ "$?" = "0" ]
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
109 then
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
110 VMTYPE=server
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
111 fi
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
112
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
113
8831
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
114 LD_LIBRARY_PATH=.:${COMPILEJAVA}/jre/lib/${ARCH}/${VMTYPE}:/usr/lib:$LD_LIBRARY_PATH
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
115 export LD_LIBRARY_PATH
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
116
14909
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
117 cp ${TESTSRC}${FS}invoke.c .
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
118
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
119 # Copy the result of our @compile action:
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
120 cp ${TESTCLASSES}${FS}T.class .
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
121
6869
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
122 echo "Architecture: ${ARCH}"
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
123 echo "Compilation flag: ${COMP_FLAG}"
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
124 echo "VM type: ${VMTYPE}"
8831
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
125 # Note pthread may not be found thus invoke creation will fail to be created.
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
126 # Check to ensure you have a /usr/lib/libpthread.so if you don't please look
04d6d4322c6a 8009152: A number of jtreg tests need review/improvement
collins
parents: 6869
diff changeset
127 # for /usr/lib/`uname -m`-linux-gnu version ensure to add that path to below compilation.
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
128
11967
f9ee986a9fea 8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents: 8831
diff changeset
129 $gcc_cmd -DLINUX ${COMP_FLAG} -o invoke \
14482
5e7eb4244604 8025519: [TESTBUG] runtime/7107135/Test7107135.sh need to use COMPILEJAVA for javac task
ccheung
parents: 14274
diff changeset
130 -I${COMPILEJAVA}/include -I${COMPILEJAVA}/include/linux \
5e7eb4244604 8025519: [TESTBUG] runtime/7107135/Test7107135.sh need to use COMPILEJAVA for javac task
ccheung
parents: 14274
diff changeset
131 -L${COMPILEJAVA}/jre/lib/${ARCH}/${VMTYPE} \
14909
4ca6dc0799b6 Backout jdk9 merge
Gilles Duboscq <duboscq@ssw.jku.at>
parents: 14482
diff changeset
132 -ljvm -lpthread invoke.c
6869
e0ea0e94c23c 7195151: Multiplatform tescase for 6929067
kevinw
parents: 6598
diff changeset
133
1320
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
134 ./invoke
3b3d12e645e7 6929067: Stack guard pages should be removed when thread is detached
coleenp
parents:
diff changeset
135 exit $?