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
24 /**
25 * @test
26 * @bug 8035968
27 * @summary Verify that SHA-512 multi block intrinsic is actually used.
28 * @library /testlibrary /test/lib / ../
29 * @modules java.base/jdk.internal.misc
30 * java.management
31 * @build TestSHA compiler.testlibrary.intrinsics.Verifier TestSHA512MultiBlockIntrinsics
32 * @run driver ClassFileInstaller sun.hotspot.WhiteBox
33 * sun.hotspot.WhiteBox$WhiteBoxPermission
34 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
35 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
36 * -XX:Tier4InvocationThreshold=500
37 * -XX:+LogCompilation -XX:LogFile=positive_384.log
38 * -XX:CompileOnly=sun/security/provider/DigestBase
39 * -XX:CompileOnly=sun/security/provider/SHA
40 * -XX:+UseSHA512Intrinsics -XX:-UseSHA1Intrinsics
41 * -XX:-UseSHA256Intrinsics
42 * -Dalgorithm=SHA-384 TestSHA512MultiBlockIntrinsics
43 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
44 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
45 * -XX:Tier4InvocationThreshold=500
46 * -XX:+LogCompilation -XX:LogFile=positive_384_def.log
47 * -XX:CompileOnly=sun/security/provider/DigestBase
48 * -XX:CompileOnly=sun/security/provider/SHA
49 * -XX:+UseSHA512Intrinsics -Dalgorithm=SHA-384
50 * TestSHA512MultiBlockIntrinsics
51 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
52 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
53 * -XX:Tier4InvocationThreshold=500
54 * -XX:+LogCompilation -XX:LogFile=negative_384.log
55 * -XX:CompileOnly=sun/security/provider/DigestBase
56 * -XX:CompileOnly=sun/security/provider/SHA -XX:-UseSHA
57 * -Dalgorithm=SHA-384 TestSHA1Intrinsics
58 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
59 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
60 * -XX:Tier4InvocationThreshold=500
61 * -XX:+LogCompilation -XX:LogFile=positive_512.log
62 * -XX:CompileOnly=sun/security/provider/DigestBase
63 * -XX:CompileOnly=sun/security/provider/SHA
64 * -XX:+UseSHA512Intrinsics -XX:-UseSHA1Intrinsics
65 * -XX:-UseSHA256Intrinsics
66 * -Dalgorithm=SHA-512 TestSHA512MultiBlockIntrinsics
67 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
68 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
69 * -XX:Tier4InvocationThreshold=500
70 * -XX:+LogCompilation -XX:LogFile=positive_512_def.log
71 * -XX:CompileOnly=sun/security/provider/DigestBase
72 * -XX:CompileOnly=sun/security/provider/SHA
73 * -XX:+UseSHA512Intrinsics -Dalgorithm=SHA-512
74 * TestSHA512MultiBlockIntrinsics
75 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
76 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
77 * -XX:Tier4InvocationThreshold=500
78 * -XX:+LogCompilation -XX:LogFile=negative_512.log
79 * -XX:CompileOnly=sun/security/provider/DigestBase
80 * -XX:CompileOnly=sun/security/provider/SHA -XX:-UseSHA
81 * -Dalgorithm=SHA-512 TestSHA512MultiBlockIntrinsics
82 * @run main/othervm -DverificationStrategy=VERIFY_INTRINSIC_USAGE
83 * compiler.testlibrary.intrinsics.Verifier positive_384.log positive_512.log
84 * positive_384_def.log positive_512_def.log negative_384.log
85 * negative_512.log
86 */
87
88 import compiler.testlibrary.sha.predicate.IntrinsicPredicates;
89
90 public class TestSHA512MultiBlockIntrinsics {
91 public static void main(String args[]) throws Exception {
92 new SHASanityTestBase(IntrinsicPredicates.SHA512_INTRINSICS_AVAILABLE,
93 SHASanityTestBase.MB_INTRINSIC_ID).test();
94 }
95 }
|
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
24 /**
25 * @test
26 * @bug 8035968
27 * @summary Verify that SHA-512 multi block intrinsic is actually used.
28 * @library /testlibrary /test/lib /
29 * @modules java.base/jdk.internal.misc
30 * java.management
31 *
32 * @build compiler.testlibrary.intrinsics.Verifier
33 * compiler.intrinsics.sha.sanity.TestSHA512MultiBlockIntrinsics
34 * @run driver ClassFileInstaller sun.hotspot.WhiteBox
35 * sun.hotspot.WhiteBox$WhiteBoxPermission
36 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
37 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
38 * -XX:Tier4InvocationThreshold=500
39 * -XX:+LogCompilation -XX:LogFile=positive_384.log
40 * -XX:CompileOnly=sun/security/provider/DigestBase
41 * -XX:CompileOnly=sun/security/provider/SHA
42 * -XX:+UseSHA512Intrinsics -XX:-UseSHA1Intrinsics
43 * -XX:-UseSHA256Intrinsics
44 * -Dalgorithm=SHA-384
45 * compiler.intrinsics.sha.sanity.TestSHA512MultiBlockIntrinsics
46 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
47 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
48 * -XX:Tier4InvocationThreshold=500
49 * -XX:+LogCompilation -XX:LogFile=positive_384_def.log
50 * -XX:CompileOnly=sun/security/provider/DigestBase
51 * -XX:CompileOnly=sun/security/provider/SHA
52 * -XX:+UseSHA512Intrinsics -Dalgorithm=SHA-384
53 * compiler.intrinsics.sha.sanity.TestSHA512MultiBlockIntrinsics
54 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
55 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
56 * -XX:Tier4InvocationThreshold=500
57 * -XX:+LogCompilation -XX:LogFile=negative_384.log
58 * -XX:CompileOnly=sun/security/provider/DigestBase
59 * -XX:CompileOnly=sun/security/provider/SHA -XX:-UseSHA
60 * -Dalgorithm=SHA-384
61 * compiler.intrinsics.sha.sanity.TestSHA1Intrinsics
62 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
63 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
64 * -XX:Tier4InvocationThreshold=500
65 * -XX:+LogCompilation -XX:LogFile=positive_512.log
66 * -XX:CompileOnly=sun/security/provider/DigestBase
67 * -XX:CompileOnly=sun/security/provider/SHA
68 * -XX:+UseSHA512Intrinsics -XX:-UseSHA1Intrinsics
69 * -XX:-UseSHA256Intrinsics
70 * -Dalgorithm=SHA-512
71 * compiler.intrinsics.sha.sanity.TestSHA512MultiBlockIntrinsics
72 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
73 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
74 * -XX:Tier4InvocationThreshold=500
75 * -XX:+LogCompilation -XX:LogFile=positive_512_def.log
76 * -XX:CompileOnly=sun/security/provider/DigestBase
77 * -XX:CompileOnly=sun/security/provider/SHA
78 * -XX:+UseSHA512Intrinsics -Dalgorithm=SHA-512
79 * compiler.intrinsics.sha.sanity.TestSHA512MultiBlockIntrinsics
80 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
81 * -XX:+WhiteBoxAPI -Xbatch -XX:CompileThreshold=500
82 * -XX:Tier4InvocationThreshold=500
83 * -XX:+LogCompilation -XX:LogFile=negative_512.log
84 * -XX:CompileOnly=sun/security/provider/DigestBase
85 * -XX:CompileOnly=sun/security/provider/SHA -XX:-UseSHA
86 * -Dalgorithm=SHA-512
87 * compiler.intrinsics.sha.sanity.TestSHA512MultiBlockIntrinsics
88 * @run main/othervm -DverificationStrategy=VERIFY_INTRINSIC_USAGE
89 * compiler.testlibrary.intrinsics.Verifier positive_384.log positive_512.log
90 * positive_384_def.log positive_512_def.log negative_384.log
91 * negative_512.log
92 */
93
94 package compiler.intrinsics.sha.sanity;
95
96 import compiler.testlibrary.sha.predicate.IntrinsicPredicates;
97
98 public class TestSHA512MultiBlockIntrinsics {
99 public static void main(String args[]) throws Exception {
100 new SHASanityTestBase(IntrinsicPredicates.SHA512_INTRINSICS_AVAILABLE,
101 SHASanityTestBase.MB_INTRINSIC_ID).test();
102 }
103 }
|