test/compiler/6756768/Test6756768.java

Thu, 11 Apr 2013 21:45:21 -0700

author
amurillo
date
Thu, 11 Apr 2013 21:45:21 -0700
changeset 4915
5201379fe487
parent 1907
c18cbe5936b8
child 6876
710a3c8b516e
permissions
-rw-r--r--

Added tag hs25-b28 for changeset 6d88a566d369

never@894 1 /*
trims@1907 2 * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
never@894 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
never@894 4 *
never@894 5 * This code is free software; you can redistribute it and/or modify it
never@894 6 * under the terms of the GNU General Public License version 2 only, as
never@894 7 * published by the Free Software Foundation.
never@894 8 *
never@894 9 * This code is distributed in the hope that it will be useful, but WITHOUT
never@894 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
never@894 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
never@894 12 * version 2 for more details (a copy is included in the LICENSE file that
never@894 13 * accompanied this code).
never@894 14 *
never@894 15 * You should have received a copy of the GNU General Public License version
never@894 16 * 2 along with this work; if not, write to the Free Software Foundation,
never@894 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
never@894 18 *
trims@1907 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
trims@1907 20 * or visit www.oracle.com if you need additional information or have any
trims@1907 21 * questions.
never@894 22 */
never@894 23
never@894 24 /**
never@894 25 * @test
never@894 26 * @bug 6756768
never@894 27 * @summary C1 generates invalid code
never@894 28 *
never@894 29 * @run main/othervm -Xcomp Test6756768
never@894 30 */
never@894 31
never@894 32 class Test6756768a
never@894 33 {
never@894 34 static boolean var_1 = true;
never@894 35 }
never@894 36
never@894 37 final class Test6756768b
never@894 38 {
never@894 39 static boolean var_24 = false;
never@894 40 static int var_25 = 0;
never@894 41
never@894 42 static boolean var_temp1 = Test6756768a.var_1 = false;
never@894 43 }
never@894 44
never@894 45 public final class Test6756768 extends Test6756768a
never@894 46 {
never@894 47 final static int var = var_1 ^ (Test6756768b.var_24 ? var_1 : var_1) ? Test6756768b.var_25 : 1;
never@894 48
never@894 49 static public void main(String[] args) {
never@894 50 if (var != 0) {
never@894 51 throw new InternalError("var = " + var);
never@894 52 }
never@894 53 }
never@894 54
never@894 55 }

mercurial