annotate test/compiler/6814842/Test6814842.java @ 8018:cdb46031e718 jdk8-b77

Added tag hs25-b18 for changeset 412d722168bc
author amurillo
date Fri, 08 Feb 2013 08:07:07 -0800
parents c18cbe5936b8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
785
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
1 /*
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 785
diff changeset
2 * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
785
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
4 *
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
5 * This code is free software; you can redistribute it and/or modify it
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
6 * under the terms of the GNU General Public License version 2 only, as
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
7 * published by the Free Software Foundation.
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
8 *
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
9 * This code is distributed in the hope that it will be useful, but WITHOUT
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
12 * version 2 for more details (a copy is included in the LICENSE file that
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
13 * accompanied this code).
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
14 *
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License version
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
16 * 2 along with this work; if not, write to the Free Software Foundation,
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
18 *
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 785
diff changeset
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 785
diff changeset
20 * or visit www.oracle.com if you need additional information or have any
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 785
diff changeset
21 * questions.
785
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
22 */
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
23
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
24 /**
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
25 * @test
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
26 * @bug 6814842
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
27 * @summary Load shortening optimizations
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
28 *
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
29 * @run main/othervm -Xcomp -XX:CompileOnly=Test6814842.loadS2B,Test6814842.loadS2Bmask255,Test6814842.loadUS2B,Test6814842.loadUS2Bmask255,Test6814842.loadI2B,Test6814842.loadI2Bmask255,Test6814842.loadI2S,Test6814842.loadI2Smask255,Test6814842.loadI2Smask65535,Test6814842.loadI2US,Test6814842.loadI2USmask255,Test6814842.loadI2USmask65535 Test6814842
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
30 */
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
31
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
32 public class Test6814842 {
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
33 static final short[] sa = new short[] { (short) 0xF1F2 };
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
34 static final char[] ca = new char[] { (char) 0xF3F4 };
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
35 static final int[] ia = new int[] { 0xF1F2F3F4 };
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
36
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
37 public static void main(String[] args)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
38 {
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
39 byte s2b = loadS2B(sa);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
40 if (s2b != (byte) 0xF2)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
41 throw new InternalError("loadS2B failed: " + s2b + " != " + (byte) 0xF2);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
42
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
43 byte s2bmask255 = loadS2Bmask255(sa);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
44 if (s2bmask255 != (byte) 0xF2)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
45 throw new InternalError("loadS2Bmask255 failed: " + s2bmask255 + " != " + (byte) 0xF2);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
46
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
47 byte us2b = loadUS2B(ca);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
48 if (us2b != (byte) 0xF4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
49 throw new InternalError("loadUS2B failed: " + us2b + " != " + (byte) 0xF4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
50
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
51 byte us2bmask255 = loadUS2Bmask255(ca);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
52 if (us2bmask255 != (byte) 0xF4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
53 throw new InternalError("loadUS2Bmask255 failed: " + us2bmask255 + " != " + (byte) 0xF4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
54
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
55 byte i2b = loadI2B(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
56 if (i2b != (byte) 0xF4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
57 throw new InternalError("loadI2B failed: " + i2b + " != " + (byte) 0xF4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
58
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
59 byte i2bmask255 = loadI2Bmask255(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
60 if (i2bmask255 != (byte) 0xF4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
61 throw new InternalError("loadI2Bmask255 failed: " + i2bmask255 + " != " + (byte) 0xF4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
62
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
63 short i2s = loadI2S(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
64 if (i2s != (short) 0xF3F4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
65 throw new InternalError("loadI2S failed: " + i2s + " != " + (short) 0xF3F4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
66
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
67 short i2smask255 = loadI2Smask255(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
68 if (i2smask255 != (short) 0xF4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
69 throw new InternalError("loadI2Smask255 failed: " + i2smask255 + " != " + (short) 0xF4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
70
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
71 short i2smask65535 = loadI2Smask65535(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
72 if (i2smask65535 != (short) 0xF3F4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
73 throw new InternalError("loadI2Smask65535 failed: " + i2smask65535 + " != " + (short) 0xF3F4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
74
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
75 char i2us = loadI2US(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
76 if (i2us != (char) 0xF3F4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
77 throw new InternalError("loadI2US failed: " + (int) i2us + " != " + (char) 0xF3F4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
78
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
79 char i2usmask255 = loadI2USmask255(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
80 if (i2usmask255 != (char) 0xF4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
81 throw new InternalError("loadI2USmask255 failed: " + (int) i2usmask255 + " != " + (char) 0xF4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
82
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
83 char i2usmask65535 = loadI2USmask65535(ia);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
84 if (i2usmask65535 != (char) 0xF3F4)
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
85 throw new InternalError("loadI2USmask65535 failed: " + (int) i2usmask65535 + " != " + (char) 0xF3F4);
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
86 }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
87
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
88 static byte loadS2B (short[] sa) { return (byte) (sa[0] ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
89 static byte loadS2Bmask255 (short[] sa) { return (byte) (sa[0] & 0xFF ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
90
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
91 static byte loadUS2B (char[] ca) { return (byte) (ca[0] ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
92 static byte loadUS2Bmask255 (char[] ca) { return (byte) (ca[0] & 0xFF ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
93
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
94 static byte loadI2B (int[] ia) { return (byte) (ia[0] ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
95 static byte loadI2Bmask255 (int[] ia) { return (byte) (ia[0] & 0xFF ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
96
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
97 static short loadI2S (int[] ia) { return (short) (ia[0] ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
98 static short loadI2Smask255 (int[] ia) { return (short) (ia[0] & 0xFF ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
99 static short loadI2Smask65535 (int[] ia) { return (short) (ia[0] & 0xFFFF); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
100
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
101 static char loadI2US (int[] ia) { return (char) (ia[0] ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
102 static char loadI2USmask255 (int[] ia) { return (char) (ia[0] & 0xFF ); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
103 static char loadI2USmask65535(int[] ia) { return (char) (ia[0] & 0xFFFF); }
2056494941db 6814842: Load shortening optimizations
twisti
parents:
diff changeset
104 }