Mercurial > hg > release > icedtea6-1.3
changeset 1055:f2f33bede67b
* patches/icedtea-hotspot7-tests.patch: New patch.
* Makefile.am (ICEDTEA_PATCHES): Add icedtea-hotspot7-tests.patch.
* HACKING: Document icedtea-hotspot7-tests.patch.
author | Mark Wielaard <mark@klomp.org> |
---|---|
date | Fri, 26 Sep 2008 11:37:46 +0200 |
parents | b5b66d8e6014 |
children | a5883d41d7ec |
files | ChangeLog HACKING Makefile.am patches/icedtea-hotspot7-tests.patch |
diffstat | 4 files changed, 7416 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Thu Sep 25 23:35:32 2008 +0200 +++ b/ChangeLog Fri Sep 26 11:37:46 2008 +0200 @@ -1,3 +1,9 @@ +2008-09-25 Mark Wielaard <mark@klomp.org> + + * patches/icedtea-hotspot7-tests.patch: New patch. + * Makefile.am (ICEDTEA_PATCHES): Add icedtea-hotspot7-tests.patch. + * HACKING: Document icedtea-hotspot7-tests.patch. + 2008-09-25 Mark Wielaard <mark@klomp.org> * patches/icedtea-lucene-crash.patch: New patch.
--- a/HACKING Thu Sep 25 23:35:32 2008 +0200 +++ b/HACKING Fri Sep 26 11:37:46 2008 +0200 @@ -59,6 +59,7 @@ * icedtea-alpha-fixes.patch: Fix build issues on alpha-linux. * icedtea-arch.patch: Add support for additional architectures. * icedtea-alt-jar.patch: Add support for using an alternate jar tool in JDK building. +* icedtea-hotspot7-tests.patch: Adds hotspot compiler tests from jdk7 tree. The following patches are only applied to OpenJDK6 in IcedTea6:
--- a/Makefile.am Thu Sep 25 23:35:32 2008 +0200 +++ b/Makefile.am Fri Sep 26 11:37:46 2008 +0200 @@ -448,6 +448,7 @@ ICEDTEA_PATCHES = \ $(ZERO_PATCHES_COND) \ + patches/icedtea-hotspot7-tests.patch \ patches/icedtea-copy-plugs.patch \ patches/icedtea-version.patch \ patches/icedtea-text-relocations.patch \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-hotspot7-tests.patch Fri Sep 26 11:37:46 2008 +0200 @@ -0,0 +1,7408 @@ +diff -r 4aebfff4f8a2 hotspot/test/compiler/6646019/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6646019/Test.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,52 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/* ++ * @test ++ * @bug 6646019 ++ * @summary array subscript expressions become top() with -d64 ++ * @run main/othervm -Xcomp -XX:CompileOnly=Test.test Test ++*/ ++ ++ ++public class Test { ++ final static int i = 2076285318; ++ long l = 2; ++ short s; ++ ++ public static void main(String[] args) { ++ Test t = new Test(); ++ try { t.test(); } ++ catch (Throwable e) { ++ if (t.l != 5) { ++ System.out.println("Fails: " + t.l + " != 5"); ++ } ++ } ++ } ++ ++ private void test() { ++ l = 5; ++ l = (new short[(byte)-2])[(byte)(l = i)]; ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6646020/Tester.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6646020/Tester.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,886 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6646020 ++ * @summary assert(in_bb(n),"must be in block") in -Xcomp mode ++ */ ++ ++/* Complexity upper bound: 3361 ops */ ++ ++class Tester_Class_0 { ++ static byte var_1; ++ ++ ++ public Tester_Class_0() ++ { ++ "".length(); ++ { ++ var_1 = (var_1 = (new byte[(byte)'D'])[(byte)2.40457E38F]); ++ var_1 = (var_1 = (byte)1.738443503665377E307); ++ var_1 = (var_1 = (byte)1237144669662298112L); ++ } ++ var_1 = "baldh".equalsIgnoreCase("") ? (var_1 = (byte)7.2932087E37F) : (byte)3909726578709910528L; ++ var_1 = (var_1 = (var_1 = (var_1 = (byte)7.223761846153971E307))); ++ var_1 = (var_1 = (var_1 = (var_1 = (var_1 = (byte)((short)7860452029249754112L + (byte)1.7374232546809952E308))))); ++ var_1 = (!true ? (var_1 = (byte)4359229782598970368L) : (short)(byte)1.7509836746850026E308) >= 'P' ? (var_1 = (byte)3.275114793095594E307) : (byte)(- ((byte)1.5595572E38F) / 8.2971296E37F); ++ byte var_9 = (true ? true : (false ? true : false)) ? (var_1 = (var_1 = (byte)9.928434E37F)) : (var_1 = (byte)9.785060633966518E307); ++ final byte var_10 = 53; ++ var_9 <<= (true | true) & (((var_10 == "".substring(2001075014).compareToIgnoreCase("rhbytggv") ? !true : ! !true) ? !false : false) ? !true & true : !false) ? var_10 : var_10; ++ var_9 <<= - (var_9 -= - ~6397182310329038848L >> (char)955837891 << (short)- - -8.4452034E37F >> + ~5485157895941338112L); ++ --var_9; ++ var_9 >>= 'V'; ++ var_9 -= (new char[var_10])[var_9]; ++ double var_11; ++ var_11 = (var_11 = (new int[var_9 = (var_9 %= 684423748)])[var_9]); ++ var_9 /= 'q'; ++ var_9 *= ~var_9 | (short)1.7667766368850557E308 - "w".trim().charAt(- (var_9 /= + (var_11 = 'q'))); ++ if (var_10 <= 605036859609030656L | !false & false) ++ { ++ var_9 >>>= false ^ false ? (new short[var_10])[var_10] : (short)1013619326108001280L; ++ } ++ else ++ { ++ var_11 = var_9; ++ } ++ var_9 -= 'X'; ++ var_9 *= 'E'; ++ { ++ var_9 ^= (new short[var_9])[var_9 >>>= 'c']; ++ } ++ var_11 = 4315867074042433536L; ++ double var_12 = 1.2183900219527627E308; ++ var_9 <<= (false ? !false : false) ? '\\' : 'D'; ++ } ++ ++ ++ ++ ++ private final long func_0() ++ { ++ float var_2 = 0F; ++ var_1 = (var_1 = (var_1 = (byte)((short)1.4106931056021857E308 % var_2))); ++ for (new String(); true & (! !true ^ !false | false) && var_2 < 1; var_1 = (var_1 = (var_1 = (var_1 = (byte)1183673628639185920L)))) ++ { ++ var_1 = true | false ? (var_1 = (byte)1.6263855E37F) : (byte)'O'; ++ var_2++; ++ "fui".toUpperCase(); ++ final int var_3 = (var_1 = (var_1 = (byte)'i')) + (byte)2008561384 / (byte)1.4413369179905006E308; ++ } ++ var_1 = (var_1 = false ^ false ? (byte)2.3850814E38F : (byte)4.42887E37F); ++ final float var_4 = 3.052265E38F; ++ var_1 = (var_1 = (var_1 = (var_1 = (var_1 = (byte)'o')))); ++ long var_5; ++ var_1 = (var_1 = (byte)((var_1 = (byte)1913212786) * (var_1 = (byte)var_2))); ++ var_5 = (short)3.2024069E38F * (short)(var_5 = 'Q'); ++ var_5 = (false ? true : false) ? (short)1098137179 : (byte)~695765814858203136L; ++ var_1 = (var_1 = true & false ^ true ? (byte)1662737306 : (byte)'r'); ++ { ++ (true ? "a" : "lymivj".toString()).codePointCount((short)3.032349E38F + (var_1 = (var_1 = (var_1 = (var_1 = (byte)1.3159799E37F)))), (byte)2.0898819853138264E307 & (new short[(byte)(short)var_2])[var_1 = (byte)(short)4.859332921376913E307]); ++ } ++ double var_6; ++ var_6 = 1359078277; ++ final float var_7 = 3.5952457E37F; ++ var_5 = ('u' | 9005660398910009344L) << 'j'; ++ int var_8; ++ var_5 = (!false || true & !false) && false ? (byte)1836342254 : (byte)1.4836203E38F; ++ var_1 = (var_1 = (var_1 = (var_1 = (byte)1.5824984701060493E308))); ++ var_1 = (var_1 = (var_1 = (byte)~ (var_1 = (var_1 = (var_1 = (byte)var_7))))); ++ return +9.067416E37F <= (true | true ^ false ? (var_1 = (byte)(short)1.5243446E38F) : (var_1 = (byte)1.6893049E37F)) ? (byte)~4408841475280588800L - (var_5 = (var_1 = (byte)2.1542209E38F)) : (var_8 = (short)var_4); ++ } ++ ++ protected final static double func_1(final char arg_0, final long arg_1) ++ { ++ var_1 = (short)8779631802405542912L << 'x' <= arg_0 ? (byte)+9.96859509852443E307 : (var_1 = (var_1 = (byte)(short)5.218454879223281E307)); ++ return 5.57437404144192E307; ++ } ++ ++ double func_2(byte arg_0, final boolean arg_1, Object arg_2) ++ { ++ arg_2 = arg_1 != arg_1 ? "wq" : "w"; ++ arg_2 = arg_2; ++ if (arg_1) ++ { ++ arg_2 = false & arg_1 ? "hasmp" : (arg_2 = arg_2); ++ } ++ else ++ { ++ arg_2 = "lcquv"; ++ } ++ arg_0 -= arg_1 ^ false ? (arg_0 |= (short)arg_0) : (~3462197988186869760L | 7274210797196514304L) % - - + +130998764279904256L; ++ arg_0 &= (true ? - - ~7861994999369861120L << 'l' : 'c') * 1246069704; ++ return (arg_1 ? 9.311174E37F : 1.7085558737202237E308) * 1168887722; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_0.var_1 = "; result += Tester.Printer.print(var_1); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_1 extends Tester_Class_0 { ++ static Object var_13; ++ final static boolean var_14 = false | (false ? false : true); ++ Object var_15; ++ static byte var_16; ++ final long var_17 = (long)(-9.40561658911133E307 - (short)2.2016736E38F) ^ (char)1099667310; ++ static boolean var_18; ++ static float var_19; ++ final static byte var_20 = 123; ++ static byte var_21 = var_1 = (var_1 = var_20); ++ final static float var_22 = 1.5415572E38F; ++ ++ ++ public Tester_Class_1() ++ { ++ char[][] var_39; ++ boolean var_40 = false | !var_14; ++ if (var_14) ++ { ++ final String[] var_41 = (new String[var_21][var_20])[var_21 *= var_21]; ++ var_15 = (new Tester_Class_0[var_20])[var_20]; ++ --var_21; ++ int var_42; ++ } ++ else ++ { ++ var_19 = (short)325110146; ++ } ++ var_40 &= true; ++ var_13 = (((new Tester_Class_1[var_21 |= (new char[var_20])[var_21]])[var_21]).var_15 = (new String[var_21][var_20][var_20])[var_21 >>= (byte)(int)var_22]); ++ var_15 = "m"; ++ } ++ ++ ++ ++ ++ ++ protected final static Tester_Class_0 func_0(final char arg_0, boolean arg_1) ++ { ++ final short var_23 = false ? (short)2.2956268E38F : var_20; ++ { ++ ((new Tester_Class_1[var_21])[var_20]).var_15 = ((new Tester_Class_0[var_20][var_21])[var_21])[var_20]; ++ } ++ var_19 = var_23; ++ { ++ var_21++; ++ --var_21; ++ var_13 = (false ? arg_1 : arg_1) ? "" : "aianteahl"; ++ arg_1 ^= ! (var_14 ? var_14 : !var_14); ++ } ++ (arg_1 ? "rq" : "certd").trim(); ++ arg_1 ^= 's' < var_22; ++ var_19 = 'T'; ++ var_19 = var_14 ? --var_21 : var_20; ++ var_19 = (var_21 >>>= ~ -1559436447128426496L >> 88912720393932800L) | (new char[var_20][var_21])[var_21][var_20]; ++ short var_24 = 7601; ++ if (arg_1) ++ { ++ var_13 = (new Tester_Class_0[var_20])[var_21]; ++ } ++ else ++ { ++ var_19 = var_23; ++ } ++ var_19 = var_24; ++ var_19 = 174274929356416000L; ++ return arg_1 ? (Tester_Class_0)(new Object[var_20])[var_21 >>>= - ((byte)6471979169965446144L)] : (new Tester_Class_0[var_21])[var_20]; ++ } ++ ++ private static int func_1(final Object arg_0, final boolean arg_1) ++ { ++ var_19 = 'N'; ++ var_13 = "ftspm".toUpperCase(); ++ var_18 = arg_1 ? !arg_1 : var_14; ++ var_19 = var_21 % 'j'; ++ { ++ var_13 = new short[var_21 >>= 8019540572802872320L]; ++ } ++ final Tester_Class_0 var_25 = arg_1 ? ((short)1.3614569631193786E308 >= (short)var_20 ? func_0('O', true) : (Tester_Class_0)arg_0) : func_0('e', false); ++ "cltpxrg".offsetByCodePoints((new short[var_20])[(byte)'F'] & var_20, 942627356); ++ final Object var_26 = ((new Tester_Class_1[var_21])[var_20]).var_15 = arg_0; ++ { ++ var_21 |= 'H'; ++ } ++ var_19 = 4705089801895780352L; ++ var_19 = (var_18 = arg_1 & false) ? var_20 : (! (~var_21 > var_22) ? (new short[var_20])[var_21] : (short)3904907750551380992L); ++ var_18 = false; ++ { ++ var_18 = "aoy".startsWith("ia", 18060804); ++ if (true) ++ { ++ final short var_27 = 4832; ++ } ++ else ++ { ++ var_18 = (var_18 = arg_1) ? !false : !var_14; ++ } ++ var_18 = (var_18 = var_14); ++ var_19 = 'L'; ++ } ++ func_0((false ? ! ((var_21 -= 4.670301365216022E307) > 1.1839209E37F) : (var_18 = false)) ? 's' : 'R', 'Z' > - ((long)var_21) << 2585724390819764224L & var_25.func_2(var_21, false, var_13 = var_25) != 4918861136400833536L); ++ double var_28 = 0; ++ var_21 %= -var_28; ++ for (byte var_29 = 91; arg_1 && (var_28 < 1 && false); var_19 = var_20) ++ { ++ var_19 = (var_18 = arg_1) & (var_18 = false) ? 'm' : '['; ++ var_28++; ++ var_18 = var_14; ++ var_21 += (short)1363703973; ++ } ++ var_19 = (var_19 = var_22); ++ var_18 = (var_18 = false | false ? 1743087391 <= (var_21 >>= 8790741242417599488L) : !arg_1); ++ var_18 = true | true; ++ --var_21; ++ var_18 = !var_14 & false; ++ "mt".indexOf(var_14 ? new String("fpu") : "awivb", (var_14 ? !true : (var_18 = var_14)) ? + ++var_21 : ~var_20); ++ return (short)(new float[var_21--])[var_21] & ((var_18 = false) ? (var_21 *= 'N') : var_20 + (short)1680927063794178048L) & 1839004800; ++ } ++ ++ protected static int func_2(Tester_Class_0[][] arg_0) ++ { ++ ((new Tester_Class_1[var_20][var_21])[var_20][var_20]).var_15 = ((new int[var_21][var_21][(byte)var_22])[var_21 <<= var_20])[var_20]; ++ ((new Tester_Class_1[var_20])[var_20]).var_15 = "d"; ++ int var_30 = 0; ++ "joxjgpywp".lastIndexOf(1834367264 >> var_21, (byte)7.572305E37F >>> (false ? (short)2.3909862E38F : + - +3939434849912855552L)); ++ while (var_14 | false ^ var_14 && (var_30 < 1 && true)) ++ { ++ var_1 = var_20; ++ var_30++; ++ var_13 = new float[var_21][--var_21]; ++ boolean var_31; ++ } ++ var_19 = ((new Tester_Class_1[var_21])[var_20]).var_17 <= (~2158227803735181312L & 6001748808824762368L) ? (short)var_20 : var_20; ++ var_18 = (var_18 = true); ++ return (byte)(new short[var_20])[var_20] >>> ((new char[var_21][var_21])[var_21 |= 6074708801143703552L])[var_20]; ++ } ++ ++ private final String func_3(boolean arg_0, short arg_1, short arg_2) ++ { ++ var_13 = (Tester_Class_0)((arg_0 ^= arg_0) ? (var_13 = (var_15 = (var_15 = "grfphyrs"))) : (var_13 = new Object[var_21 *= ']'])); ++ if (true & ! (arg_0 ^= !arg_0 | true)) ++ { ++ boolean var_32 = true; ++ var_19 = --arg_1; ++ arg_2 <<= var_21; ++ } ++ else ++ { ++ arg_0 |= false; ++ } ++ var_21 >>>= arg_1; ++ final float var_33 = 2.5500976E38F; ++ return ""; ++ } ++ ++ private static String func_4(final double arg_0, final Object arg_1, final short[] arg_2, final char arg_3) ++ { ++ float var_34; ++ var_21++; ++ ((new Tester_Class_1[var_20])[var_20]).var_15 = false ? arg_1 : arg_1; ++ var_13 = arg_1; ++ var_19 = var_22; ++ var_13 = new long[var_21 /= 1038797776 + var_21][--var_21]; ++ ++var_21; ++ var_18 = false && false; ++ var_21--; ++ "".lastIndexOf("kjro"); ++ final int var_35 = (var_21 <<= var_21--) * var_21--; ++ if ("kohilkx".startsWith("gy", var_35)) ++ { ++ var_34 = 2.0849673E37F; ++ } ++ else ++ { ++ double var_36 = arg_0; ++ } ++ var_34 = (var_21 /= var_20); ++ { ++ func_2(new Tester_Class_0[var_20][var_21]); ++ var_34 = var_20 * (- ~5805881602002385920L / arg_3) << (short)~8041668398152312832L; ++ var_13 = (var_13 = "qfwbfdf"); ++ } ++ ((new Tester_Class_1[var_20])[var_21 += var_20]).var_15 = false ? func_0(arg_3, var_14) : func_0('J', var_18 = var_14); ++ var_18 = (var_18 = var_14) & var_14; ++ if ((new boolean[var_21])[var_21 >>= 121380821]) ++ { ++ var_34 = 1382979413; ++ } ++ else ++ { ++ var_34 = (var_20 & var_20) + (true ? 'I' : arg_3); ++ } ++ byte var_37; ++ ((new Tester_Class_1[var_20][var_21])[var_14 ^ var_14 | !var_14 ? var_20 : var_20][var_21 ^= (short)1692053070 & + ~7232298887878750208L - 1512699919]).var_15 = arg_2; ++ byte var_38 = 1; ++ var_38 -= arg_0; ++ var_34 = arg_3; ++ return var_14 ? "" : "xgkr".toUpperCase(); ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_1.var_1 = "; result += Tester.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_1.var_16 = "; result += Tester.Printer.print(var_16); ++ result += "\n"; ++ result += "Tester_Class_1.var_20 = "; result += Tester.Printer.print(var_20); ++ result += "\n"; ++ result += "Tester_Class_1.var_21 = "; result += Tester.Printer.print(var_21); ++ result += "\n"; ++ result += "Tester_Class_1.var_14 = "; result += Tester.Printer.print(var_14); ++ result += "\n"; ++ result += "Tester_Class_1.var_18 = "; result += Tester.Printer.print(var_18); ++ result += "\n"; ++ result += "Tester_Class_1.var_17 = "; result += Tester.Printer.print(var_17); ++ result += "\n"; ++ result += "Tester_Class_1.var_19 = "; result += Tester.Printer.print(var_19); ++ result += "\n"; ++ result += "Tester_Class_1.var_22 = "; result += Tester.Printer.print(var_22); ++ result += "\n"; ++ result += "Tester_Class_1.var_13 = "; result += Tester.Printer.print(var_13); ++ result += "\n"; ++ result += "Tester_Class_1.var_15 = "; result += Tester.Printer.print(var_15); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_2 extends Tester_Class_0 { ++ final int var_43 = 1600723343; ++ static long var_44 = ~1297640037857117184L; ++ static String var_45 = "ejaglds"; ++ double var_46; ++ static float var_47 = 7.9423827E37F; ++ static Tester_Class_1[][] var_48; ++ ++ ++ public Tester_Class_2() ++ { ++ var_45 = (var_45 = "nkulkweqt"); ++ var_47 %= (new char[Tester_Class_1.var_21 >>= (short)Tester_Class_1.var_20])[Tester_Class_1.var_20]; ++ { ++ Tester_Class_1.var_18 = Tester_Class_1.var_14; ++ } ++ var_47 %= 1.559461406041646E308; ++ var_44 -= Tester_Class_1.var_21++ & ((new Tester_Class_1[Tester_Class_1.var_20])[Tester_Class_1.var_20]).var_17; ++ var_44 *= false ? (short)Tester_Class_1.var_20 : (short)var_47; ++ Tester_Class_1.var_13 = (new Tester_Class_1().var_15 = new char[Tester_Class_1.var_20]); ++ var_46 = 'i'; ++ double var_49 = var_46 = false ? (var_47 *= (var_46 = var_43)) : Tester_Class_1.var_20; ++ var_49 += 'k'; ++ } ++ ++ ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_2.var_43 = "; result += Tester.Printer.print(var_43); ++ result += "\n"; ++ result += "Tester_Class_2.var_48 = "; result += Tester.Printer.print(var_48); ++ result += "\n"; ++ result += "Tester_Class_2.var_44 = "; result += Tester.Printer.print(var_44); ++ result += "\n"; ++ result += "Tester_Class_2.var_46 = "; result += Tester.Printer.print(var_46); ++ result += "\n"; ++ result += "Tester_Class_2.var_47 = "; result += Tester.Printer.print(var_47); ++ result += "\n"; ++ result += "Tester_Class_2.var_1 = "; result += Tester.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_2.var_45 = "; result += Tester.Printer.print(var_45); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_3 extends Tester_Class_0 { ++ byte var_50; ++ int var_51; ++ static double var_52; ++ static boolean var_53 = true; ++ long var_54; ++ static short var_55; ++ short var_56; ++ ++ ++ public Tester_Class_3() ++ { ++ var_53 |= false; ++ (Tester_Class_2.var_45 = "gpbcgq").replaceAll("m".concat(Tester_Class_2.var_45 = "q"), Tester_Class_2.var_45).indexOf(Tester_Class_2.var_45 = "d"); ++ Tester_Class_2.var_45 = Tester_Class_2.var_45; ++ double var_68 = 0; ++ Tester_Class_1.var_19 = (var_55 = Tester_Class_1.var_20); ++ do ++ { ++ var_53 ^= 'T' > Tester_Class_1.var_21-- & (var_53 |= Tester_Class_1.var_14); ++ Tester_Class_2.var_44 >>= (char)3.928497616986412E307; ++ var_68++; ++ new Tester_Class_2().func_2(Tester_Class_1.var_20, !var_53 & Tester_Class_1.var_14, Tester_Class_1.var_13 = (Tester_Class_2.var_45 = Tester_Class_2.var_45)); ++ } while ((((var_56 = (short)1161292485) != 'M' ? var_53 : Tester_Class_1.var_14) ? Tester_Class_1.var_14 ^ true : var_53) && var_68 < 1); ++ Tester_Class_2.var_45 = Tester_Class_2.var_45; ++ ((Tester_Class_1)(Tester_Class_1.var_13 = new Tester_Class_2())).var_15 = Tester_Class_2.var_45; ++ var_55 = func_1() | ((Tester_Class_1.var_18 = var_53) | (var_53 |= Tester_Class_1.var_14) | Tester_Class_1.var_14 | !Tester_Class_1.var_14) || false ? (short)Tester_Class_2.var_44 : (var_56 = (var_56 = (short)'[')); ++ var_52 = (var_51 = (var_55 = Tester_Class_1.var_20)); ++ double var_69 = 0; ++ Tester_Class_2.var_44 |= (Tester_Class_1.var_14 ? (Tester_Class_2)(Tester_Class_1.var_13 = (Tester_Class_2)(Tester_Class_1.var_13 = Tester_Class_2.var_45)) : (Tester_Class_2)(Tester_Class_0)(Tester_Class_1.var_13 = Tester_Class_2.var_45)).var_43; ++ do ++ { ++ var_51 = 495861255; ++ var_69++; ++ } while (var_69 < 3); ++ Tester_Class_2.var_47 -= Tester_Class_1.var_20; ++ Tester_Class_2.var_47 %= '['; ++ } ++ ++ ++ ++ ++ static Object func_0(final Tester_Class_0 arg_0, String arg_1, final float arg_2, final long arg_3) ++ { ++ (!var_53 | (var_53 &= var_53) ^ false ? new Tester_Class_1() : (Tester_Class_1)(new Tester_Class_0[Tester_Class_1.var_21])[Tester_Class_1.var_21]).var_15 = Tester_Class_1.var_14 ? new Tester_Class_1() : new Tester_Class_1(); ++ Tester_Class_2.var_47 /= !var_53 || var_53 ? (short)(((Tester_Class_2)arg_0).var_46 = (new char[Tester_Class_1.var_21][Tester_Class_1.var_21])[Tester_Class_1.var_20][Tester_Class_1.var_20]) : Tester_Class_1.var_21; ++ return (new Object[Tester_Class_1.var_21])[Tester_Class_1.var_21]; ++ } ++ ++ boolean func_1() ++ { ++ { ++ Tester_Class_1.var_21 >>= (var_56 = (Tester_Class_1.var_21 |= (Tester_Class_1.var_21 -= Tester_Class_1.var_20))); ++ Tester_Class_2.var_45 = "w"; ++ var_51 = Tester_Class_1.var_21; ++ Object var_57; ++ ((Tester_Class_2)(Tester_Class_0)((new Object[Tester_Class_1.var_21][Tester_Class_1.var_21])[Tester_Class_1.var_20])[Tester_Class_1.var_20]).var_46 = (var_52 = 1.3957085765622284E308); ++ } ++ Tester_Class_1.var_21 &= (var_55 = (byte)(Tester_Class_1.var_14 ? -Tester_Class_1.var_20 : 4290961666344782848L)); ++ Tester_Class_2.var_45 = Tester_Class_2.var_45; ++ var_51 = (var_53 ^= ((var_53 &= Tester_Class_1.var_14) ? 'J' : 'M') > (var_56 = Tester_Class_1.var_21)) && (var_53 = Tester_Class_1.var_14) ? (Tester_Class_1.var_21 &= ~Tester_Class_1.var_20) : Tester_Class_1.var_20; ++ { ++ final Tester_Class_1 var_58 = (Tester_Class_1)(Tester_Class_0)(Tester_Class_1.var_13 = (new Object[Tester_Class_1.var_21])[Tester_Class_1.var_20]); ++ Object var_59; ++ Tester_Class_1.var_21 |= 'X'; ++ var_53 ^= Tester_Class_1.var_14; ++ } ++ int var_60 = 0; ++ var_53 |= var_53; ++ for (char var_61 = 'i'; (Tester_Class_1.var_14 ? false : Tester_Class_1.var_14) | (true | Tester_Class_1.var_14) && var_60 < 1; var_53 &= !Tester_Class_1.var_14) ++ { ++ var_51 = var_61; ++ var_60++; ++ var_61 &= (new short[Tester_Class_1.var_20][Tester_Class_1.var_20])[Tester_Class_1.var_20][Tester_Class_1.var_21]; ++ Tester_Class_2.var_45 = "vsuy"; ++ } ++ Tester_Class_2 var_62 = ((var_53 &= Tester_Class_1.var_14 | Tester_Class_1.var_14 || Tester_Class_1.var_14) ? Tester_Class_1.var_14 : "hgwne".startsWith("etyhd", var_60)) ? (var_53 ? (Tester_Class_2)(Tester_Class_1.var_13 = "uyiaxtqc") : (Tester_Class_2)(Tester_Class_1.var_13 = Tester_Class_2.var_45)) : new Tester_Class_2(); ++ var_62 = var_62; ++ float var_63; ++ Object var_64; ++ Tester_Class_2.var_44 <<= 'v'; ++ String var_65; ++ { ++ var_51 = Tester_Class_1.var_21; ++ } ++ var_55 = true ? (var_56 = Tester_Class_1.var_20) : (var_55 = Tester_Class_1.var_20); ++ var_56 = Tester_Class_1.var_21; ++ Tester_Class_1.var_21 |= var_60; ++ Object var_66; ++ Tester_Class_2 var_67; ++ return true & Tester_Class_1.var_14 ^ (false ? var_53 : var_53); ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_3.var_51 = "; result += Tester.Printer.print(var_51); ++ result += "\n"; ++ result += "Tester_Class_3.var_54 = "; result += Tester.Printer.print(var_54); ++ result += "\n"; ++ result += "Tester_Class_3.var_52 = "; result += Tester.Printer.print(var_52); ++ result += "\n"; ++ result += "Tester_Class_3.var_55 = "; result += Tester.Printer.print(var_55); ++ result += "\n"; ++ result += "Tester_Class_3.var_56 = "; result += Tester.Printer.print(var_56); ++ result += "\n"; ++ result += "Tester_Class_3.var_1 = "; result += Tester.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_3.var_50 = "; result += Tester.Printer.print(var_50); ++ result += "\n"; ++ result += "Tester_Class_3.var_53 = "; result += Tester.Printer.print(var_53); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++public class Tester { ++ final long var_70 = Tester_Class_2.var_44; ++ int var_71; ++ static double var_72; ++ static short var_73 = (Tester_Class_3.var_53 &= (Tester_Class_3.var_53 ^= Tester_Class_3.var_53)) ? (short)(byte)(Tester_Class_3.var_55 = Tester_Class_1.var_20) : (Tester_Class_3.var_55 = Tester_Class_1.var_20); ++ final static short var_74 = (Tester_Class_3.var_53 &= Tester_Class_3.var_53) ? (Tester_Class_3.var_53 ? var_73 : var_73++) : (var_73 *= (Tester_Class_1.var_21 |= var_73)); ++ float var_75; ++ ++ ++ protected final Tester_Class_2 func_0() ++ { ++ Tester_Class_1.var_21 ^= ~Tester_Class_1.var_21; ++ if (false) ++ { ++ ((Tester_Class_3)(new Object[Tester_Class_1.var_21])[Tester_Class_1.var_21 -= + + (Tester_Class_2.var_44 >>>= Tester_Class_1.var_21)]).var_50 = (Tester_Class_1.var_21 &= (var_71 = 554295231)); ++ } ++ else ++ { ++ Tester_Class_2.var_47 += 'H'; ++ } ++ final Tester_Class_0 var_76 = ((new Tester_Class_0[Tester_Class_1.var_20][Tester_Class_1.var_21])[Tester_Class_1.var_20])[Tester_Class_1.var_20]; ++ (Tester_Class_1.var_14 ? (Tester_Class_2)var_76 : (Tester_Class_2)var_76).var_46 = (var_73 %= var_74 / (((new Tester_Class_2[Tester_Class_1.var_20])[Tester_Class_1.var_21 |= Tester_Class_1.var_20]).var_46 = Tester_Class_1.var_22)); ++ var_73 |= ((Tester_Class_2)(Tester_Class_1.var_13 = var_76)).var_43 | Tester_Class_1.var_20; ++ return new Tester_Class_2(); ++ } ++ ++ private static Tester_Class_3 func_1(byte arg_0, Tester_Class_1 arg_1, Tester_Class_1 arg_2, final int arg_3) ++ { ++ arg_0 <<= '`'; ++ return false ? (Tester_Class_3)(Tester_Class_0)(arg_1.var_15 = (arg_1 = arg_2)) : (Tester_Class_3)((new Tester_Class_0[Tester_Class_1.var_20][arg_0])[Tester_Class_1.var_20])[Tester_Class_1.var_20]; ++ } ++ ++ public static String execute() ++ { ++ try { ++ Tester t = new Tester(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ try { return t.toString(); } ++ catch (Throwable e) { return "Error during result conversion to String"; } ++ } catch (Throwable e) { return "Error during test execution"; } ++ } ++ ++ public static void main(String[] args) ++ { ++ for (int i = 0; i < 20000; i++) { ++ Tester t = new Tester(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ if (t.var_71 != 0 || ++ t.var_70 != -1297640037857117185L || ++ t.var_72 != 0.0 || ++ t.var_75 != 0.0 || ++ t.var_73 != -1 || ++ t.var_74 != 15129) { ++ throw new InternalError("wrong answer"); ++ } ++ } ++ } ++ ++ private void test() ++ { ++ long var_77 = 0L; ++ var_73 /= (Tester_Class_2.var_47 = 'D' | 'Q'); ++ Tester_Class_2.var_47 *= 't'; ++ while (var_77 < 36) ++ { ++ var_73 += Tester_Class_1.var_22; ++ Tester_Class_2.var_47 += Tester_Class_1.var_20; ++ var_77++; ++ Tester_Class_2.var_45 = ""; ++ Tester_Class_2.var_45 = (Tester_Class_2.var_45 = Tester_Class_2.var_45); ++ } ++ if (Tester_Class_3.var_53 |= false) ++ { ++ int var_78 = 0; ++ (false ? "idipdjrln" : "l").startsWith(Tester_Class_2.var_45); ++ while ((Tester_Class_3.var_53 |= (Tester_Class_3.var_53 &= ! (Tester_Class_1.var_18 = true)) | Tester_Class_3.var_53) && (var_78 < 15 && (Tester_Class_3.var_53 &= Tester_Class_1.var_14))) ++ { ++ Tester_Class_2.var_44 <<= 'b'; ++ var_78++; ++ var_72 = var_74; ++ var_71 = (char)6792782617594333184L; ++ } ++ float var_79 = Tester_Class_2.var_47 /= 1.5148047552641134E308; ++ ((new boolean[Tester_Class_1.var_20])[Tester_Class_1.var_21 <= (Tester_Class_1.var_21 -= 9.675021723726166E307) / - + (var_72 = 4.3844763012510596E307) ? (byte)(Tester_Class_2.var_44 += ~Tester_Class_1.var_21) : (Tester_Class_1.var_21 += 1.7430965313164616E308)] ? (Tester_Class_2)(new Tester_Class_1().var_15 = func_0()) : new Tester_Class_2()).var_46 = (var_72 = (Tester_Class_1.var_21 *= 'j')); ++ Tester_Class_1.var_13 = (new Tester_Class_3[Tester_Class_1.var_21 >>>= var_78][Tester_Class_1.var_21])[Tester_Class_1.var_21][Tester_Class_1.var_20]; ++ } ++ else ++ { ++ long var_80 = 0L; ++ ((Tester_Class_2)(Tester_Class_1.var_13 = new long[Tester_Class_1.var_21])).var_46 = 'r'; ++ do ++ { ++ final float var_81 = 7.3633934E37F; ++ var_80++; ++ var_73 ^= Tester_Class_2.var_44; ++ } while (Tester_Class_3.var_53 && var_80 < 4); ++ Tester_Class_1.var_18 = Tester_Class_2.var_47 >= var_73; ++ Tester_Class_2.var_45 = "xvodcylp"; ++ Tester_Class_2.var_45.codePointCount("indreb".charAt(+(new byte[Tester_Class_1.var_20][Tester_Class_1.var_20])[Tester_Class_1.var_21][Tester_Class_1.var_21]) * ~ (Tester_Class_1.var_21 %= (var_71 = --var_73)), ((Tester_Class_3.var_53 ^= Tester_Class_2.var_45.equalsIgnoreCase("rkxwa")) || Tester_Class_2.var_47 <= (Tester_Class_2.var_47 %= -var_80) ? (Tester_Class_1.var_21 ^= var_70) : var_73) & (var_71 = 'k')); ++ Tester_Class_1.var_13 = ((new long[Tester_Class_1.var_21][Tester_Class_1.var_20][Tester_Class_1.var_21])[Tester_Class_1.var_21])[Tester_Class_1.var_21]; ++ } ++ var_73 <<= (Tester_Class_1.var_18 = false) ? 't' : (false ? 'E' : 'u'); ++ var_73++; ++ int var_82 = 0; ++ Tester_Class_1.var_13 = func_1(Tester_Class_1.var_20, new Tester_Class_1(), (new Tester_Class_1[Tester_Class_1.var_21])[Tester_Class_1.var_21], 'M' & var_74); ++ "gdrlrsubb".substring(12438522, var_82); ++ Tester_Class_2.var_44 |= (((new Tester_Class_3[Tester_Class_1.var_21][Tester_Class_1.var_21])[Tester_Class_1.var_21 >>= 7993744087962264576L][Tester_Class_1.var_21]).var_51 = Tester_Class_3.var_53 ? 'B' : '['); ++ final long var_83 = ~ (4544638910183665664L << (((Tester_Class_3)((new Tester_Class_0[Tester_Class_1.var_20][Tester_Class_1.var_21])[Tester_Class_1.var_21])[Tester_Class_1.var_21]).var_56 = (Tester_Class_3.var_53 &= Tester_Class_3.var_53) ? Tester_Class_1.var_21 : Tester_Class_1.var_20)); ++ Tester_Class_2.var_45 = Tester_Class_2.var_45; ++ while (var_82 < 2 && Tester_Class_3.var_53 & (Tester_Class_3.var_53 ^= !false)) ++ { ++ (Tester_Class_3.var_53 ? "xqeisnyf" : (Tester_Class_2.var_45 = (Tester_Class_2.var_45 = (Tester_Class_2.var_45 = Tester_Class_2.var_45)))).concat(Tester_Class_2.var_45 = "i"); ++ var_82++; ++ boolean var_84 = false; ++ Tester_Class_2.var_45 = Tester_Class_2.var_45; ++ } ++ var_71 = ~Tester_Class_2.var_44 != Tester_Class_2.var_44-- ? (var_73 = var_73) : (var_73 >>>= var_73); ++ char var_85; ++ Tester_Class_3.var_53 |= (Tester_Class_3.var_53 ^= true); ++ int var_86 = 0; ++ Tester_Class_1.var_21 %= (var_73 | (Tester_Class_1.var_21 *= 9.831691E37F)) * (Tester_Class_1.var_21 += 6784278051481715712L); ++ while (Tester_Class_3.var_53 && (var_86 < 24 && ((((Tester_Class_3.var_53 ^= true) ? Tester_Class_3.var_53 : Tester_Class_1.var_14) ? !Tester_Class_3.var_53 : Tester_Class_3.var_53) ? (Tester_Class_1.var_18 = Tester_Class_3.var_53) : Tester_Class_1.var_14 || true))) ++ { ++ final byte var_87 = (byte)((false & true ? Tester_Class_1.var_20 : 257407175) & 4242055901066916864L * (var_73 *= 1621204618) / ((((Tester_Class_1)(new Object[(byte)4.925362697409246E307])[Tester_Class_1.var_21]).var_17 ^ (var_71 = var_86)) & 1859382584)); ++ var_86++; ++ Tester_Class_2.var_45 = (Tester_Class_2.var_45 = (Tester_Class_2.var_45 = "arceo")); ++ float var_88; ++ } ++ "a".lastIndexOf(var_71 = Tester_Class_3.var_53 ^ false ? (var_71 = 1058420888) : Tester_Class_1.var_20); ++ int var_89 = 0; ++ { ++ var_71 = 661164411; ++ } ++ boolean var_90; ++ --var_73; ++ Tester_Class_2.var_45.concat(Tester_Class_2.var_45); ++ { ++ var_85 = (Tester_Class_3.var_53 ? Tester_Class_3.var_53 : Tester_Class_3.var_53) ? 'R' : '['; ++ } ++ ((new Tester_Class_2[Tester_Class_1.var_21][Tester_Class_1.var_21])[Tester_Class_1.var_20][Tester_Class_1.var_20]).var_46 = Tester_Class_1.var_20; ++ final float var_91 = ((new Tester_Class_0[Tester_Class_1.var_21][Tester_Class_1.var_21])[Tester_Class_1.var_20][Tester_Class_1.var_21 -= Tester_Class_1.var_21]).equals(((new Tester_Class_1[Tester_Class_1.var_20])[Tester_Class_1.var_21]).var_15 = (Tester_Class_2.var_45 = Tester_Class_2.var_45)) ? (var_71 = Tester_Class_1.var_20) : 2.2259766E38F + Tester_Class_2.var_44; ++ Tester_Class_2.var_47 *= ((Tester_Class_2)(Tester_Class_0)(Tester_Class_1.var_13 = Tester_Class_2.var_45)).var_43; ++ Tester_Class_2.var_45 = Tester_Class_2.var_45; ++ Tester_Class_3.var_53 &= Tester_Class_1.var_14; ++ while (Tester_Class_1.var_20 >= ++Tester_Class_1.var_21 && var_89 < 2) ++ { ++ Tester_Class_1.var_13 = (Tester_Class_3)(new Tester_Class_0[Tester_Class_1.var_21])[Tester_Class_1.var_21]; ++ var_89++; ++ if (true) ++ { ++ Tester_Class_3.var_53 |= true; ++ break; ++ } ++ else ++ { ++ Tester_Class_2 var_92; ++ } ++ ((Tester_Class_3)((Tester_Class_3.var_53 |= Tester_Class_3.var_53) ? (new Tester_Class_1().var_15 = (Tester_Class_0)(Tester_Class_1.var_13 = new boolean[Tester_Class_1.var_20][Tester_Class_1.var_21])) : new Tester_Class_0[Tester_Class_1.var_21][Tester_Class_1.var_21])).var_54 = (Tester_Class_1.var_21 = (Tester_Class_1.var_21 /= (Tester_Class_2.var_44 |= (int)(Tester_Class_1.var_21 >>>= var_82)))); ++ ((Tester_Class_3)(Tester_Class_1.var_13 = (new Tester_Class_1().var_15 = new Tester_Class_1()))).var_51 = Tester_Class_1.var_20; ++ final char var_93 = 'u'; ++ ((Tester_Class_2)(new Tester_Class_1().var_15 = (Tester_Class_2.var_45 = Tester_Class_2.var_45))).var_46 = var_93; ++ Tester_Class_2.var_45.toUpperCase(); ++ Tester_Class_2.var_45 = "mhk"; ++ (true | false ? new Tester_Class_1() : (new Tester_Class_1[Tester_Class_1.var_20])[Tester_Class_1.var_20]).var_15 = (Tester_Class_1)(((new Tester_Class_1[Tester_Class_1.var_21 |= Tester_Class_1.var_20][Tester_Class_1.var_21])[Tester_Class_1.var_21][Tester_Class_1.var_21]).var_15 = (Tester_Class_1.var_13 = (Tester_Class_1)(Tester_Class_1.var_13 = (Tester_Class_2.var_45 = "ofkbg")))); ++ } ++ float var_94 = 0F; ++ Tester_Class_2.var_44 |= (var_73 >>>= (var_85 = (var_85 = 'j'))); ++ Tester_Class_3.var_52 = 1835242863964218368L; ++ do ++ { ++ int var_95 = 1361237611; ++ var_94++; ++ Tester_Class_3.var_53 ^= (Tester_Class_3.var_53 |= Tester_Class_1.var_14); ++ } while (var_94 < 16); ++ { ++ var_73 = var_73--; ++ Tester_Class_2.var_45 = (Tester_Class_1.var_14 ? Tester_Class_1.var_14 : !false) ? "oaxg" : "igdnja"; ++ } ++ ((new Tester_Class_1[Tester_Class_1.var_21])[Tester_Class_1.var_21]).equals(new Tester_Class_1().var_15 = (Tester_Class_2.var_45 = "agdnue").charAt(1416972150) != Tester_Class_2.var_47 ? new Tester_Class_1() : new Tester_Class_1()); ++ byte var_96 = Tester_Class_1.var_21 >>>= (var_85 = (var_85 = '`')); ++ Tester_Class_2.var_45 = ""; ++ Tester_Class_2.var_47 += Tester_Class_2.var_47; ++ Tester_Class_2.var_45 = Tester_Class_2.var_45; ++ } ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester.var_71 = "; result += Printer.print(var_71); ++ result += "\n"; ++ result += "Tester.var_70 = "; result += Printer.print(var_70); ++ result += "\n"; ++ result += "Tester.var_72 = "; result += Printer.print(var_72); ++ result += "\n"; ++ result += "Tester.var_75 = "; result += Printer.print(var_75); ++ result += "\n"; ++ result += "Tester.var_73 = "; result += Printer.print(var_73); ++ result += "\n"; ++ result += "Tester.var_74 = "; result += Printer.print(var_74); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++ static class Printer ++ { ++ public static String print(boolean arg) { return String.valueOf(arg); } ++ public static String print(byte arg) { return String.valueOf(arg); } ++ public static String print(short arg) { return String.valueOf(arg); } ++ public static String print(char arg) { return String.valueOf((int)arg); } ++ public static String print(int arg) { return String.valueOf(arg); } ++ public static String print(long arg) { return String.valueOf(arg); } ++ public static String print(float arg) { return String.valueOf(arg); } ++ public static String print(double arg) { return String.valueOf(arg); } ++ ++ ++ public static String print(Object arg) ++ { ++ return print_r(new java.util.Stack(), arg); ++ } ++ ++ private static String print_r(java.util.Stack visitedObjects, Object arg) ++ { ++ String result = ""; ++ if (arg == null) ++ result += "null"; ++ else ++ if (arg.getClass().isArray()) ++ { ++ for (int i = 0; i < visitedObjects.size(); i++) ++ if (visitedObjects.elementAt(i) == arg) return "<recursive>"; ++ ++ visitedObjects.push(arg); ++ ++ final String delimiter = ", "; ++ result += "["; ++ ++ if (arg instanceof Object[]) ++ { ++ Object[] array = (Object[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print_r(visitedObjects, array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof boolean[]) ++ { ++ boolean[] array = (boolean[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof byte[]) ++ { ++ byte[] array = (byte[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof short[]) ++ { ++ short[] array = (short[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof char[]) ++ { ++ char[] array = (char[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof int[]) ++ { ++ int[] array = (int[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof long[]) ++ { ++ long[] array = (long[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof float[]) ++ { ++ float[] array = (float[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof double[]) ++ { ++ double[] array = (double[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ ++ result += "]"; ++ visitedObjects.pop(); ++ ++ } else ++ { ++ result += arg.toString(); ++ } ++ ++ return result; ++ } ++ } ++} ++ ++ +diff -r 4aebfff4f8a2 hotspot/test/compiler/6659207/Test.java.orig +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6659207/Test.java.orig Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,61 @@ ++/* ++ * Copyright 1997-2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/* ++ * @test ++ * @bug 6659207 ++ * @summary access violation in CompilerThread0 ++ */ ++ ++public class Test { ++ static int[] array = new int[12]; ++ ++ static int index(int i) { ++ if (i == 0) return 0; ++ for (int n = 0; n < array.length; n++) ++ if (i < array[n]) return n; ++ return -1; ++ } ++ ++ static int test(int i) { ++ int result = 0; ++ i = index(i); ++ if (i >= 0) ++ if (array[i] != 0) ++ result++; ++ ++ if (i != -1) ++ array[i]++; ++ ++ return result; ++ } ++ ++ public static void main(String[] args) { ++ int total = 0; ++ for (int i = 0; i < 100000; i++) { ++ total += test(10); ++ } ++ System.out.println(total); ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6661247/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6661247/Test.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,156 @@ ++/* ++ * Copyright 1997-2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/* ++ * @test ++ * @bug 6661247 ++ * @summary Internal bug in 32-bit HotSpot optimizer while bit manipulations ++ */ ++ ++import java.util.Random; ++import java.nio.*; ++ ++// This isn't a completely reliable test for 6661247 since the results ++// depend on what the local schedule looks like but it does reproduce ++// the issue in current builds. ++ ++public class Test { ++ ++ public static void test(boolean[] src, int srcPos, LongBuffer dest, long destPos, int count) { ++ int countStart = (destPos & 63) == 0 ? 0 : 64 - (int)(destPos & 63); ++ if (countStart > count) ++ countStart = count; ++ for (int srcPosMax = srcPos + countStart; srcPos < srcPosMax; srcPos++, destPos++) { ++ if (src[srcPos]) ++ dest.put((int)(destPos >>> 6), dest.get((int)(destPos >>> 6)) | 1L << (destPos & 63)); ++ else ++ dest.put((int)(destPos >>> 6), dest.get((int)(destPos >>> 6)) & ~(1L << (destPos & 63))); ++ } ++ count -= countStart; ++ int cnt = count >>> 6; ++ for (int k = (int)(destPos >>> 6), kMax = k + cnt; k < kMax; k++) { ++ int low = (src[srcPos] ? 1 : 0) ++ | (src[srcPos + 1] ? 1 << 1 : 0) ++ | (src[srcPos + 2] ? 1 << 2 : 0) ++ | (src[srcPos + 3] ? 1 << 3 : 0) ++ | (src[srcPos + 4] ? 1 << 4 : 0) ++ | (src[srcPos + 5] ? 1 << 5 : 0) ++ | (src[srcPos + 6] ? 1 << 6 : 0) ++ | (src[srcPos + 7] ? 1 << 7 : 0) ++ | (src[srcPos + 8] ? 1 << 8 : 0) ++ | (src[srcPos + 9] ? 1 << 9 : 0) ++ | (src[srcPos + 10] ? 1 << 10 : 0) ++ | (src[srcPos + 11] ? 1 << 11 : 0) ++ | (src[srcPos + 12] ? 1 << 12 : 0) ++ | (src[srcPos + 13] ? 1 << 13 : 0) ++ | (src[srcPos + 14] ? 1 << 14 : 0) ++ | (src[srcPos + 15] ? 1 << 15 : 0) ++ | (src[srcPos + 16] ? 1 << 16 : 0) ++ | (src[srcPos + 17] ? 1 << 17 : 0) ++ | (src[srcPos + 18] ? 1 << 18 : 0) ++ | (src[srcPos + 19] ? 1 << 19 : 0) ++ | (src[srcPos + 20] ? 1 << 20 : 0) ++ | (src[srcPos + 21] ? 1 << 21 : 0) ++ | (src[srcPos + 22] ? 1 << 22 : 0) ++ | (src[srcPos + 23] ? 1 << 23 : 0) ++ | (src[srcPos + 24] ? 1 << 24 : 0) ++ | (src[srcPos + 25] ? 1 << 25 : 0) ++ | (src[srcPos + 26] ? 1 << 26 : 0) ++ | (src[srcPos + 27] ? 1 << 27 : 0) ++ | (src[srcPos + 28] ? 1 << 28 : 0) ++ | (src[srcPos + 29] ? 1 << 29 : 0) ++ | (src[srcPos + 30] ? 1 << 30 : 0) ++ | (src[srcPos + 31] ? 1 << 31 : 0) ++ ; ++ srcPos += 32; ++ int high = (src[srcPos] ? 1 : 0) // PROBLEM! ++ | (src[srcPos + 1] ? 1 << 1 : 0) ++ | (src[srcPos + 2] ? 1 << 2 : 0) ++ | (src[srcPos + 3] ? 1 << 3 : 0) ++ | (src[srcPos + 4] ? 1 << 4 : 0) ++ | (src[srcPos + 5] ? 1 << 5 : 0) ++ | (src[srcPos + 6] ? 1 << 6 : 0) ++ | (src[srcPos + 7] ? 1 << 7 : 0) ++ | (src[srcPos + 8] ? 1 << 8 : 0) ++ | (src[srcPos + 9] ? 1 << 9 : 0) ++ | (src[srcPos + 10] ? 1 << 10 : 0) ++ | (src[srcPos + 11] ? 1 << 11 : 0) ++ | (src[srcPos + 12] ? 1 << 12 : 0) ++ | (src[srcPos + 13] ? 1 << 13 : 0) ++ | (src[srcPos + 14] ? 1 << 14 : 0) ++ | (src[srcPos + 15] ? 1 << 15 : 0) ++ | (src[srcPos + 16] ? 1 << 16 : 0) ++ | (src[srcPos + 17] ? 1 << 17 : 0) ++ | (src[srcPos + 18] ? 1 << 18 : 0) ++ | (src[srcPos + 19] ? 1 << 19 : 0) ++ | (src[srcPos + 20] ? 1 << 20 : 0) ++ | (src[srcPos + 21] ? 1 << 21 : 0) ++ | (src[srcPos + 22] ? 1 << 22 : 0) ++ | (src[srcPos + 23] ? 1 << 23 : 0) ++ | (src[srcPos + 24] ? 1 << 24 : 0) ++ | (src[srcPos + 25] ? 1 << 25 : 0) ++ | (src[srcPos + 26] ? 1 << 26 : 0) ++ | (src[srcPos + 27] ? 1 << 27 : 0) ++ | (src[srcPos + 28] ? 1 << 28 : 0) ++ | (src[srcPos + 29] ? 1 << 29 : 0) ++ | (src[srcPos + 30] ? 1 << 30 : 0) ++ | (src[srcPos + 31] ? 1 << 31 : 0) ++ ; ++ srcPos += 32; ++ dest.put(k, ((long)low & 0xFFFFFFFFL) | (((long)high) << 32)); ++ destPos += 64; ++ } ++ int countFinish = count & 63; ++ for (int srcPosMax = srcPos + countFinish; srcPos < srcPosMax; srcPos++, destPos++) { ++ if (src[srcPos]) ++ dest.put((int)(destPos >>> 6), dest.get((int)(destPos >>> 6)) | 1L << (destPos & 63)); ++ else ++ dest.put((int)(destPos >>> 6), dest.get((int)(destPos >>> 6)) & ~(1L << (destPos & 63))); ++ } ++ } ++ public static void main(String[] args) { ++ Random r = new Random(); ++ int entries = 1000; ++ boolean[] src = new boolean[entries * 64]; ++ long[] dest = new long[entries]; ++ long[] result = new long[entries]; ++ ++ for (int c = 0; c < 2000; c++) { ++ for (int i = 0; i < entries; i++) { ++ long l = r.nextLong(); ++ for (int bit = 0; bit < 64; bit++) { ++ src[i * 64 + bit] = (l & (1L << bit)) != 0; ++ } ++ dest[i] = 0; ++ result[i] = l; ++ } ++ test(src, 0, LongBuffer.wrap(dest, 0, dest.length), 0, src.length); ++ for (int i = 0; i < entries; i++) { ++ if (dest[i] != result[i]) { ++ throw new InternalError(i + ": " + Long.toHexString(dest[i]) + " != " + Long.toHexString(result[i])); ++ } ++ } ++ } ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6663621/IVTest.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6663621/IVTest.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,117 @@ ++/* ++ * Copyright 1997-2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/** ++ * @test ++ * @bug 6663621 ++ * @summary JVM crashes while trying to execute api/java_security/Signature/SignatureTests.html#initSign tests. ++ */ ++ ++public class IVTest { ++ static int paddedSize; ++ ++ static void padV15(byte[] padded) { ++ int psSize = padded.length; ++ int k = 0; ++ while (psSize-- > 0) { ++ padded[k++] = (byte)0xff; ++ } ++ } ++ ++ static void padV15_2(int paddedSize) { ++ byte[] padded = new byte[paddedSize]; ++ int psSize = padded.length; ++ int k = 0; ++ while (psSize-- > 0) { ++ padded[k++] = (byte)0xff; ++ } ++ } ++ ++ static void padV15_3() { ++ byte[] padded = new byte[paddedSize]; ++ int psSize = padded.length; ++ int k = 0; ++ while (psSize-- > 0) { ++ padded[k++] = (byte)0xff; ++ } ++ } ++ ++ static void padV15_4() { ++ byte[] padded = new byte[paddedSize]; ++ int psSize = padded.length; ++ for (int k = 0;psSize > 0; psSize--) { ++ int i = padded.length - psSize; ++ padded[i] = (byte)0xff; ++ } ++ } ++ ++ static void padV15_5() { ++ byte[] padded = new byte[paddedSize]; ++ int psSize = padded.length; ++ int k = psSize - 1; ++ for (int i = 0; i < psSize; i++) { ++ padded[k--] = (byte)0xff; ++ } ++ } ++ ++ public static void main(String argv[]) { ++ int bounds = 1024; ++ int lim = 500000; ++ long start = System.currentTimeMillis(); ++ for (int j = 0; j < lim; j++) { ++ paddedSize = j % bounds; ++ padV15(new byte[paddedSize]); ++ } ++ long end = System.currentTimeMillis(); ++ System.out.println(end - start); ++ start = System.currentTimeMillis(); ++ for (int j = 0; j < lim; j++) { ++ paddedSize = j % bounds; ++ padV15_2(paddedSize); ++ } ++ end = System.currentTimeMillis(); ++ System.out.println(end - start); ++ start = System.currentTimeMillis(); ++ for (int j = 0; j < lim; j++) { ++ paddedSize = j % bounds; ++ padV15_3(); ++ } ++ end = System.currentTimeMillis(); ++ System.out.println(end - start); ++ start = System.currentTimeMillis(); ++ for (int j = 0; j < lim; j++) { ++ paddedSize = j % bounds; ++ padV15_4(); ++ } ++ end = System.currentTimeMillis(); ++ System.out.println(end - start); ++ start = System.currentTimeMillis(); ++ for (int j = 0; j < lim; j++) { ++ paddedSize = j % bounds; ++ padV15_5(); ++ } ++ end = System.currentTimeMillis(); ++ System.out.println(end - start); ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6663848/Tester.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6663848/Tester.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,478 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6663848 ++ * @summary assert(i < Max(),"oob") ++ */ ++ ++/* Complexity upper bound: 296055 ops */ ++ ++final class Tester_Class_0 { ++ byte var_1; ++ static double var_2; ++ String var_3; ++ char var_4 = 'n'; ++ static int var_5; ++ String var_6; ++ final long var_7 = 4161100809902398464L; ++ static String var_8 = "a"; ++ ++ ++ public Tester_Class_0() ++ { ++ switch (((false ^ !"n".startsWith("kmmhtohv", 553985525) ? true : false) ? 'k' : (var_4 *= - (var_2 = 3.1182935E38F))) - (~2013121027650726912L >= 2.929692E38F / (var_1 = (byte)4.2723157E37F) ? var_4 | (short)var_7 : ~ ((byte)"".indexOf("yuno", 4922080)))) ++ { ++ case 125: ++ ++ case ']': ++ ++ case 6: ++ var_5 = (false ? false : 3708707602755734528L >= 1648075631) ? var_4 : (false ? var_4 : ++var_4); ++ break; ++ ++ case 46: ++ Object var_15; ++ ++var_4; ++ float var_16 = 3.1085987E38F; ++ var_5 = 'h'; ++ var_1 = true ? (byte)9.482988718680618E307 : (false && false ? (byte)var_7 : (byte)6793807430041920512L); ++ final byte var_17 = var_1 = (337740577 ^ ~8932537004307666944L) / (short)var_16 - (byte)var_7 << var_7 > ~1539422023641354240L ? (false ? (byte)var_4 : (byte)9.302678E37F) : (byte)(var_5 = (byte)1.3007792E38F); ++ var_15 = "an"; ++ break; ++ ++ case 29: ++ var_3 = (var_6 = (var_8 = "kgc")); ++ break; ++ ++ case 60: ++ ++ } ++ char var_18; ++ ((new Tester_Class_0[var_1 = (byte)(var_2 = 93813743)])[var_1 = (byte)var_4]).var_1 = (var_1 = (var_1 = (byte)5.1405316E37F)); ++ var_8 = var_8; ++ float var_19 = 0F; ++ var_2 = var_4; ++ do ++ { ++ var_4 >>= var_7; ++ var_19++; ++ var_4 %= true ? (short)7643330105057892352L : (short)1.1014013E38F; ++ } while (var_19 < 2 && (! (true & (!true && false)) && true)); ++ var_4++; ++ int var_20 = 0; ++ var_4 = ~var_7 == (var_1 = (byte)var_7) | (float)var_20 <= 'H' ? 'r' : (var_4 |= (byte)var_4); ++ for (var_6 = (var_8 = "wqmnvxava"); (false ? (short)+ ~3540350558052792320L : + ~ ~3244965056572428288L - (var_4 *= 8.314953959831226E307)) <= +9.34280058703911E307 && var_20 < 6; var_2 = 3.0507823E38F) ++ { ++ var_2 = ~ ((byte)844279629935048704L) ^ (var_19 <= (false ? '\\' : 'B') ? (byte)(short)(var_1 = (byte)(short)var_19) : (var_1 = (var_1 = (var_1 = (byte)'T')))); ++ var_20++; ++ var_5 = (short)(var_7 >>> (! !true & true ? 'D' : (var_4 -= 1.1444072012663494E308))); ++ (var_6 = "jnjbrmaus").compareTo(var_3 = false ? "pfmv" : (var_8 = var_8)); ++ } ++ var_2 = func_0(1248385981, 'V' != '[' ? (short)1.0082348960424545E308 : (byte)var_4, new double[var_1 = (byte)'p'][(byte)var_19], 1.3646683639847343E308); ++ var_5 = (var_1 = (var_1 = (true ^ false ? "bfh".startsWith(var_8) : true || !true) | false ? (byte)(var_2 = - ~var_7) : (var_1 = (byte)var_19))); ++ var_3 = (var_3 = "dn"); ++ var_2 = false ? (var_1 = (byte)9.136750130102702E307) : var_7; ++ } ++ ++ ++ ++ ++ final short func_0(int arg_0, short arg_1, double[][] arg_2, double arg_3) ++ { ++ double[][] var_9 = arg_2; ++ arg_0 <<= true ? (byte)- +1.1174307E37F : (var_1 = (byte)911334714); ++ switch ("touoh".endsWith(var_8) ^ ! ! (++var_4 != 1.8567045E38F) ? (var_4 <<= arg_1) : 'E') ++ { ++ case 'a': ++ ++ case 46: ++ ++ case 's': ++ ++ case 50: ++ ((new Tester_Class_0[(byte)arg_0][(byte)- (- + - - + - +1.775205E38F - (arg_1 |= 'Z'))])[var_1 = (var_1 = (byte)4.020531E37F)][var_1 = (var_1 = (byte)883328311549528064L)]).var_4 &= (var_6 = var_8).charAt(arg_0); ++ var_3 = false ? var_8 : "amfijbpwa"; ++ var_4 -= -1.4699719646972257E308; ++ var_2 = (var_1 = (byte)(arg_1 += 1.6757431E38F)); ++ var_1 = (var_1 = (var_1 = (byte)+1.4416583523884388E308)); ++ final Object var_10 = (new Object[(byte)(arg_1 += var_4)])[var_1 = (byte)- +1.0281942E38F]; ++ arg_1 = arg_1; ++ break; ++ ++ case 7: ++ var_8 = var_8 + var_8; ++ break; ++ ++ case 'N': ++ ++ case 'V': ++ ++ case 56: ++ ++ case 'I': ++ ++ } ++ arg_0 &= arg_1; ++ var_3 = false ? var_8 : "vpaj"; ++ var_4 = (var_4 *= arg_1); ++ arg_3 *= (var_4 = var_4); ++ final char var_11 = true ? var_4 : (char)(var_4 << (var_1 = (byte)(arg_1 &= arg_0))); ++ boolean var_12; ++ var_4 ^= '`'; ++ "nkj".startsWith(var_6 = "wrcnrdd"); ++ var_1 = (byte)~var_7; ++ var_6 = (var_8 = "ul"); ++ return (var_12 = 3548576322219573248L <= var_4++ & ((var_12 = !true) || (var_12 = !false | false))) ? arg_1-- : (var_1 = (byte)+ (var_2 = 2.7633542E38F)); ++ } ++ ++ protected final void func_1(final String arg_0, Object arg_1, short arg_2) ++ { ++ arg_2 *= ~8267766955221100544L; ++ arg_1 = (var_6 = var_8); ++ arg_2 <<= false ? (var_1 = (var_1 = (var_1 = (byte)1.6645553629318776E308))) : arg_2; ++ } ++ ++ protected final static float func_2(byte arg_0, final String arg_1) ++ { ++ var_8 = arg_1; ++ char var_13 = ((new Tester_Class_0[arg_0 |= ']'])[arg_0]).var_4--; ++ var_5 = 907889433; ++ { ++ var_13 ^= (var_5 = var_13); ++ } ++ var_8 = arg_1; ++ var_5 = (byte)1759688161; ++ var_8 = (new String[arg_0 >>>= (short)1072761211])[arg_0]; ++ return 5.108221E37F; ++ } ++ ++ private static boolean func_3(boolean arg_0, final boolean arg_1) ++ { ++ var_2 = ((new Tester_Class_0[(byte)(short)'H'])[(byte)(short)(var_2 = (short)'k')]).var_4; ++ if (false) ++ { ++ var_8 = "cl"; ++ } ++ else ++ { ++ final byte[] var_14 = new byte[true ? (byte)(- ((byte)9.760296114722793E307) | ~1867374212153383936L) : (byte)(short)'Q']; ++ var_2 = (float)~3838271533006646272L / (- ~ ~1786841397228277760L ^ ~3695911615719734272L & 'Z'); ++ } ++ { ++ var_8 = var_8; ++ } ++ ((new Tester_Class_0[(byte)(var_2 = (short)~ - +4818709334539164672L)])[(byte)'W']).var_1 = true || false & arg_0 ^ (arg_1 ^ arg_0 ? arg_0 : (arg_0 ^= true)) ? (byte)1.5309163701271477E308 : (byte)3.0904342E38F; ++ ((new Tester_Class_0[(byte)756871578277111808L][(byte)+ + -3.0687752E38F])[(byte)'f'][(byte)1544156315]).var_6 = (var_8 = "vqey"); ++ return arg_1; ++ } ++ ++ public final char func_4(short arg_0) ++ { ++ { ++ var_6 = (var_3 = "hjtjar"); ++ var_1 = false ? (byte)4.02486350499973E307 : (byte)1.3222663E38F; ++ } ++ var_1 = (new byte[var_1 = (var_1 = (byte)1770517884)])[var_1 = (byte)arg_0]; ++ var_4++; ++ --arg_0; ++ var_5 = true ? 'D' : (var_4 ^= (var_5 = 134858941)); ++ return (char)~ (7273058621469586432L << (byte)3.1756883E38F ^ (false ? (byte)(var_5 = var_4) : (arg_0 >>= 6165812289376474112L))) < (2046127339 ^ + ((byte)arg_0)) ? (!false ? (var_4 %= 1.8187417377124746E307) : (var_4 *= 445936805)) : var_4; ++ } ++ ++} ++ ++ ++class Tester_Class_1 { ++ Tester_Class_0[][] var_21; ++ static long var_22 = 6671342492736446464L; ++ float var_23 = 2.9329673E38F; ++ final int var_24 = 1834862519; ++ int var_25 = 69920645; ++ static char var_26; ++ static Object var_27; ++ static int var_28 = Tester_Class_0.var_5 = false ? 'U' : (var_26 = (var_26 = 'R')); ++ ++ ++ public Tester_Class_1() ++ { ++ (false ? (Tester_Class_0)(var_27 = Tester_Class_0.var_8) : (Tester_Class_0)(var_27 = "a")).var_1 = (short)(var_23 %= var_23) >= (byte)1217257602 | var_25 == (char)(var_23 += var_23) ? (byte)new Tester_Class_0().var_4-- : ((true | false) ^ !false ? (byte)6.122806E37F : (byte)1.084542872057614E308); ++ Tester_Class_0.var_2 = new Tester_Class_0().var_7; ++ --var_22; ++ boolean var_32 = ! ((new Tester_Class_0().var_1 = (((new Tester_Class_0[(byte)var_22])[(byte)var_23]).var_1 = false ? (byte)(var_23 = var_28) : (byte)1.5858707076311894E308)) != (char)+var_23); ++ var_25 -= (true ? (byte)5.488240359086226E307 : (((Tester_Class_0)(var_27 = Tester_Class_0.var_8)).var_1 = (byte)'L')) * (Tester_Class_0.var_2 = 7.045106259776882E307); ++ Object var_33 = (var_32 ^= var_32) ? (var_27 = (Tester_Class_0.var_8 = (Tester_Class_0.var_8 = "gaemnaep"))) : (new Tester_Class_0[(byte)'g'])[(byte)(short)271735827]; ++ byte var_34 = var_32 ? (byte)((Tester_Class_0)var_33).var_7 : ((var_32 &= true) ? (byte)(Tester_Class_0.var_2 = 1.6975344767401616E307) : (byte)- ((double)var_22)); ++ Tester_Class_0.var_2 = 1.4644308179397427E308; ++ var_28 /= (short)1681483575; ++ Tester_Class_0.var_2 = (var_34 <<= (var_25 ^= ~ (var_22 |= (var_22 = var_22)))); ++ var_23 *= (char)(var_28 *= var_32 ? var_34 ^ --var_34 : 3220732582528450560L); ++ if ((((Tester_Class_0)var_33).var_4 &= var_34) != (short)var_28) ++ { ++ Tester_Class_0.var_8 = ((false ? (Tester_Class_0)var_33 : (Tester_Class_0)var_33).var_6 = Tester_Class_0.var_8); ++ } ++ else ++ { ++ var_33 = false | (var_32 ^= true) ? ((new Tester_Class_0[var_34][var_34])[var_34])[var_34] : (Tester_Class_0)var_33; ++ } ++ if (false) ++ { ++ var_22 = 107656877775594496L; ++ } ++ else ++ { ++ ((var_32 &= (var_32 |= var_32)) || (var_23 /= var_25) == (Tester_Class_0.var_2 = 7649348100017113088L) ? (new Tester_Class_0[var_34])[var_34] : (Tester_Class_0)var_33).var_4 >>>= (((new Tester_Class_0[var_34])[var_34 <<= 'C']).var_6 = (((Tester_Class_0)(var_33 = (var_33 = var_33))).var_6 = ++var_28 > var_23 ? "qgq" : (Tester_Class_0.var_8 = Tester_Class_0.var_8))).equalsIgnoreCase(Tester_Class_0.var_8) ? var_34++ : ++var_34; ++ } ++ String[][] var_35; ++ Tester_Class_0.var_8 = Tester_Class_0.var_8; ++ var_27 = (new Tester_Class_0[var_34][var_34 /= 226411329])[false ? --var_34 : (var_34 /= 1.7237614E38F)][var_34]; ++ var_23 %= var_25; ++ } ++ ++ ++ ++ protected Object clone() ++ { ++ var_28 >>>= (new Tester_Class_0().var_1 = (byte)new Tester_Class_0().var_4); ++ ((Tester_Class_0)(var_27 = (Tester_Class_0.var_8 = (Tester_Class_0.var_8 = (Tester_Class_0.var_8 = "ybndugrur"))))).var_3 = Tester_Class_0.var_8; ++ var_22--; ++ new Tester_Class_0().var_4 -= (new Tester_Class_0().var_1 = (byte)'O'); ++ { ++ short var_29 = 12378; ++ } ++ Tester_Class_0.var_8 = "fd"; ++ "".lastIndexOf("bgsxwmil"); ++ new Tester_Class_0().var_6 = (Tester_Class_0.var_2 = -1.7590174497347678E308) == (var_26 = 'o') | true && !false ? Tester_Class_0.var_8 : (((Tester_Class_0)(var_27 = "")).var_6 = Tester_Class_0.var_8); ++ return var_27 = (var_27 = (var_27 = (var_27 = (Tester_Class_0.var_8 = Tester_Class_0.var_8).substring(var_24)))); ++ } ++ ++ public boolean equals(Object obj) ++ { ++ --var_28; ++ var_23 /= +var_23 * -6025098819014877184L / 3.3957492E38F / (short)'i'; ++ Tester_Class_0.var_2 = 3.0420988E38F * ((short)var_23 <= (var_23 %= 8.761205585617465E307) % + -1.2374670294031777E308 ? (var_23 = 'P') : (float)+ +1.0313120780554142E308); ++ (7489001532003495936L >= 'C' ? (Tester_Class_0)obj : (Tester_Class_0)(var_27 = obj)).func_4((short)(float)(byte)(float)(Tester_Class_0.var_2 = 1601763635)); ++ (var_23 * 2.2882572E38F <= (short)var_25 * (true || false ? (short)~ ((byte)1.1382317160718865E307) : (Tester_Class_0.var_2 = 7.909133507918336E307)) ? (Tester_Class_0)obj : (Tester_Class_0)obj).var_4++; ++ boolean var_30 = true; ++ var_27 = new Tester_Class_0(); ++ final String var_31 = "aiqnc"; ++ return 1.1357028E38F + (var_30 ? (Tester_Class_0)(var_27 = obj) : (Tester_Class_0)obj).var_7 == 3.860172628750592E306; ++ } ++ ++ ++} ++ ++public class Tester { ++ final static long var_36 = (4.4957056E37F < Tester_Class_1.var_22 + 281107777128915968L ? (Tester_Class_1.var_26 = 't') : (char)Tester_Class_1.var_28) - (4654994097042818048L | (byte)(Tester_Class_0.var_2 = (short)(Tester_Class_1.var_26 = ']'))) ^ 349774342780012544L; ++ ++ ++ static long func_0(final Tester_Class_1 arg_0, long arg_1) ++ { ++ ((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_0)(Tester_Class_1.var_27 = Tester_Class_0.var_8))).var_4 |= --new Tester_Class_0().var_4; ++ return Tester_Class_1.var_22 &= new Tester_Class_0().var_4; ++ } ++ ++ protected Tester_Class_1 func_1(final boolean arg_0, Object arg_1) ++ { ++ Tester_Class_0.var_2 = (short)Tester_Class_1.var_22; ++ ((arg_0 ? (byte)8.639448452214698E307 : ((Tester_Class_1)arg_1).var_24) <= ((Tester_Class_1)(Tester_Class_1.var_27 = new float[(byte)Tester_Class_1.var_22])).var_25++ ? (Tester_Class_0)arg_1 : (Tester_Class_0)(arg_1 = (Tester_Class_1.var_27 = (Tester_Class_0)arg_1))).var_3 = (Tester_Class_0.var_8 = "pgfdbinj"); ++ arg_1 = (new Tester_Class_0[((Tester_Class_0)arg_1).var_1 = (byte)1.0730194668655324E308])[(byte)'l']; ++ Tester_Class_0.var_8 = Tester_Class_0.var_8; ++ Tester_Class_1.var_27 = arg_0 & (true | !true) ? (Tester_Class_1)arg_1 : (Tester_Class_1)arg_1; ++ Tester_Class_1.var_28 += arg_0 ? (byte)(Tester_Class_0.var_8.compareToIgnoreCase(Tester_Class_0.var_8) % (Tester_Class_1.var_28 %= 2.2770412E38F)) : (byte)((byte)(short)Tester_Class_1.var_28 ^ var_36); ++ Tester_Class_1.var_28 <<= ((Tester_Class_0)arg_1).var_4; ++ return arg_0 ? (false ^ false ? (Tester_Class_1)arg_1 : (Tester_Class_1)arg_1) : (Tester_Class_1)arg_1; ++ } ++ ++ protected final static String[][] func_2(final double arg_0) ++ { ++ Tester_Class_0.var_2 = (((Tester_Class_1.var_22 = ((Tester_Class_1)(Tester_Class_1.var_27 = "")).var_25++) != + ((byte)(Tester_Class_0.var_2 = - ((byte)2.690435E38F))) ? (Tester_Class_1)(Tester_Class_1.var_27 = "twoj") : (new Tester_Class_1[(byte)'n'])[(byte)- ((byte)'p')]).var_25 /= (new short[false ? (byte)arg_0 : (byte)3.1713847E38F])[(byte)(short)((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_1.var_27 = "fi"))).var_7]); ++ { ++ ((new Tester_Class_1[(byte)9.709543613377303E307])[((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_0.var_8 = "efwkox"))).var_1 = (byte)7789404846284517376L]).var_23 *= (((new Tester_Class_0[(byte)'J'][(byte)++Tester_Class_1.var_28])[(byte)Tester_Class_1.var_28][(byte)(Tester_Class_1.var_28 = 1677818267)]).var_1 = false || true ? (byte)1.4659824E38F : (byte)(Tester_Class_1.var_26 = 'T')); ++ } ++ Tester_Class_0.var_2 = !true | !false | false & ! (!true & (true ^ false)) ? (byte)(Tester_Class_1.var_26 = 'l') : (short)(arg_0 * (char)(byte)Tester_Class_1.var_28); ++ Tester_Class_1.var_28 <<= false ^ (! ! (!false | ! !true | true) | (Tester_Class_0.var_2 = arg_0) == 245171309) ? (byte)arg_0 : (short)Tester_Class_1.var_22; ++ { ++ ((Tester_Class_1)(true ? (Tester_Class_1.var_27 = "axpbpadi") : Tester_Class_0.var_8)).var_23 = ((Tester_Class_1)(Tester_Class_1.var_27 = (new Tester_Class_0[(byte)1.1668668415637981E308][(byte)1.4116134699564312E308])[(byte)-7.4415765E37F][(byte)5156322492367086592L])).var_25; ++ } ++ final double var_37 = 1.6970877829548446E308; ++ --(Tester_Class_1.var_28 == (byte)((byte)arg_0 + (byte)1.1632396E38F) ? (Tester_Class_0)(Tester_Class_1.var_27 = "vluk") : (Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_0.var_8 = "pfki"))).var_4; ++ Tester_Class_1.var_22--; ++ return new String[new Tester_Class_0().var_1 = (((Tester_Class_0)(Tester_Class_1.var_27 = "filxvch")).var_1 = (byte)var_36)][new Tester_Class_0().var_1 = (byte)'C']; ++ } ++ ++ final short func_3(byte arg_0, final short arg_1) ++ { ++ ((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_0.var_8 = "oenvgqdit"))).var_6 = Tester_Class_0.var_8; ++ new Tester_Class_0().var_4 >>>= + -var_36; ++ Tester_Class_0.var_2 = (((new Tester_Class_1[arg_0])[arg_0 %= ++Tester_Class_1.var_28]).var_25 &= Tester_Class_1.var_22); ++ ((new Tester_Class_1[arg_0])[arg_0 |= 1942533325]).var_23 %= arg_0 < arg_0 ? 'm' : 'N'; ++ float var_38; ++ ((new Tester_Class_1[arg_0])[arg_0]).var_23 /= (((new Tester_Class_1[arg_0][arg_0])[arg_0 |= 'N'])[arg_0 <<= - ((byte)- (Tester_Class_0.var_2 = 3.3324301E38F))]).var_23; ++ return true ? arg_1 : arg_1; ++ } ++ ++ private String func_4() ++ { ++ if (true) ++ { ++ ((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_1.var_27 = (Tester_Class_1.var_27 = Tester_Class_0.var_8)))).var_1 = (byte)6.4527776E37F; ++ ((Tester_Class_0)(Tester_Class_1.var_27 = new char[(byte)1.5121402849337185E307])).var_4 >>= - ((byte)3.3631582E37F) + (Tester_Class_1.var_28 /= 2.813947549586372E307); ++ } ++ else ++ { ++ { ++ Tester_Class_1.var_22 *= 1.6498653E36F; ++ } ++ Tester_Class_0.var_2 = + ((byte)7.750601265069686E307) > (short)(byte)3131520439106527232L ? (short)4699552681135671296L : (short)Tester_Class_1.var_22; ++ Tester_Class_1.var_22++; ++ ((Tester_Class_1)(new Object[(byte)6.231994821505742E307])[(byte)Tester_Class_1.var_22]).var_23 %= 30526551; ++ { ++ Tester_Class_0.var_2 = ((Tester_Class_1)(Tester_Class_1.var_27 = new short[(byte)9.628297E37F])).var_25; ++ } ++ Tester_Class_1.var_28 /= (byte)(false ^ Tester_Class_0.var_8.equalsIgnoreCase(Tester_Class_0.var_8) ? (byte)2.689633745095358E307 : (short)1.2532476E38F); ++ float var_39; ++ long[] var_40 = new long[((Tester_Class_0)(Tester_Class_1.var_27 = Tester_Class_0.var_8)).var_1 = (((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_0.var_8 = Tester_Class_0.var_8))).var_1 = (byte)(1.8335008E38F % (true | false ? (short)Tester_Class_1.var_22 : (byte)'P')))]; ++ } ++ Tester_Class_0.var_2 = (((new Tester_Class_0[((Tester_Class_0)(Tester_Class_1.var_27 = "inufeoe")).var_1 = (byte)(short)'M'])[(byte)(Tester_Class_0.var_2 = + - -2.274269E38F)]).var_1 = (((Tester_Class_0)(Tester_Class_1.var_27 = "c")).var_1 = (byte)'Z')); ++ Tester_Class_0.var_8 = (Tester_Class_0.var_8 = Tester_Class_0.var_8); ++ return "rkvffvlf"; ++ } ++ ++ final char func_5(final char arg_0, final Object[] arg_1, final double arg_2, Object arg_3) ++ { ++ arg_3 = true && Tester_Class_1.var_22 < (((Tester_Class_0)arg_3).var_1 = (((Tester_Class_0)(Tester_Class_1.var_27 = arg_3)).var_1 = (byte)arg_2)) ? "dgmwbkv" : Tester_Class_0.var_8; ++ (true ? (Tester_Class_1)arg_3 : (Tester_Class_1)arg_3).var_23 -= (Tester_Class_0.var_2 = arg_0); ++ arg_3 = (new String[(byte)arg_2])[(byte)-2.797633529863769E307]; ++ (false ^ !false ^ (!true && true) ? (Tester_Class_0)arg_3 : (Tester_Class_0)arg_3).var_4 -= (new char[((Tester_Class_0)arg_3).var_1 = (((Tester_Class_0)arg_3).var_1 = (((Tester_Class_0)arg_3).var_1 = (byte)2.433897E38F))])[((Tester_Class_0)arg_3).var_1 = (byte)+7.036923762392132E307]; ++ Tester_Class_0.var_8 = Tester_Class_0.var_8; ++ Tester_Class_0.var_2 = true ^ +((Tester_Class_1)(arg_3 = "o")).var_23 <= arg_2 ? (short)Tester_Class_1.var_22 : (((Tester_Class_0)arg_3).var_1 = (byte)1.9730195E38F); ++ (false ? (Tester_Class_0)arg_3 : (Tester_Class_0)arg_3).var_6 = "bpjqfacys"; ++ ((new Tester_Class_0[((Tester_Class_0)arg_3).var_1 = (byte)1969581340][((Tester_Class_0)arg_3).var_1 = (byte)(Tester_Class_0.var_2 = arg_0)])[((Tester_Class_0)arg_3).var_1 = (byte)(Tester_Class_0.var_2 = 4044194664687833088L)][((Tester_Class_0)arg_3).var_1 = (byte)((Tester_Class_1)arg_3).var_24]).var_1 = (false ? (byte)+ ((byte)1.2689328633821032E305) == arg_2 : false) ? (byte)arg_2 : (((Tester_Class_0)arg_3).var_1 = (byte)1586517741); ++ return (func_3(((Tester_Class_0)arg_3).var_1 = (byte)Tester_Class_1.var_28, (short)(byte)- +func_1(true, arg_3).var_23) > 1882532904 ? (short)2.6362656E38F >= (char)2.445034E38F & false : var_36 > Tester_Class_1.var_22) ? ((new Tester_Class_0[(byte)1.2074529E38F][(byte)'N'])[(byte)1.3365433211782782E308][(byte)Tester_Class_1.var_28]).var_4 : 'O'; ++ } ++ ++ private final static Tester_Class_1 func_6(String arg_0, String arg_1) ++ { ++ Tester_Class_1.var_22 += ((new Tester_Class_0[(byte)4.1707075152824266E306])[(byte)(short)(((Tester_Class_0)(Tester_Class_1.var_27 = "tmyiha")).var_4 &= 'e')]).var_4; ++ return (new Tester_Class_1[((Tester_Class_0)(Tester_Class_1.var_27 = arg_1)).var_1 = (byte)2.8419246E38F][(byte)Tester_Class_1.var_22])[((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_1.var_27 = arg_0))).var_1 = (((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_0.var_8 = "nvyfpdyms"))).var_1 = (byte)Tester_Class_1.var_22--)][((Tester_Class_0)(Tester_Class_1.var_27 = "kklsnsnia")).var_1 = (byte)'[']; ++ } ++ ++ double func_7(Object arg_0, final String arg_1) ++ { ++ if (false) ++ { ++ ((Tester_Class_0)arg_0).var_1 = (byte)'Z'; ++ } ++ else ++ { ++ ((Tester_Class_0)arg_0).var_3 = Tester_Class_0.var_8; ++ } ++ float var_41 = (true ? (new Tester_Class_1[((Tester_Class_0)arg_0).var_1 = (byte)var_36])[((Tester_Class_0)arg_0).var_1 = (byte)Tester_Class_1.var_22] : (Tester_Class_1)arg_0).var_23 /= 'n'; ++ ++Tester_Class_1.var_22; ++ return true ^ +func_6(arg_1, Tester_Class_0.var_8).var_23 < ~6945306015697774592L & (Tester_Class_1.var_28 |= var_36) <= var_36 ? + -1.4330949313452472E308 - -6602331706844466176L : Tester_Class_1.var_28; ++ } ++ ++ private final static byte func_8(final Object arg_0, double arg_1, final double arg_2, double arg_3) ++ { ++ ((Tester_Class_1)arg_0).var_23 = (short)(!false && (new boolean[(byte)2.2566308E38F])[((Tester_Class_0)arg_0).var_1 = (byte)((Tester_Class_1)arg_0).var_25] ? arg_2 : 3.0315489414155014E307); ++ short var_42 = (new short[((Tester_Class_0)arg_0).var_1 = (((Tester_Class_0)arg_0).var_1 = (byte)var_36)])[(byte)arg_2]; ++ Tester_Class_1.var_22 <<= ((new Tester_Class_0[(byte)var_42])[((Tester_Class_0)arg_0).var_1 = (byte)'X']).var_4; ++ (false ? new Tester_Class_0() : new Tester_Class_0()).var_4 *= 6.636831399350763E307; ++ (true & false ^ !((Tester_Class_1)arg_0).equals(arg_0) ? (Tester_Class_0)arg_0 : (Tester_Class_0)arg_0).var_4 <<= (Tester_Class_1.var_22 >>>= (Tester_Class_1.var_28 -= Tester_Class_1.var_28)) / 1064434; ++ int var_43; ++ final Object var_44 = Tester_Class_1.var_27 = new byte[((Tester_Class_0)arg_0).var_1 = (byte)+arg_2]; ++ ((Tester_Class_0)var_44).var_1 = (byte)arg_1; ++ Tester_Class_1 var_45 = (3582921389614857216L != 2.132918E38F / Tester_Class_1.var_22 % (((Tester_Class_1)var_44).var_23 %= var_42--) ? false : false ^ !false) ? func_6(((Tester_Class_0)arg_0).var_6 = Tester_Class_0.var_8, Tester_Class_0.var_8 = Tester_Class_0.var_8) : (Tester_Class_1)arg_0; ++ arg_1 *= false ? (false ? (byte)var_45.var_23 : (byte)var_45.var_24) : (byte)8158132319185776640L; ++ Tester_Class_0.var_8 = (new Tester_Class_0().var_6 = "gvxkyj"); ++ Tester_Class_1.var_27 = "bkfbu"; ++ arg_1 *= (((Tester_Class_0)arg_0).var_4 += new Tester_Class_0().var_4); ++ Tester_Class_0 var_46 = (false ? false && - (((Tester_Class_0)arg_0).var_1 = (byte)var_45.var_24) > var_45.var_23 - arg_2 : ("fn".startsWith(Tester_Class_0.var_8) && false) & !true) ? (Tester_Class_0)arg_0 : (Tester_Class_0)arg_0; ++ return var_46.var_1 = (var_46.var_1 = (var_46.var_1 = (byte)var_45.var_23)); ++ } ++ ++ public static void main(String[] args) ++ { ++ for (int i = 0; i < 100000; i++) { ++ Tester t = new Tester(); ++ try { ++ t.test(); ++ } catch(Throwable e) { ++ } ++ if (t.var_36 != -4918908939899620363L) { ++ throw new InternalError(t.var_36 + " != -4918908939899620363"); ++ } ++ } ++ } ++ ++ private void test() ++ { ++ ((Tester_Class_0)(Tester_Class_1.var_27 = new Tester_Class_0())).var_4 &= new Tester_Class_0().var_4 >>> (short)new Tester_Class_1().var_25; ++ Tester_Class_1.var_22 <<= Tester_Class_1.var_22; ++ Tester_Class_1.var_27 = ((true | ! !false) & false ? ! !true : 6.5017485E37F == (short)(Tester_Class_1.var_22 &= 'h')) ? (Tester_Class_1.var_27 = new Tester_Class_1()) : new Tester_Class_1(); ++ (1.252611E37F < (((new Tester_Class_0[(byte)'X'])[(byte)6.916916470825763E307]).var_4 /= (byte)Tester_Class_1.var_28 < (new short[(byte)7.626803503643197E307])[(byte)var_36] ? (short)new Tester_Class_0().var_4 : (short)(byte)Tester_Class_1.var_22) ? (true ? new Tester_Class_0() : new Tester_Class_0()) : (true ? new Tester_Class_0() : (Tester_Class_0)(Tester_Class_1.var_27 = Tester_Class_0.var_8))).var_4 ^= Tester_Class_1.var_28++; ++ (true ? new Tester_Class_1() : func_1(true, Tester_Class_1.var_27 = "jjgccelm")).var_23 -= (- - + + +1.2976166388790213E308 != ((!true ^ ! !true) & (short)(Tester_Class_1.var_28 &= var_36) <= (Tester_Class_1.var_26 = 'C') ? 1163089569715148800L : 8.591879058615699E307) ? (new Tester_Class_0().var_1 = (new Tester_Class_0().var_1 = (byte)2.7209893E38F)) : (!false ^ ! !false ? (short)'x' : (short)'a')) + 7620981797791666176L; ++ new Tester_Class_0().var_4 ^= 8777687662500669440L; ++ final String[] var_47 = new String[((1864097118983963648L | (Tester_Class_1.var_26 = '[')) < + (new Tester_Class_1().var_23 += --new Tester_Class_0().var_4) ? ! !true : false) ? (new Tester_Class_0().var_1 = (new Tester_Class_0().var_1 = (byte)2.6448988E38F)) : (byte)Tester_Class_1.var_22]; ++ long var_48 = 0L; ++ Tester_Class_0.var_2 = "nwcmc".codePointAt("wgcdlmd".compareTo("jyt")); ++ do ++ { ++ Tester_Class_1.var_22 += new Tester_Class_0().var_4; ++ var_48++; ++ Tester_Class_1.var_27 = false ? "dfvpqs" : Tester_Class_0.var_8; ++ new Tester_Class_0().var_1 = (new Tester_Class_0().var_1 = (new byte[(byte)2.2825838E38F])[(byte)4.2446597794703817E307]); ++ } while ((true ? !false : false & !false) && (var_48 < 117 && true)); ++ int var_49 = 0; ++ Tester_Class_1.var_26 = 'I'; ++ short var_50; ++ while (var_49 < 225 && ('U' | ~ ((byte)9.556538701292864E306)) < var_49) ++ { ++ var_50 = (var_50 = ((byte)1.2016701369644112E308 != (var_50 = (short)1.2518271E38F) ^ !true ? !true : false) ? (short)6.629572378442352E307 : (byte)'O'); ++ var_49++; ++ var_50 = true ? (byte)Tester_Class_1.var_22 : (byte)(Tester_Class_1.var_22 = (byte)var_48); ++ byte var_51; ++ short var_52; ++ } ++ Tester_Class_1.var_27 = Tester_Class_0.var_8 + "r"; ++ var_50 = (var_50 = true ^ ! (!false ^ false) ? (byte)573442894 : (byte)2.1479471E38F); ++ ((var_50 = (short)'w') >= (new Tester_Class_0().var_1 = (byte)5.148172E37F) & true ? new Tester_Class_0() : new Tester_Class_0()).var_4 >>= true ? (new Tester_Class_0().var_4 /= (byte)Tester_Class_1.var_28) : (Tester_Class_1.var_26 = '^'); ++ float var_53; ++ (func_6(Tester_Class_0.var_8, Tester_Class_0.var_8).var_24 <= (var_50 = (var_50 = (short)var_48)) ^ !true | true & true | true ^ false ? (Tester_Class_1)(Tester_Class_1.var_27 = Tester_Class_0.var_8) : new Tester_Class_1()).var_23 /= ((new Tester_Class_0[(byte)1.6656795E38F])[new Tester_Class_0().var_1 = (byte)1.212530193895014E308]).var_4; ++ long var_54 = 0L; ++ Object var_55; ++ (true | --new Tester_Class_0().var_4 == 2898909413610959872L & true == true ? func_6(Tester_Class_0.var_8, Tester_Class_0.var_8) : new Tester_Class_1()).var_23 %= 7471272661059674112L; ++ while (false & (false | 5.7300464E37F != (short)(Tester_Class_0.var_2 = (short)var_36)) && var_54 < 293) ++ { ++ func_6(Tester_Class_0.var_8 = "wts", Tester_Class_0.var_8 = (Tester_Class_0.var_8 = Tester_Class_0.var_8)).var_25 |= (Tester_Class_1.var_22 ^= (var_50 = (byte)1.0904691577897794E308)); ++ var_54++; ++ (false ? func_6(Tester_Class_0.var_8, "inujn") : func_6(Tester_Class_0.var_8, Tester_Class_0.var_8 = Tester_Class_0.var_8)).var_23 /= (Tester_Class_0.var_2 = (var_50 = (((Tester_Class_0)(var_55 = Tester_Class_0.var_8)).var_1 = (byte)(short)Tester_Class_1.var_28))); ++ Tester_Class_0.var_8 = Tester_Class_0.var_8; ++ } ++ var_50 = func_3(new Tester_Class_0().var_1 = (new Tester_Class_0().var_1 = (byte)var_36), var_50 = (var_50 = (var_50 = (byte)var_36))); ++ Tester_Class_1.var_22++; ++ Tester_Class_1.var_28 <<= 'Y'; ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6689060/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6689060/Test.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,577 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/* ++ * @test ++ * @bug 6689060 ++ * @summary Escape Analysis does not work with Compressed Oops ++ * @run main/othervm -Xbatch -XX:CompileCommand=exclude,Test.dummy -XX:+AggressiveOpts Test ++ */ ++ ++import java.lang.reflect.Array; ++ ++class Point { ++ int x; ++ int y; ++ Point next; ++ int ax[]; ++ int ay[]; ++ Point pax[]; ++ Point pay[]; ++ public Point getNext() { ++ return next; ++ } ++} ++ ++public class Test { ++ ++ void dummy() { ++ // Empty method to verify correctness of DebugInfo. ++ // Use -XX:CompileCommand=exclude,Test.dummy ++ } ++ ++ int ival(int i) { ++ return i*2; ++ } ++ ++ int test80(int y, int l, int i) { ++ Point p = new Point(); ++ p.ax = new int[2]; ++ p.ay = new int[2]; ++ int x = 3; ++ p.ax[0] = x; ++ p.ay[1] = 3 * x + y; ++ dummy(); ++ return p.ax[0] * p.ay[1]; ++ } ++ ++ int test81(int y, int l, int i) { ++ Point p = new Point(); ++ p.ax = new int[2]; ++ p.ay = new int[2]; ++ int x = 3; ++ p.ax[0] = x; ++ p.ay[1] = 3 * x + y; ++ dummy(); ++ return p.ax[0] * p.ay[1]; ++ } ++ ++ ++ int test44(int y) { ++ Point p1 = new Point(); ++ p1.x = ival(3); ++ dummy(); ++ p1.y = 3 * p1.x + y; ++ return p1.y; ++ } ++ ++ int test43(int y) { ++ Point p1 = new Point(); ++ if ( (y & 1) == 1 ) { ++ p1.x = ival(3); ++ } else { ++ p1.x = ival(5); ++ } ++ dummy(); ++ p1.y = 3 * p1.x + y; ++ return p1.y; ++ } ++ ++ int test42(int y) { ++ Point p1 = new Point(); ++ p1.x = 3; ++ for (int i = 0; i < y; i++) { ++ if ( (i & 1) == 1 ) { ++ p1.x += 4; ++ } ++ } ++ p1.y = 3 * y + p1.x; ++ return p1.y; ++ } ++ ++ int test40(int y) { ++ Point p1 = new Point(); ++ if ( (y & 1) == 1 ) { ++ p1.x = 3; ++ } else { ++ p1.x = 5; ++ } ++ p1.y = 3 * p1.x + y; ++ return p1.y; ++ } ++ ++ int test41(int y) { ++ Point p1 = new Point(); ++ if ( (y & 1) == 1 ) { ++ p1.x += 4; ++ } else { ++ p1.x += 5; ++ } ++ p1.y = 3 * p1.x + y; ++ return p1.y; ++ } ++ ++ Point test00(int y) { ++ int x = 3; ++ Point p = new Point(); ++ p.x = x; ++ p.y = 3 * x + y; ++ return p; ++ } ++ ++ Point test01(int y) { ++ int x = 3; ++ Point p = new Point(); ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p; ++ } ++ ++ Point test02(int y) { ++ int x = 3; ++ Point p1 = null; ++ for (int i = 0; i < y; i++) { ++ Point p2 = new Point(); ++ p2.x = x; ++ p2.y = 3 * y + x; ++ p2.next = p1; ++ p1 = p2; ++ } ++ return p1; ++ } ++ ++ Point test03(int y) { ++ int x = 3; ++ Point p1 = null; ++ for (int i = 0; i < y; i++) { ++ Point p2 = new Point(); ++ p2.x = x; ++ p2.y = 3 * y + x; ++ p2.next = p1; ++ p1 = p2; ++ } ++ dummy(); ++ return p1; ++ } ++ ++ Point test04(int y) { ++ int x = 3; ++ Point p1 = null; ++ for (int i = 0; i < y; i++) { ++ Point p2 = new Point(); ++ p2.x = x; ++ p2.y = 3 * y + x; ++ p2.next = p1; ++ dummy(); ++ p1 = p2; ++ } ++ return p1; ++ } ++ ++ int test05(int y) { ++ int x = 3; ++ Point p1 = new Point(); ++ for (int i = 0; i < y; i++) { ++ Point p2 = new Point(); ++ p2.x = x; ++ p2.y = 3 * y + x; ++ p1.next = p2; ++ p1 = p2; ++ } ++ return p1.y; ++ } ++ ++ int test0(int y) { ++ int x = 3; ++ Point p = new Point(); ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test1(int y) { ++ Point p = new Point(); ++ if ( (y & 1) == 1 ) { ++ p = new Point(); // Kill previous ++ } ++ int x = 3; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test2(int y) { ++ Point p1 = new Point(); ++ Point p2 = new Point(); ++ p1.x = 3; ++ p2.x = 4; ++ p1.y = 3 * p2.x + y; ++ p2.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p2.y; ++ } ++ ++ int test3(int y, Point p1) { ++ Point p2 = new Point(); ++ p1.x = 3; ++ p2.x = 4; ++ p1.y = 3 * p2.x + y; ++ p2.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p2.y; ++ } ++ ++ int test4(int y) { ++ Point p1 = new Point(); ++ Point p2 = new Point(); ++ if ( (y & 1) == 1 ) { ++ p1.x = 3; ++ p2.x = 4; ++ } else { ++ p1.x = 5; ++ p2.x = 6; ++ } ++ p1.y = 3 * p2.x + y; ++ p2.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p2.y; ++ } ++ ++ int test5(int y, Point p1) { ++ Point p2 = new Point(); ++ if ( (y & 1) == 1 ) { ++ p1.x = 3; ++ p2.x = 4; ++ } else { ++ p1.x = 5; ++ p2.x = 6; ++ } ++ p1.y = 3 * p2.x + y; ++ p2.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p2.y; ++ } ++ ++ int test6(int y) { ++ Point p1 = new Point(); ++ Point p2 = new Point(); ++ p1.next = p2; ++ if ( (y & 1) == 1 ) { ++ p1.x = 3; ++ p1.getNext().x = 4; ++ } else { ++ p1.x = 5; ++ p1.getNext().x = 6; ++ } ++ p1.y = 3 * p2.x + y; ++ p2.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p2.y; ++ } ++ ++ int test7(int y, Point p1) { ++ Point p2 = new Point(); ++ p1.next = p2; ++ if ( (y & 1) == 1 ) { ++ p1.x = 3; ++ p1.getNext().x = 4; ++ } else { ++ p1.x = 5; ++ p1.getNext().x = 6; ++ } ++ p1.y = 3 * p2.x + y; ++ p2.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p2.y; ++ } ++ ++ int test8(int y, int l, int i) { ++ Point p = new Point(); ++ p.ax = new int[l]; ++ p.ay = new int[l]; ++ int x = 3; ++ p.ax[i] = x; ++ p.ay[i] = 3 * x + y; ++ dummy(); ++ return p.ax[i] * p.ay[i]; ++ } ++ ++ int test9(int y, int l, int i) { ++ Point p = new Point(); ++ p.pax = new Point[l]; ++ p.pay = new Point[l]; ++ p.pax[i] = new Point(); ++ p.pay[i] = new Point(); ++ p.pax[i].x = 3; ++ p.pay[i].x = 4; ++ p.pax[i].y = 3 * p.pay[i].x + y; ++ p.pay[i].y = 3 * p.pax[i].x + y; ++ dummy(); ++ return p.pax[i].y * p.pay[i].y; ++ } ++ ++ int test10(int y, int l, int i, Class cls) { ++ Point p = new Point(); ++ try { ++ p.pax = (Point[])Array.newInstance(cls, l); ++ p.pax[i] = (Point)cls.newInstance(); ++ } ++ catch(java.lang.InstantiationException ex) { ++ return 0; ++ } ++ catch(java.lang.IllegalAccessException ex) { ++ return 0; ++ } ++ p.pax[i].x = 3; ++ p.pax[i].y = 3 * p.pax[i].x + y; ++ dummy(); ++ return p.pax[i].x * p.pax[i].y; ++ } ++ ++ int test11(int y) { ++ Point p1 = new Point(); ++ Point p2 = new Point(); ++ p1.next = p2; ++ if ( (y & 1) == 1 ) { ++ p1.x = 3; ++ p1.next.x = 4; ++ } else { ++ p1.x = 5; ++ p1.next.x = 6; ++ } ++ p1.y = 3 * p1.next.x + y; ++ p1.next.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p1.next.y; ++ } ++ ++ int test12(int y) { ++ Point p1 = new Point(); ++ p1.next = p1; ++ if ( (y & 1) == 1 ) { ++ p1.x = 3; ++ p1.next.x = 4; ++ } else { ++ p1.x = 5; ++ p1.next.x = 6; ++ } ++ p1.y = 3 * p1.next.x + y; ++ p1.next.y = 3 * p1.x + y; ++ dummy(); ++ return p1.y * p1.next.y; ++ } ++ ++ ++ public static void main(String args[]) { ++ Test tsr = new Test(); ++ Point p = new Point(); ++ Point ptmp = p; ++ Class cls = Point.class; ++ int y = 0; ++ for (int i=0; i<10000; i++) { ++ ptmp.next = tsr.test00(1); ++ ptmp.next = tsr.test01(1); ++ ptmp.next = tsr.test02(1); ++ ptmp.next = tsr.test03(1); ++ ptmp.next = tsr.test04(1); ++ ++ y = tsr.test05(1); ++ ++ y = tsr.test80(y, 1, 0); ++ y = tsr.test81(y, 1, 0); ++ ++ y = tsr.test44(y); ++ y = tsr.test43(y); ++ y = tsr.test42(y); ++ y = tsr.test40(y); ++ y = tsr.test41(y); ++ ++ y = tsr.test0(y); ++ y = tsr.test1(y); ++ y = tsr.test2(y); ++ y = tsr.test3(y, p); ++ y = tsr.test4(y); ++ y = tsr.test5(y, p); ++ y = tsr.test6(y); ++ y = tsr.test7(y, p); ++ y = tsr.test8(y, 1, 0); ++ y = tsr.test9(y, 1, 0); ++ y = tsr.test10(y, 1, 0, cls); ++ y = tsr.test11(y); ++ y = tsr.test12(y); ++ } ++ for (int i=0; i<10000; i++) { ++ ptmp.next = tsr.test00(1); ++ ptmp.next = tsr.test01(1); ++ ptmp.next = tsr.test02(1); ++ ptmp.next = tsr.test03(1); ++ ptmp.next = tsr.test04(1); ++ ++ y = tsr.test05(1); ++ ++ y = tsr.test80(y, 1, 0); ++ y = tsr.test81(y, 1, 0); ++ ++ y = tsr.test44(y); ++ y = tsr.test43(y); ++ y = tsr.test42(y); ++ y = tsr.test40(y); ++ y = tsr.test41(y); ++ ++ y = tsr.test0(y); ++ y = tsr.test1(y); ++ y = tsr.test2(y); ++ y = tsr.test3(y, p); ++ y = tsr.test4(y); ++ y = tsr.test5(y, p); ++ y = tsr.test6(y); ++ y = tsr.test7(y, p); ++ y = tsr.test8(y, 1, 0); ++ y = tsr.test9(y, 1, 0); ++ y = tsr.test10(y, 1, 0, cls); ++ y = tsr.test11(y); ++ y = tsr.test12(y); ++ } ++ for (int i=0; i<10000; i++) { ++ ptmp.next = tsr.test00(1); ++ ptmp.next = tsr.test01(1); ++ ptmp.next = tsr.test02(1); ++ ptmp.next = tsr.test03(1); ++ ptmp.next = tsr.test04(1); ++ ++ y = tsr.test05(1); ++ ++ y = tsr.test80(y, 1, 0); ++ y = tsr.test81(y, 1, 0); ++ ++ y = tsr.test44(y); ++ y = tsr.test43(y); ++ y = tsr.test42(y); ++ y = tsr.test40(y); ++ y = tsr.test41(y); ++ ++ y = tsr.test0(y); ++ y = tsr.test1(y); ++ y = tsr.test2(y); ++ y = tsr.test3(y, p); ++ y = tsr.test4(y); ++ y = tsr.test5(y, p); ++ y = tsr.test6(y); ++ y = tsr.test7(y, p); ++ y = tsr.test8(y, 1, 0); ++ y = tsr.test9(y, 1, 0); ++ y = tsr.test10(y, 1, 0, cls); ++ y = tsr.test11(y); ++ y = tsr.test12(y); ++ } ++ ++ int z = 0; ++ y = tsr.test80(0, 1, 0); ++ z += y; ++ System.out.println("After 'test80' y=" + y); ++ y = tsr.test81(0, 1, 0); ++ z += y; ++ System.out.println("After 'test81' y=" + y); ++ ++ y = tsr.test44(0); ++ z += y; ++ System.out.println("After 'test44' y=" + y); ++ y = tsr.test43(0); ++ z += y; ++ System.out.println("After 'test43' y=" + y); ++ y = tsr.test42(0); ++ z += y; ++ System.out.println("After 'test42' y=" + y); ++ y = tsr.test40(0); ++ z += y; ++ System.out.println("After 'test40' y=" + y); ++ y = tsr.test41(0); ++ z += y; ++ System.out.println("After 'test41' y=" + y); ++ ++ ptmp.next = tsr.test00(1); ++ z += y; ++ System.out.println("After 'test00' p.y=" + ptmp.next.y); ++ ptmp.next = tsr.test01(1); ++ z += y; ++ System.out.println("After 'test01' p.y=" + ptmp.next.y); ++ ptmp.next = tsr.test02(1); ++ z += y; ++ System.out.println("After 'test02' p.y=" + ptmp.next.y); ++ ptmp.next = tsr.test03(1); ++ z += y; ++ System.out.println("After 'test03' p.y=" + ptmp.next.y); ++ ptmp.next = tsr.test04(1); ++ z += y; ++ System.out.println("After 'test04' p.y=" + ptmp.next.y); ++ ++ y = tsr.test05(1); ++ z += y; ++ System.out.println("After 'test05' y=" + y); ++ ++ y = tsr.test0(0); ++ z += y; ++ System.out.println("After 'test0' y=" + y); ++ y = tsr.test1(0); ++ z += y; ++ System.out.println("After 'test1' y=" + y); ++ y = tsr.test2(0); ++ z += y; ++ System.out.println("After 'test2' y=" + y); ++ y = tsr.test3(0, new Point()); ++ z += y; ++ System.out.println("After 'test3' y=" + y); ++ y = tsr.test4(0); ++ z += y; ++ System.out.println("After 'test4' y=" + y); ++ y = tsr.test5(0, new Point()); ++ z += y; ++ System.out.println("After 'test5' y=" + y); ++ y = tsr.test6(0); ++ z += y; ++ System.out.println("After 'test6' y=" + y); ++ y = tsr.test7(0, new Point()); ++ z += y; ++ System.out.println("After 'test7' y=" + y); ++ y = tsr.test8(0, 1, 0); ++ z += y; ++ System.out.println("After 'test8' y=" + y); ++ y = tsr.test9(0, 1, 0); ++ z += y; ++ System.out.println("After 'test9' y=" + y); ++ y = tsr.test10(0, 1, 0, cls); ++ z += y; ++ System.out.println("After 'test10' y=" + y); ++ y = tsr.test11(0); ++ z += y; ++ System.out.println("After 'test11' y=" + y); ++ y = tsr.test12(0); ++ z += y; ++ System.out.println("After 'test12' y=" + y); ++ System.out.println("Sum of y =" + z); ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6695810/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6695810/Test.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,56 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/* ++ * @test ++ * @bug 6695810 ++ * @summary null oop passed to encode_heap_oop_not_null ++ * @run main/othervm -Xbatch Test ++ */ ++ ++public class Test { ++ Test _t; ++ ++ static void test(Test t1, Test t2) { ++ if (t2 != null) ++ t1._t = t2; ++ ++ if (t2 != null) ++ t1._t = t2; ++ } ++ ++ public static void main(String[] args) { ++ Test t = new Test(); ++ for (int i = 0; i < 50; i++) { ++ for (int j = 0; j < 100; j++) { ++ test(t, t); ++ } ++ test(t, null); ++ } ++ for (int i = 0; i < 10000; i++) { ++ test(t, t); ++ } ++ test(t, null); ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6700047/Test6700047.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6700047/Test6700047.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,60 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/** ++ * @test ++ * @bug 6700047 ++ * @summary C2 failed in idom_no_update ++ * @run main Test6700047 ++ */ ++ ++public class Test6700047 { ++ public static void main(String[] args) { ++ for (int i = 0; i < 100000; i++) { ++ intToLeftPaddedAsciiBytes(); ++ } ++ } ++ ++ public static int intToLeftPaddedAsciiBytes() { ++ int offset = 40; ++ int q; ++ int r; ++ int i = 100; ++ int result = 1; ++ while (offset > 0) { ++ q = (i * 52429); ++ r = i; ++ offset--; ++ i = q; ++ if (i == 0) { ++ break; ++ } ++ } ++ if (offset > 0) { ++ for(int j = 0; j < offset; j++) { ++ result++; ++ } ++ } ++ return result; ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6712835/Test6712835.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6712835/Test6712835.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,1578 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/** ++ * @test ++ * @bug 6712835 ++ * @summary Server compiler fails with assertion (loop_count < K,"infinite loop in PhaseIterGVN::transform") ++ * @run main/othervm -Xcomp Test6712835 ++ */ ++ ++/* Complexity upper bound: 349851 ops */ ++ ++abstract class Tester_Class_0 { ++ boolean var_1 = true; ++ static double var_2; ++ float var_3 = 1.8301116E38F; ++ final String var_4 = "wck"; ++ final static short var_5 = 25624; ++ ++ ++ public Tester_Class_0() ++ { ++ var_2 = (byte)1.7374809293839066E308; ++ { ++ double var_18 = false ? 8027040614338917376L * var_3 + - (var_2 = var_5) : (var_3 += (char)4.491494085158084E307); ++ var_3 *= ~ ((byte)702579792) / 6600332715431236608L; ++ long var_19 = 0L; ++ var_18 -= 1759091496; ++ do ++ { ++ final long var_20 = (new long[(byte)(var_3 += + +1.6695243696502334E308)][(byte)((byte)1110410742 | ~var_19)])[var_1 & var_1 ? (byte)1047514041090199552L : (byte)var_5][(byte)(var_1 ? 123309551 : - ((byte)5932930312361050112L))]; ++ var_19++; ++ final short var_21 = var_5; ++ } while (var_19 < 1 && var_1 ^ var_3 == + ((byte)var_5)); ++ { ++ int var_22; ++ } ++ { ++ var_4.endsWith("o"); ++ } ++ int var_23 = 0; ++ var_1 &= (var_1 = true); ++ for (byte var_24 = 26; (var_1 = !var_1) && var_23 < 1; var_18 += var_1 ^ (var_1 |= false) ^ true ? var_24 : (byte)1504077779675035648L) ++ { ++ var_18 *= var_23; ++ var_23++; ++ float var_25; ++ (((new Tester_Class_0[var_24][var_24][var_24])[var_24])[var_24 >>= var_19][var_24 &= 6702582681202665472L]).var_3 *= var_5; ++ } ++ var_1 = (var_3 -= var_5) > (byte)func_2(1317089759, var_5, (byte)var_19) % (false & true ? 475183200 : 8947159119888251904L); ++ var_18 /= ~var_19 ^ ((byte)(var_18 %= (int)var_5) >= 6773554922270913536L ? (byte)var_5 : (byte)'u'); ++ var_3 = ~ ((byte)var_19); ++ } ++ double var_26 = 0; ++ var_1 &= (var_1 |= ! (var_1 |= true)); ++ while (var_26 < 1) ++ { ++ var_2 = 'e'; ++ var_26++; ++ var_1 ^= !true | 'j' * ((var_2 = 93384362) + var_5) <= var_5; ++ var_2 = true ? 2056852215 : var_5; ++ } ++ switch ((new char[(byte)var_3])[(byte)(short)var_4.charAt(438929928)] / (new byte[(byte)1779353916050551808L][(byte)+ ~8903539475459755008L])[(byte)836413337621087232L][(byte)784406244]) ++ { ++ case 101: ++ var_3 -= var_5; ++ break; ++ ++ case 'L': ++ ++ case 20: ++ final int var_27 = 2146473580; ++ break; ++ ++ case 18: ++ ++ default: ++ "mwh".substring((byte)(float)'A' % var_5, ']' | var_5 ^ ~ ((byte)'E')); ++ break; ++ ++ case 'H': ++ ++ } ++ var_3 = var_5; ++ long var_28; ++ var_28 = (var_1 = 'u' != (var_3 = var_1 ? 1384770002488557568L : ~ ~6691557565676772352L)) ? - ((byte)938410603) : var_5; ++ ((new Tester_Class_0[(byte)var_26])[(byte)'w']).var_3 = (byte)(short)'I'; ++ var_2 = (var_1 ^= "sfltwylm".startsWith("ytmeds")) ? 1837260339 * 434565574 : (new double[(byte)var_26])[(byte)var_3]; ++ } ++ ++ ++ ++ public boolean equals(Object obj) ++ { ++ var_2 = 785819716 / 'i'; ++ switch ((! (var_1 ^= var_1) ^ (! ((false | (var_1 |= var_1)) ^ !false) ? false : (var_1 |= !false)) ? var_1 : ! !var_1 ^ var_1) ? 1426689390 : var_5 * var_5) ++ { ++ case '`': ++ ++ case 89: ++ ++ case 13: ++ char var_9 = 'W'; ++ break; ++ ++ case 31: ++ ++ case 15: ++ ++ case 'm': ++ var_1 &= var_1; ++ break; ++ ++ case 'Z': ++ ++ case 34: ++ String[] var_10 = (new String[(byte)5534253842608756736L][(byte)'M'])[(byte)8717534666212195328L]; ++ break; ++ ++ case 124: ++ ++ } ++ var_3 += var_5; ++ var_1 |= (var_1 |= (var_1 = (var_1 |= var_5 >= (var_2 = (byte)var_3)))); ++ var_1 ^= (var_1 = var_4.endsWith(new String())); ++ var_2 = (var_3 %= 664966429); ++ { ++ var_4.lastIndexOf((int)('i' * (! !true & (true & !var_1) ? (byte)2.2562587635371023E307 : (byte)(var_3 %= var_3)) / var_3), 'P' % (false ? (byte)'N' : (byte)943393108)); ++ } ++ var_3 /= false | ! !var_1 ? (char)1.3721055E38F : '\\'; ++ if (var_1) ++ { ++ var_4.compareTo("uaqmqwg"); ++ } ++ else ++ { ++ var_1 ^= var_1 & (var_1 &= (var_1 ^= (var_1 ^= var_1))); ++ } ++ var_3 *= (new int[(byte)1980200282][(byte)'i'])[(byte)(var_2 = (byte)'O')][false ? (byte)2.4739911E38F : (byte)- ((byte)1.6045903096088714E308)]; ++ var_1 = var_5 != (byte)var_5 & (1.5002759009669559E308 < (byte)5110733568033040384L ^ (var_1 ? (var_1 ^= true) : var_1)); ++ long var_11; ++ return (var_2 = (byte)'B') < 550125954; ++ } ++ ++ ++ public static char func_0(final int arg_0, long[] arg_1, final boolean arg_2) ++ { ++ var_2 = (short)(false ? (byte)1.2577737E38F : (byte)'t'); ++ "xdf".codePointBefore((!arg_2 ? (byte)1426638765 : (byte)541094055) * ((byte)var_5 / var_5)); ++ ((new Tester_Class_0[(byte)(short)(var_2 = 'A')])[(byte)arg_0]).var_3 = 7823141134226481152L; ++ ((new Tester_Class_0[(byte)- ~1368497135389664256L])[!false || true ? (byte)2.5393905E38F : (byte)2.4415902E38F]).var_3 -= (int)(false ? (byte)var_5 : (byte)"musnlk".charAt(785792957)); ++ ((new Tester_Class_0[(byte)357672172])[(byte)7.709380171237795E307]).var_3 = arg_0; ++ ((new Tester_Class_0[(byte)var_5])[(byte)('Z' / + + -2.6037312E38F)]).var_3 %= arg_2 ? + - - + - + +4.6761156E37F : (byte)- (var_2 = - - ~3113191255384341504L); ++ (("exseqpham" + "uigdxg").equalsIgnoreCase("oeutvibnv") ? "l" : "qra").replace(false ^ true ? 't' : "jwpf".charAt(+ ((byte)arg_0)), 6.624090730243228E307 > 2.7771497E38F ? 't' : "tcfesyg".charAt(arg_0)); ++ ((new Tester_Class_0[(byte)arg_0][(byte)6943189372481268736L])[(byte)2.6713643513095145E307][(byte)var_5]).var_1 &= !"ipgqq".endsWith("aecnyvpmf"); ++ ((new Tester_Class_0[(byte)(+ +2158971337956592640L ^ var_5)])[false ? (byte)8594725249859841024L : (byte)var_5]).var_3 = (byte)"jd".charAt((byte)1.6298661301128909E307 << (byte)'B'); ++ var_2 = (float)1014982842 * (byte)var_5 * ((new Tester_Class_0[(byte)2.7842814E38F])[(byte)"n".charAt('e' ^ (byte)arg_0)]).var_3; ++ if (false) ++ { ++ ((new Tester_Class_0[(byte)8.702990410251979E307][(byte)8.865924E37F])[(byte)var_5][(byte)+ ((long)var_5)]).var_1 ^= arg_2; ++ } ++ else ++ { ++ ((new Tester_Class_0[(byte)('I' | var_5)])[(byte)('L' + (+ - - (var_2 = 'N') + 1.324025E38F))]).var_3 = var_5 % '[' + (byte)var_5; ++ } ++ ((new Tester_Class_0[(byte)7.41761E37F][(byte)(var_2 = var_5)])[(byte)var_5][(byte)'o']).var_1 &= false; ++ ((new Tester_Class_0[(byte)+ ((byte)7.9065203E37F)])[(byte)var_5]).var_1 ^= 630582880 > - (var_2 = var_5); ++ return 'K'; ++ } ++ ++ protected float func_1(int arg_0, final Object arg_1, Object arg_2) ++ { ++ var_1 ^= (var_1 ^= true) & !var_1; ++ { ++ var_3 -= var_3; ++ var_2 = var_1 && (var_1 &= ! !true) | + ~3353396000385141760L < 7949306917320622080L ? (byte)306954754 : (byte)var_5; ++ final long var_12 = 1048994076885686272L; ++ } ++ short var_13 = 8706; ++ byte var_14 = (new byte[(byte)6.697464316212731E307])[(byte)var_4.indexOf("clbr", (byte)var_5 + 'F')]; ++ ((new Tester_Class_0[var_14][var_14 &= 'b'])[var_14][var_14]).var_1 |= var_14 >= var_3; ++ (((new String[var_14][var_14])[var_14])[var_14]).codePointAt(585064460); ++ var_14 -= 2121015302; ++ var_2 = 1.241922E38F; ++ { ++ (((new Tester_Class_0[var_14][var_14 ^= 'y'])[var_14])[var_14 |= var_14]).var_3 *= 5756647686007829504L; ++ } ++ { ++ var_13--; ++ } ++ double var_15; ++ var_1 = (var_1 = true) ? false : true; ++ arg_0--; ++ return var_3; ++ } ++ ++ public final static short func_2(int arg_0, final short arg_1, byte arg_2) ++ { ++ arg_0 %= (((new Tester_Class_0[arg_2][arg_2])[arg_2++][--arg_2]).var_1 |= true) ? 'e' : var_5 >>> arg_2; ++ float var_16 = ((false ? ~3951083684045828096L >>> - -3880809660598466560L : arg_0) ^ arg_1) - 1.1257035E37F; ++ var_2 = var_5 + 3.3679594E38F; ++ arg_2 += true & (((new Tester_Class_0[arg_2])[arg_2 *= 4301185995603340288L]).var_1 = arg_1 != arg_1) ? (var_2 = arg_0) : 988311987505040384L + ']' >>> --arg_2; ++ arg_2 = arg_2; ++ var_16 /= (arg_2 += (arg_0 += (var_16 %= arg_2)) + (var_16 -= arg_2)); ++ var_16 += 7416220016668043264L; ++ ((new Tester_Class_0[arg_2])[arg_2]).var_1 &= false; ++ ((new Tester_Class_0[--arg_2])[--arg_2]).var_1 = true | (true & true ? true : false); ++ arg_2 -= (var_2 = 7997355759027275776L); ++ ((new Tester_Class_0[arg_2])[arg_2 %= 8660960251961819136L]).var_3 *= 4180634858198604800L; ++ arg_0 /= -1.3063173E38F; ++ var_2 = arg_2; ++ var_2 = (6266377813429248L ^ 'j') / (!false & (1.1423139843154216E308 >= (var_2 = arg_2) || (((new Tester_Class_0[arg_2])[arg_2]).var_1 ^= true)) ? (short)('e' * arg_0) : var_5); ++ --arg_0; ++ var_2 = (+ - ~8598445599816821760L << arg_1) % 1890075208 & (!true & !true ^ false & false ? 'w' : 'm') % (5614521287604667392L / arg_2) & ~193105176465084416L; ++ arg_2 &= (arg_2 |= arg_0) ^ ((((new Tester_Class_0[arg_2][arg_2])[arg_2])[arg_2]).var_1 ? arg_2 : (new long[arg_2])[arg_2]); ++ ((new Tester_Class_0[arg_2 &= 'V'][arg_2])[arg_2 /= 5486057194586717184L][arg_2 %= var_16]).var_1 |= (new boolean[((new Tester_Class_0[arg_2])[arg_2]).var_1 ? arg_2 : arg_2])[arg_2]; ++ return ((((new Tester_Class_0[arg_2][arg_2][arg_2])[--arg_2])[arg_2 |= arg_2][arg_2 %= 6782653882738869248L]).var_1 ? false : !true | "hopq".equalsIgnoreCase("wvm") | "qmhtjvm".endsWith("gewqas")) && ! !false & false ? arg_1 : arg_1; ++ } ++ ++ protected final static char func_3(byte arg_0, final int arg_1, final short arg_2, long[] arg_3) ++ { ++ ((new Tester_Class_0[arg_0 ^= 1902924521091955712L])[arg_0]).var_1 &= ((((new Tester_Class_0[arg_0][arg_0])[--arg_0])[arg_0 *= - -1.0959788E38F]).var_1 = false); ++ { ++ var_2 = (new float[arg_0][(byte)1082004329])[arg_0][arg_0 <<= 'T']; ++ } ++ ((new Tester_Class_0[arg_0 >>= arg_1][arg_0])[arg_0][arg_0]).var_1 |= ((new Tester_Class_0[arg_0])[--arg_0]).var_4.startsWith(((new Tester_Class_0[arg_0])[arg_0]).var_4); ++ ((new Tester_Class_0[(byte)var_5])[arg_0]).var_4.substring(273513722, 'f' * 'n').substring((new short[arg_0][arg_0])[arg_0][arg_0] % 'C' >> (arg_3[arg_0] - 's') % ("".charAt(arg_1) & var_5)); ++ var_2 = 'Q' + (char)arg_0; ++ { ++ ((new Tester_Class_0[++arg_0])[arg_0]).var_1 ^= !true || !true ? !false ^ false : ! (1.7030813E38F != ~arg_0); ++ } ++ { ++ "jbdu".indexOf(((new Tester_Class_0[arg_0 *= 2628674024589069312L])[arg_0 -= arg_1]).var_4, "gqglwwbab".charAt(~arg_0) >>> 'M'); ++ } ++ { ++ --arg_0; ++ } ++ ((new Tester_Class_0[arg_0])[arg_0]).var_1 = 'n' == ('t' | (+9156142987836739584L | 's')) - 2915339344736463872L; ++ int var_17; ++ var_17 = 'k'; ++ var_17 = (((new Tester_Class_0[arg_0])[arg_0]).var_1 &= false) ? (short)'q' : arg_2; ++ return '`'; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_0.var_5 = "; result += Test6712835.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_0.var_4 = "; result += Test6712835.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_0.var_1 = "; result += Test6712835.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_0.var_2 = "; result += Test6712835.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_0.var_3 = "; result += Test6712835.Printer.print(var_3); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_1 extends Tester_Class_0 { ++ final boolean var_29 = false; ++ static short var_30; ++ Tester_Class_0 var_31; ++ ++ ++ public Tester_Class_1() ++ { ++ new String(); ++ byte var_43 = (var_1 ? var_29 : var_1) ? (byte)(~ ~ ~6520122970162626560L | ~6642750731731981312L) : (byte)(var_30 = var_5); ++ { ++ var_2 = Tester_Class_0.var_5; ++ } ++ ((Tester_Class_0)(new Object[var_43])[var_43]).var_1 = var_29; ++ var_43 += 512311665; ++ } ++ ++ ++ ++ ++ final int func_0() ++ { ++ Tester_Class_0.var_2 = var_29 ? (var_29 ? (byte)'D' : (byte)Tester_Class_0.var_5) : (!var_1 ^ var_1 | (var_1 ^= var_1) ? (byte)'J' : (byte)51510881); ++ new String(); ++ new String(); ++ new String(); ++ return 1731501229; ++ } ++ ++ private final static void func_1(final String arg_0, final Object arg_1) ++ { ++ long var_32 = ((new Tester_Class_1[(byte)37719380])['I' == Tester_Class_0.var_5 + Tester_Class_0.var_5 ? (byte)(var_30 = (byte)1.3043569561522328E308) : (byte)1.1111420042091164E308]).var_1 ? ~2569063513521638400L - Tester_Class_0.var_5 ^ 'm' : 660383226; ++ ((Tester_Class_0)arg_1).var_3 += (char)8417109805993570304L; ++ var_30 = var_5; ++ var_2 = (new byte[(byte)2102078692])[(byte)7.942050823719592E307]; ++ if (((new Tester_Class_1[(byte)224717297])[(byte)2889830453578512384L]).var_1) ++ { ++ Tester_Class_0.var_2 = (new byte[(byte)'C'])[(byte)Tester_Class_0.var_5]; ++ } ++ else ++ { ++ var_32 <<= 'u'; ++ } ++ Tester_Class_0.var_2 = Tester_Class_0.var_5; ++ final Object var_33 = arg_1; ++ final byte var_34 = 40; ++ ++var_32; ++ (((new Tester_Class_1[var_34][var_34])[var_34][var_34]).var_31 = ((new Tester_Class_0[var_34][var_34])[var_34])[var_34]).var_1 ^= (((new Tester_Class_1[var_34][var_34])[var_34][var_34]).var_31 = (Tester_Class_0)var_33).var_1; ++ ((new Tester_Class_1[var_34])[var_34]).var_31 = (((new Tester_Class_1[var_34])[((new Tester_Class_1[var_34][var_34])[var_34][var_34]).var_1 ? var_34 : var_34]).var_31 = (((new Tester_Class_1[(byte)2.4941036E38F])[var_34]).var_31 = (Tester_Class_0)arg_1)); ++ } ++ ++ public static int[][] func_2(long arg_0, final float arg_1, short arg_2, final double arg_3) ++ { ++ long var_35; ++ { ++ arg_0++; ++ var_2 = true ? (byte)9.691601510156328E307 : (byte)"a".charAt(~ ((byte)arg_1)); ++ if (((new Tester_Class_1[(byte)'\\'][(byte)arg_2])[(byte)arg_2][(byte)arg_0]).var_29) ++ { ++ arg_2++; ++ } ++ else ++ { ++ Tester_Class_0.var_2 = arg_2; ++ var_30 = arg_2; ++ Tester_Class_0.var_2 = arg_0; ++ } ++ arg_2 /= 157487965; ++ arg_2 -= func_2(~ ((byte)arg_0), (short)arg_3, (byte)+2.2503214E38F); ++ } ++ arg_0--; ++ double var_36; ++ arg_0 <<= (arg_0 >>= (arg_0 = 'O')); ++ { ++ arg_0++; ++ --arg_0; ++ } ++ --arg_2; ++ ++arg_2; ++ "gbcrkn".length(); ++ var_30 = (short)7.14672E37F; ++ { ++ arg_0 %= (arg_0 >>= (arg_2 *= (byte)1.5835087622116814E308)) % arg_3; ++ var_36 = 'n'; ++ int[][] var_37 = new int[(byte)(double)arg_0][(byte)(arg_2 >>= 'o')]; ++ if ((byte)1390907656194158592L <= arg_2) ++ { ++ "uuoeps".indexOf("", 899321600); ++ } ++ else ++ { ++ var_36 = - ~ -arg_0; ++ } ++ short var_38 = var_5; ++ var_36 = ~arg_0 + (6482428938632186880L + 6995927649252739072L); ++ } ++ if (((new Tester_Class_1[(byte)arg_1][(byte)arg_2])[(new byte[(byte)arg_0])[(byte)var_5]][(byte)'s']).var_1 = false) ++ { ++ ++arg_0; ++ } ++ else ++ { ++ ((new Tester_Class_1[(byte)2.7176027E38F])[(byte)((arg_2 -= 2.595396436487417E307) % 'p')]).var_1 ^= ((new Tester_Class_1[(byte)4.393706E36F])[false ? (byte)4826960994531808256L : (byte)arg_0]).var_29; ++ } ++ int var_39 = 0; ++ arg_2 <<= 'Y'; ++ while (var_39 < 1 && false) ++ { ++ arg_0++; ++ var_39++; ++ Object var_40; ++ ((Tester_Class_0)(var_40 = new long[(byte)3.285531E38F])).var_3 += var_39; ++ } ++ Object var_41; ++ "w".substring(1359453539); ++ return new int[(byte)((arg_2 /= 4.143015135482291E307) - 3.2659622E38F)][(byte)++arg_2]; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_1.var_5 = "; result += Test6712835.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_1.var_30 = "; result += Test6712835.Printer.print(var_30); ++ result += "\n"; ++ result += "Tester_Class_1.var_4 = "; result += Test6712835.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_1.var_1 = "; result += Test6712835.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_1.var_29 = "; result += Test6712835.Printer.print(var_29); ++ result += "\n"; ++ result += "Tester_Class_1.var_2 = "; result += Test6712835.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_1.var_3 = "; result += Test6712835.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_1.var_31 = "; result += Test6712835.Printer.print(var_31); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_2 extends Tester_Class_0 { ++ static float var_44 = 2.7867988E38F; ++ static byte var_45; ++ static long var_46 = 4319798868443575296L; ++ ++ ++ public Tester_Class_2() ++ { ++ Tester_Class_1.var_30 = (byte)3.1718026E38F; ++ var_45 = (new byte[(byte)'o'])[var_45 = (byte)Tester_Class_0.var_5]; ++ Tester_Class_1.var_30 = (Tester_Class_1.var_30 = Tester_Class_0.var_5); ++ if (true) ++ { ++ ++var_46; ++ boolean var_51 = false ? (var_1 &= !var_1) : true; ++ --var_46; ++ if (false) ++ { ++ var_3 *= 6.882788442363403E307; ++ } ++ else ++ { ++ Tester_Class_0.var_2 = '`'; ++ } ++ final float var_52 = (var_1 ^= var_1 || (var_1 &= false)) | (var_51 |= (var_51 &= false)) ? (byte)4.751813848964725E307 : (var_3 *= var_5); ++ (false ? var_4 : var_4).startsWith("j" + var_4); ++ var_46++; ++ var_3 %= Tester_Class_1.var_5; ++ } ++ else ++ { ++ Tester_Class_1.var_30 = (var_45 = (var_45 = (var_45 = (byte)Tester_Class_1.var_5))); ++ Tester_Class_1.var_2 = (var_3 -= ~ ((byte)var_46) - 2018787280); ++ Tester_Class_1.var_30 = (Tester_Class_1.var_30 = (Tester_Class_1.var_30 = (Tester_Class_1.var_30 = var_5))); ++ } ++ char var_53; ++ ++var_46; ++ short var_54 = 138; ++ ++var_46; ++ var_2 = 1435782089; ++ Tester_Class_0.var_2 = var_46; ++ } ++ ++ ++ ++ ++ protected final boolean func_0(final boolean arg_0, final boolean arg_1) ++ { ++ var_2 = 2.6153986361247174E307; ++ var_45 = (var_45 = (var_45 = (var_45 = (var_45 = (byte)(var_44 += var_46))))); ++ var_46++; ++ long var_47 = 0L; ++ var_3 -= + ((byte)(~var_46 * ~var_46 ^ var_46 % 1910419567)); ++ do ++ { ++ ++var_46; ++ var_47++; ++ char var_48 = 'b'; ++ } while (var_47 < 2); ++ new Tester_Class_1().var_31 = ((new Tester_Class_1[var_45 = (byte)3.0853839E38F])[(new byte[var_45 = (byte)1.4974966426791287E308])[var_45 = (byte)Tester_Class_0.var_5]]).var_1 ? new Tester_Class_1() : new Tester_Class_1(); ++ var_45 = (var_45 = (byte)var_44); ++ double var_49 = 0; ++ var_45 = (byte)(Tester_Class_1.var_30 = Tester_Class_0.var_5); ++ while (((false ^ (var_1 &= var_1) | (var_1 |= arg_0) ? new Tester_Class_1() : new Tester_Class_1()).var_29 ? var_1 : false && (var_1 ^= arg_0)) && (var_49 < 3 && (true ? new Tester_Class_1() : new Tester_Class_1()).var_1)) ++ { ++ var_45 = (var_45 = (var_45 = (var_45 = (var_45 = (byte)1.933612E38F)))); ++ var_49++; ++ var_45 = (var_45 = (var_45 = (var_45 = (byte)685709636))); ++ long var_50; ++ } ++ var_45 = (var_45 = (var_45 = (byte)var_5)); ++ var_46--; ++ return true; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_2.var_46 = "; result += Test6712835.Printer.print(var_46); ++ result += "\n"; ++ result += "Tester_Class_2.var_2 = "; result += Test6712835.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_2.var_3 = "; result += Test6712835.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_2.var_44 = "; result += Test6712835.Printer.print(var_44); ++ result += "\n"; ++ result += "Tester_Class_2.var_5 = "; result += Test6712835.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_2.var_45 = "; result += Test6712835.Printer.print(var_45); ++ result += "\n"; ++ result += "Tester_Class_2.var_4 = "; result += Test6712835.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_2.var_1 = "; result += Test6712835.Printer.print(var_1); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_3 extends Tester_Class_0 { ++ static boolean var_55 = true; ++ short var_56; ++ char var_57 = (char)723612093; ++ final static byte var_58 = 118; ++ static float var_59 = true ? -2818156175448416256L : - - (Tester_Class_2.var_44 += var_58); ++ static Tester_Class_1 var_60; ++ byte var_61 = 112; ++ Tester_Class_2[] var_62; ++ static short var_63 = 19813; ++ static double var_64 = (var_55 = true) ? (Tester_Class_1.var_2 = 'M') : Tester_Class_2.var_46; ++ ++ ++ public Tester_Class_3() ++ { ++ var_56 = var_58; ++ Tester_Class_1 var_65 = var_60 = (var_60 = (var_60 = (new Tester_Class_1[var_61 |= '\\'])[(var_1 = true) || var_55 ? var_58 : var_61])); ++ var_64 /= 1253632965 * '`'; ++ Tester_Class_2.var_46 >>>= var_58; ++ (((var_61 = var_58) * (var_55 ? 1641980027 : var_63) >= 1490788063 ? var_65 : var_65).var_29 ? var_65 : var_65).var_31 = (new Tester_Class_2[var_58])[var_58]; ++ ++var_63; ++ new String(); ++ var_64 += var_55 ? (var_61 >>>= 'Q') : (var_63 <<= var_57); ++ ((new Tester_Class_2().var_3 >= Tester_Class_2.var_46 ? !var_55 : var_4.startsWith(var_4, 586086925)) ? "gjsdhuop" : "juqrt").substring(("pm" + ((new Tester_Class_2[var_61][var_58])[var_58][var_58]).var_4).codePointBefore((~var_61 << 3032688286897486848L) - Tester_Class_1.var_5), (var_61 += 4.0796373033184064E306) >> (Tester_Class_2.var_46 >>> var_58)); ++ var_63 -= (var_63 ^= var_57); ++ var_64 = var_5 - (Tester_Class_2.var_46 *= var_57); ++ Tester_Class_2.var_46 &= 7544159045139005440L; ++ var_55 |= false; ++ Tester_Class_2.var_46 = var_61; ++ } ++ ++ ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_3.var_57 = "; result += Test6712835.Printer.print(var_57); ++ result += "\n"; ++ result += "Tester_Class_3.var_62 = "; result += Test6712835.Printer.print(var_62); ++ result += "\n"; ++ result += "Tester_Class_3.var_2 = "; result += Test6712835.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_3.var_64 = "; result += Test6712835.Printer.print(var_64); ++ result += "\n"; ++ result += "Tester_Class_3.var_3 = "; result += Test6712835.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_3.var_59 = "; result += Test6712835.Printer.print(var_59); ++ result += "\n"; ++ result += "Tester_Class_3.var_5 = "; result += Test6712835.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_3.var_56 = "; result += Test6712835.Printer.print(var_56); ++ result += "\n"; ++ result += "Tester_Class_3.var_63 = "; result += Test6712835.Printer.print(var_63); ++ result += "\n"; ++ result += "Tester_Class_3.var_58 = "; result += Test6712835.Printer.print(var_58); ++ result += "\n"; ++ result += "Tester_Class_3.var_61 = "; result += Test6712835.Printer.print(var_61); ++ result += "\n"; ++ result += "Tester_Class_3.var_4 = "; result += Test6712835.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_3.var_1 = "; result += Test6712835.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_3.var_55 = "; result += Test6712835.Printer.print(var_55); ++ result += "\n"; ++ result += "Tester_Class_3.var_60 = "; result += Test6712835.Printer.print(var_60); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_4 { ++ static long var_66; ++ final long var_67 = 7113579489152300032L * 985636454; ++ int[] var_68; ++ Tester_Class_3 var_69; ++ final long var_70 = Tester_Class_2.var_46 <<= Tester_Class_1.var_5; ++ byte var_71 = Tester_Class_3.var_58; ++ ++ ++ public Tester_Class_4() ++ { ++ Tester_Class_2.var_46++; ++ (var_69 = new Tester_Class_3()).var_61 += (!true | (Tester_Class_3.var_55 ^= Tester_Class_3.var_55) ? new Tester_Class_3() : new Tester_Class_3()).var_61; ++ final String[][] var_79 = new String[var_71 >>= (Tester_Class_3.var_63 ^= 'm')][((Tester_Class_3)(new Tester_Class_1().var_31 = new Tester_Class_2())).var_61 >>= (var_71 >>>= (Tester_Class_2.var_46 += 465205188010511360L))]; ++ ++(var_69 = (var_69 = (var_69 = (Tester_Class_3)(new Object[Tester_Class_3.var_58][var_71])[Tester_Class_3.var_58][var_71]))).var_61; ++ (((new Tester_Class_2[var_71][Tester_Class_3.var_58])[Tester_Class_2.var_45 = var_71])[var_71]).var_3 += (Tester_Class_2.var_46 <<= (Tester_Class_2.var_46 /= 9.03047405760868E307) >> (new Tester_Class_2().var_1 ? 2099696051 : Tester_Class_3.var_63)); ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = new Tester_Class_1()))); ++ char var_80; ++ Tester_Class_3.var_64 += 355712574; ++ ++Tester_Class_2.var_46; ++ } ++ ++ ++ ++ ++ private final static Tester_Class_1 func_0(boolean arg_0, double arg_1) ++ { ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = new Tester_Class_1()); ++ byte var_72 = (byte)Tester_Class_2.var_46; ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = new Tester_Class_1())))); ++ float var_73 = 0F; ++ "flfix".offsetByCodePoints((Tester_Class_3.var_63 ^= 3286104714651747328L) + ((Tester_Class_3)(new Tester_Class_0[var_72])[var_72]).var_61, Tester_Class_0.var_5 + Tester_Class_3.var_58); ++ while (var_73 < 2 && (false ? (Tester_Class_3.var_60 = new Tester_Class_1()) : (Tester_Class_1)(new Tester_Class_0[var_72])[var_72]).var_29) ++ { ++ ((Tester_Class_3)(Tester_Class_0)(new Object[var_72])[Tester_Class_3.var_58]).var_61 >>= ((new Tester_Class_4[var_72])[var_72]).var_67; ++ var_73++; ++ new String("blod"); ++ --var_72; ++ } ++ ((new Tester_Class_4[Tester_Class_3.var_58][var_72])[new Tester_Class_3().var_61][Tester_Class_3.var_58]).var_69 = new Tester_Class_3(); ++ float var_74 = (! ("dkcx".lastIndexOf(Tester_Class_1.var_5 >> - (var_72 >>>= 1433506903139345408L)) == Tester_Class_2.var_46) ? 'O' : 'e' - new Tester_Class_2().var_3) * ~ (var_72 ^= var_72); ++ Tester_Class_3.var_60 = !true ? new Tester_Class_1() : (new Tester_Class_1[Tester_Class_3.var_58])[var_72]; ++ ((arg_0 &= Tester_Class_3.var_55 | (Tester_Class_3.var_60 = new Tester_Class_1()).var_29) ? (Tester_Class_3.var_60 = (Tester_Class_1)(new Tester_Class_1().var_31 = new Tester_Class_2())) : (Tester_Class_3.var_60 = (new Tester_Class_1[var_72])[Tester_Class_3.var_58])).var_31 = (new Tester_Class_3[var_72 |= 546982927])[Tester_Class_3.var_58]; ++ long var_75 = 0L; ++ final double var_76 = +arg_1; ++ while (var_75 < 1) ++ { ++ short var_77; ++ var_75++; ++ new Tester_Class_3().var_57 = (false & true ? new Tester_Class_3() : new Tester_Class_3()).var_57; ++ (Tester_Class_3.var_60 = (new Tester_Class_1[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_31 = (new Tester_Class_2[Tester_Class_3.var_58][var_72])[var_72][var_72]; ++ } ++ Tester_Class_3.var_64 *= (arg_0 ? (Tester_Class_3.var_55 ^= (arg_0 ^= arg_0)) & ! (Tester_Class_3.var_55 = arg_0) : arg_0) ^ new Tester_Class_1().var_29 ? ++((new Tester_Class_3[var_72][var_72])[(new byte[Tester_Class_3.var_58])[Tester_Class_3.var_58]][(((new Tester_Class_4[var_72][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_3.var_58]).var_69 = (new Tester_Class_3[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_61]).var_57 : 'C'; ++ long var_78; ++ var_74 %= (Tester_Class_3.var_55 |= (arg_0 = (arg_0 ^= (arg_0 &= !arg_0)))) ? new Tester_Class_3().var_61 : (Tester_Class_3.var_63 ^= var_72); ++ arg_1 /= (Tester_Class_2.var_46 &= 'W'); ++ --(((new Tester_Class_4[var_72])[var_72]).var_69 = (((new Tester_Class_4[var_72])[var_72]).var_69 = new Tester_Class_3())).var_61; ++ return (new Tester_Class_1[var_72][Tester_Class_3.var_58])[var_72][new Tester_Class_3().var_61]; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_4.var_68 = "; result += Test6712835.Printer.print(var_68); ++ result += "\n"; ++ result += "Tester_Class_4.var_66 = "; result += Test6712835.Printer.print(var_66); ++ result += "\n"; ++ result += "Tester_Class_4.var_67 = "; result += Test6712835.Printer.print(var_67); ++ result += "\n"; ++ result += "Tester_Class_4.var_70 = "; result += Test6712835.Printer.print(var_70); ++ result += "\n"; ++ result += "Tester_Class_4.var_71 = "; result += Test6712835.Printer.print(var_71); ++ result += "\n"; ++ result += "Tester_Class_4.var_69 = "; result += Test6712835.Printer.print(var_69); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_5 extends Tester_Class_0 { ++ static boolean var_81; ++ final int var_82 = 174395841; ++ int var_83; ++ byte var_84; ++ boolean var_85 = Tester_Class_3.var_55; ++ static boolean var_86 = Tester_Class_3.var_55; ++ ++ ++ public Tester_Class_5() ++ { ++ { ++ short var_87 = (new short[Tester_Class_3.var_58][var_84 = Tester_Class_3.var_58])[(((new Tester_Class_4[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_69 = (Tester_Class_3)(Tester_Class_0)(new Object[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_61][Tester_Class_3.var_58]; ++ Tester_Class_4 var_88 = var_85 ^ (var_81 = false) ? (new Tester_Class_4[Tester_Class_3.var_58])[Tester_Class_3.var_58] : (new Tester_Class_4[Tester_Class_3.var_58])[Tester_Class_3.var_58]; ++ { ++ ++var_87; ++ } ++ short var_89; ++ (var_88.var_69 = (new Tester_Class_3[var_88.var_71][var_88.var_71])[var_88.var_71][var_88.var_71]).var_61 += (((Tester_Class_2)(new Tester_Class_1().var_31 = new Tester_Class_2())).var_3 = Tester_Class_3.var_58); ++ var_88 = var_88; ++ } ++ { ++ ++Tester_Class_2.var_46; ++ --Tester_Class_2.var_46; ++ } ++ { ++ Tester_Class_2.var_46++; ++ Tester_Class_3.var_64 /= Tester_Class_3.var_59; ++ ((Tester_Class_4)(new Object[Tester_Class_2.var_45 = Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_71 %= (var_3 /= 3637233239489444864L); ++ ++Tester_Class_2.var_46; ++ } ++ new Tester_Class_3().var_57++; ++ var_85 &= (Tester_Class_3.var_55 |= false); ++ Tester_Class_3.var_60 = new Tester_Class_1(); ++ Tester_Class_2.var_46++; ++ ((Tester_Class_3)(true ? (new Tester_Class_2[Tester_Class_3.var_58])[Tester_Class_3.var_58] : (new Tester_Class_0[Tester_Class_3.var_58])[Tester_Class_2.var_45 = Tester_Class_3.var_58])).var_57 *= ((new Tester_Class_3[Tester_Class_3.var_58])[(byte)'`']).var_57; ++ var_3 += (int)Tester_Class_3.var_59 ^ (Tester_Class_2.var_46 -= Tester_Class_2.var_46) % ~((new Tester_Class_4[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_71; ++ ++Tester_Class_2.var_46; ++ --Tester_Class_2.var_46; ++ var_83 = Tester_Class_3.var_58; ++ } ++ ++ ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_5.var_82 = "; result += Test6712835.Printer.print(var_82); ++ result += "\n"; ++ result += "Tester_Class_5.var_83 = "; result += Test6712835.Printer.print(var_83); ++ result += "\n"; ++ result += "Tester_Class_5.var_2 = "; result += Test6712835.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_5.var_3 = "; result += Test6712835.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_5.var_5 = "; result += Test6712835.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_5.var_84 = "; result += Test6712835.Printer.print(var_84); ++ result += "\n"; ++ result += "Tester_Class_5.var_4 = "; result += Test6712835.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_5.var_1 = "; result += Test6712835.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_5.var_81 = "; result += Test6712835.Printer.print(var_81); ++ result += "\n"; ++ result += "Tester_Class_5.var_85 = "; result += Test6712835.Printer.print(var_85); ++ result += "\n"; ++ result += "Tester_Class_5.var_86 = "; result += Test6712835.Printer.print(var_86); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_6 extends Tester_Class_0 { ++ long var_90 = 8467263472031702016L; ++ final static int var_91 = 1648594448 * ']'; ++ char var_92 = 'x'; ++ short var_93 = Tester_Class_3.var_63; ++ Tester_Class_4 var_94; ++ String[] var_95; ++ static short var_96 = Tester_Class_3.var_63 -= 83376045 << 40225606; ++ final static double var_97 = 5.387227213380301E307; ++ final static short var_98 = Tester_Class_3.var_63 &= var_91; ++ byte var_99 = 44; ++ ++ ++ public Tester_Class_6() ++ { ++ (Tester_Class_3.var_60 = (Tester_Class_1)(new Object[Tester_Class_3.var_58][var_99])[Tester_Class_3.var_58][var_99]).var_31 = true | true ? (Tester_Class_5)(new Object[var_99])[Tester_Class_3.var_58] : (Tester_Class_5)(new Object[Tester_Class_3.var_58])[var_99]; ++ var_92 &= 'p'; ++ Tester_Class_5.var_81 = (((new Tester_Class_1[var_99][Tester_Class_3.var_58])[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_29; ++ { ++ { ++ ++Tester_Class_2.var_46; ++ Tester_Class_3.var_2 = var_98; ++ var_93 -= var_96; ++ } ++ Tester_Class_2.var_46--; ++ { ++ (var_5 == (((Tester_Class_3)(new Tester_Class_0[var_99])[Tester_Class_3.var_58]).var_61 /= var_5) ? "fsajxeuao".replace('s', 'K') : var_4).substring('e' >>> var_5).toLowerCase(); ++ } ++ var_93 %= ((new Tester_Class_6[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_90; ++ var_93 /= var_93; ++ if (Tester_Class_5.var_86) ++ { ++ (var_94 = (new Tester_Class_4[var_99])[var_99]).var_69 = (new Tester_Class_3[var_99])[var_99 %= -var_90]; ++ } ++ else ++ { ++ --var_96; ++ } ++ var_93 *= 'O'; ++ final long var_103 = 7573900518735055872L; ++ --Tester_Class_3.var_63; ++ } ++ Tester_Class_3.var_64 /= var_93; ++ if (true) ++ { ++ --Tester_Class_2.var_46; ++ Tester_Class_5 var_104; ++ final double var_105 = Tester_Class_3.var_64 += Tester_Class_5.var_86 & (new Tester_Class_2().var_1 & ((Tester_Class_3.var_55 = (var_1 ^= Tester_Class_5.var_86) & false) & (Tester_Class_5.var_81 = Tester_Class_5.var_86))) ? (byte)'g' : var_99; ++ Tester_Class_3.var_64 *= var_99; ++ } ++ else ++ { ++ char var_106 = var_92 -= Tester_Class_3.var_58; ++ } ++ double[] var_107 = ((new double[Tester_Class_3.var_58][var_99][var_99])[var_99])[false ? Tester_Class_3.var_58 : Tester_Class_3.var_58]; ++ var_99 <<= (Tester_Class_3.var_63 >>= Tester_Class_3.var_58); ++ ++var_99; ++ } ++ ++ ++ ++ ++ final static byte func_0(final byte arg_0, final char arg_1, final Tester_Class_5[] arg_2) ++ { ++ ((Tester_Class_4)(new Object[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][arg_0]).var_69 = (Tester_Class_3)(new Tester_Class_0[Tester_Class_3.var_58])[Tester_Class_2.var_45 = Tester_Class_3.var_58]; ++ long var_100 = 0L; ++ Tester_Class_3.var_64 /= (Tester_Class_5.var_86 = true) || 'o' > (Tester_Class_3.var_63 -= (float)arg_0) ? var_98 : 1.7875238E38F; ++ do ++ { ++ Tester_Class_3.var_64 %= var_5; ++ var_100++; ++ Tester_Class_3.var_64 += var_96 + 'r'; ++ } while (true && (var_100 < 1 && (new Tester_Class_1().var_29 ? new Tester_Class_1() : (new Tester_Class_1[arg_0][Tester_Class_3.var_58])[arg_0][Tester_Class_3.var_58]).var_29)); ++ (Tester_Class_3.var_55 ^ (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = new Tester_Class_1()))).var_29 ? new Tester_Class_3() : new Tester_Class_3()).var_57 = ((((new Tester_Class_6[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_3.var_58]).var_94 = (((new Tester_Class_6[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][arg_0]).var_94 = (new Tester_Class_4[Tester_Class_3.var_58][arg_0])[Tester_Class_3.var_58][Tester_Class_3.var_58])).var_69 = new Tester_Class_3()).var_57; ++ final double var_101 = 1.6798216578519203E308; ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = false ? new Tester_Class_1() : (Tester_Class_3.var_60 = new Tester_Class_1())); ++ Tester_Class_2 var_102 = new Tester_Class_2(); ++ return Tester_Class_3.var_58; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_6.var_92 = "; result += Test6712835.Printer.print(var_92); ++ result += "\n"; ++ result += "Tester_Class_6.var_91 = "; result += Test6712835.Printer.print(var_91); ++ result += "\n"; ++ result += "Tester_Class_6.var_95 = "; result += Test6712835.Printer.print(var_95); ++ result += "\n"; ++ result += "Tester_Class_6.var_90 = "; result += Test6712835.Printer.print(var_90); ++ result += "\n"; ++ result += "Tester_Class_6.var_2 = "; result += Test6712835.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_6.var_97 = "; result += Test6712835.Printer.print(var_97); ++ result += "\n"; ++ result += "Tester_Class_6.var_3 = "; result += Test6712835.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_6.var_5 = "; result += Test6712835.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_6.var_93 = "; result += Test6712835.Printer.print(var_93); ++ result += "\n"; ++ result += "Tester_Class_6.var_96 = "; result += Test6712835.Printer.print(var_96); ++ result += "\n"; ++ result += "Tester_Class_6.var_98 = "; result += Test6712835.Printer.print(var_98); ++ result += "\n"; ++ result += "Tester_Class_6.var_99 = "; result += Test6712835.Printer.print(var_99); ++ result += "\n"; ++ result += "Tester_Class_6.var_4 = "; result += Test6712835.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_6.var_1 = "; result += Test6712835.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_6.var_94 = "; result += Test6712835.Printer.print(var_94); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++abstract class Tester_Class_7 { ++ final static char var_108 = '_'; ++ static Tester_Class_3 var_109; ++ final short var_110 = 4360; ++ short var_111; ++ Object var_112; ++ Tester_Class_4 var_113; ++ static Tester_Class_5 var_114; ++ final short var_115 = Tester_Class_6.var_96; ++ final static float var_116 = Tester_Class_3.var_59; ++ ++ ++ public Tester_Class_7() ++ { ++ --Tester_Class_2.var_46; ++ --Tester_Class_6.var_96; ++ var_113 = (new Tester_Class_4[new Tester_Class_6().var_99])[Tester_Class_3.var_58]; ++ --Tester_Class_2.var_46; ++ Tester_Class_6.var_96--; ++ Tester_Class_3.var_63 -= 'i'; ++ if (!Tester_Class_5.var_86) ++ { ++ Tester_Class_3.var_64 %= var_116; ++ if ((Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)(Tester_Class_0)(var_112 = "yosyghjm"))).var_29) ++ { ++ Tester_Class_2.var_46++; ++ } ++ else ++ { ++ (var_114 = (var_114 = (Tester_Class_5)(Tester_Class_0)(var_112 = "bxt"))).var_83 = (Tester_Class_2.var_45 = (Tester_Class_2.var_45 = Tester_Class_3.var_58)); ++ } ++ var_114 = (var_114 = (var_114 = (var_114 = (var_114 = (var_114 = (Tester_Class_5)(var_112 = "blrobgg")))))); ++ var_113 = (((Tester_Class_6)(var_112 = "popebwfp")).var_94 = (new Tester_Class_4[Tester_Class_3.var_58])[Tester_Class_3.var_58]); ++ } ++ else ++ { ++ Tester_Class_3.var_60 = new Tester_Class_1(); ++ } ++ final Tester_Class_6 var_122 = new Tester_Class_6(); ++ var_122.var_92 &= (var_122.var_92 |= var_108); ++ ((new Tester_Class_5[var_122.var_99])[((new Tester_Class_3[Tester_Class_3.var_58])[var_122.var_99--]).var_61]).var_83 = 1708230145; ++ } ++ ++ ++ ++ public boolean equals(Object obj) ++ { ++ (((Tester_Class_5.var_81 = (Tester_Class_5.var_81 = false)) ? (Tester_Class_3.var_55 &= false) : !Tester_Class_3.var_55 & ((Tester_Class_1)obj).var_29) ? (new Tester_Class_2[Tester_Class_3.var_58])[Tester_Class_3.var_58] : (Tester_Class_2)obj).equals((Tester_Class_5.var_86 |= Tester_Class_3.var_55) | (Tester_Class_3.var_55 = Tester_Class_3.var_55) ? obj : (Tester_Class_6)(Tester_Class_0)obj); ++ Tester_Class_3.var_64 *= 2.8258473339654136E307; ++ { ++ final int var_118 = 1248523063; ++ short var_119 = 30906; ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)obj); ++ ((Tester_Class_6)(((Tester_Class_1)obj).var_31 = ((var_113 = (Tester_Class_4)obj).var_69 = (Tester_Class_3)obj))).var_94 = (var_113 = (Tester_Class_4)(var_112 = (Tester_Class_1)obj)); ++ } ++ final Tester_Class_1 var_120 = false ^ (((Tester_Class_1)obj).var_1 = !true) ^ (((Tester_Class_6)(Tester_Class_0)obj).var_92 *= (((Tester_Class_3)obj).var_57 |= (Tester_Class_2.var_46 >>= 6986775136305733632L))) < (byte)Tester_Class_6.var_97 ? (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)obj)) : (true ? (Tester_Class_1)obj : (Tester_Class_1)obj); ++ (var_114 = (var_114 = (Tester_Class_5)obj)).var_83 = (((new Tester_Class_6[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_92 &= ((Tester_Class_4)obj).var_70 << (Tester_Class_2.var_45 = Tester_Class_3.var_58)); ++ var_114 = (Tester_Class_5)obj; ++ obj = ((Tester_Class_3.var_60 = var_120).var_29 ? false : false) ? (new Tester_Class_6[Tester_Class_3.var_58])[Tester_Class_3.var_58] : obj; ++ (var_120.var_29 ? (Tester_Class_6)(obj = (Tester_Class_3.var_60 = var_120)) : (new Tester_Class_6[Tester_Class_3.var_58])[((Tester_Class_3)obj).var_61 ^= Tester_Class_6.var_91]).var_90 ^= 2127530040436251648L; ++ Object var_121; ++ return (new boolean[Tester_Class_3.var_58])[((var_113 = (Tester_Class_4)obj).var_69 = (var_109 = (new Tester_Class_3[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_3.var_58])).var_61]; ++ } ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_7.var_108 = "; result += Test6712835.Printer.print(var_108); ++ result += "\n"; ++ result += "Tester_Class_7.var_116 = "; result += Test6712835.Printer.print(var_116); ++ result += "\n"; ++ result += "Tester_Class_7.var_110 = "; result += Test6712835.Printer.print(var_110); ++ result += "\n"; ++ result += "Tester_Class_7.var_111 = "; result += Test6712835.Printer.print(var_111); ++ result += "\n"; ++ result += "Tester_Class_7.var_115 = "; result += Test6712835.Printer.print(var_115); ++ result += "\n"; ++ result += "Tester_Class_7.var_114 = "; result += Test6712835.Printer.print(var_114); ++ result += "\n"; ++ result += "Tester_Class_7.var_113 = "; result += Test6712835.Printer.print(var_113); ++ result += "\n"; ++ result += "Tester_Class_7.var_109 = "; result += Test6712835.Printer.print(var_109); ++ result += "\n"; ++ result += "Tester_Class_7.var_112 = "; result += Test6712835.Printer.print(var_112); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_8 extends Tester_Class_7 { ++ static char var_123; ++ Tester_Class_4 var_124; ++ static short var_125; ++ ++ ++ public Tester_Class_8() ++ { ++ { ++ Tester_Class_3.var_64 -= (Tester_Class_2.var_46 *= Tester_Class_3.var_64); ++ { ++ Tester_Class_2.var_46--; ++ } ++ ++Tester_Class_3.var_63; ++ Tester_Class_5.var_86 |= true; ++ Tester_Class_6.var_96--; ++ } ++ "w".indexOf(312689020); ++ if (false) ++ { ++ (Tester_Class_7.var_114 = (new Tester_Class_5[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_83 = 'I'; ++ } ++ else ++ { ++ --Tester_Class_6.var_96; ++ } ++ switch (Tester_Class_5.var_86 ? Tester_Class_3.var_58 : Tester_Class_3.var_58) ++ { ++ case 95: ++ ++ case 35: ++ ++ } ++ Tester_Class_6.var_96--; ++ Tester_Class_3.var_64 *= 4.516167673347119E307; ++ --Tester_Class_3.var_63; ++ { ++ int var_126; ++ } ++ Tester_Class_3.var_60 = new Tester_Class_1(); ++ Tester_Class_2.var_46++; ++ ((new Tester_Class_6[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_99 &= Tester_Class_6.var_91; ++ ((new Tester_Class_1[((new Tester_Class_4[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_71])[((Tester_Class_3)(var_112 = "fsmtm")).var_61]).var_31 = (Tester_Class_2)(new Tester_Class_0[Tester_Class_3.var_58])[Tester_Class_3.var_58]; ++ } ++ ++ ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_8.var_108 = "; result += Test6712835.Printer.print(var_108); ++ result += "\n"; ++ result += "Tester_Class_8.var_123 = "; result += Test6712835.Printer.print(var_123); ++ result += "\n"; ++ result += "Tester_Class_8.var_116 = "; result += Test6712835.Printer.print(var_116); ++ result += "\n"; ++ result += "Tester_Class_8.var_110 = "; result += Test6712835.Printer.print(var_110); ++ result += "\n"; ++ result += "Tester_Class_8.var_111 = "; result += Test6712835.Printer.print(var_111); ++ result += "\n"; ++ result += "Tester_Class_8.var_115 = "; result += Test6712835.Printer.print(var_115); ++ result += "\n"; ++ result += "Tester_Class_8.var_125 = "; result += Test6712835.Printer.print(var_125); ++ result += "\n"; ++ result += "Tester_Class_8.var_114 = "; result += Test6712835.Printer.print(var_114); ++ result += "\n"; ++ result += "Tester_Class_8.var_113 = "; result += Test6712835.Printer.print(var_113); ++ result += "\n"; ++ result += "Tester_Class_8.var_124 = "; result += Test6712835.Printer.print(var_124); ++ result += "\n"; ++ result += "Tester_Class_8.var_109 = "; result += Test6712835.Printer.print(var_109); ++ result += "\n"; ++ result += "Tester_Class_8.var_112 = "; result += Test6712835.Printer.print(var_112); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_9 { ++ final static String var_127 = "pxk"; ++ Tester_Class_2 var_128; ++ final static char var_129 = '\\'; ++ static float var_130; ++ static boolean var_131; ++ final static float var_132 = Tester_Class_3.var_59; ++ static Tester_Class_0 var_133; ++ boolean[] var_134; ++ ++ ++ public Tester_Class_9() ++ { ++ Tester_Class_2.var_44 -= Tester_Class_3.var_58; ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (new Tester_Class_1[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_3.var_58])); ++ { ++ Tester_Class_8 var_136; ++ } ++ ++Tester_Class_2.var_46; ++ Tester_Class_6.var_96--; ++ var_128 = (var_128 = (var_128 = (Tester_Class_2)(var_133 = (new Tester_Class_1[Tester_Class_3.var_58])[Tester_Class_3.var_58]))); ++ ++Tester_Class_6.var_96; ++ ++Tester_Class_2.var_46; ++ Tester_Class_4 var_137; ++ var_128 = (var_128 = (new Tester_Class_2[Tester_Class_3.var_58])[Tester_Class_3.var_58]); ++ (Tester_Class_8.var_114 = (Tester_Class_8.var_114 = (new Tester_Class_5[Tester_Class_3.var_58])[Tester_Class_3.var_58])).var_83 = (((new Tester_Class_4[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_3.var_58]).var_69 = (new Tester_Class_3[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_3.var_58]).var_57++; ++ Tester_Class_2.var_46++; ++ } ++ ++ ++ ++ ++ protected static short func_1() ++ { ++ { ++ Tester_Class_3.var_63--; ++ } ++ Tester_Class_3.var_64 *= Tester_Class_2.var_46; ++ short var_135; ++ Tester_Class_3.var_64 -= Tester_Class_6.var_96; ++ return new Tester_Class_6().var_93; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_9.var_129 = "; result += Test6712835.Printer.print(var_129); ++ result += "\n"; ++ result += "Tester_Class_9.var_134 = "; result += Test6712835.Printer.print(var_134); ++ result += "\n"; ++ result += "Tester_Class_9.var_130 = "; result += Test6712835.Printer.print(var_130); ++ result += "\n"; ++ result += "Tester_Class_9.var_132 = "; result += Test6712835.Printer.print(var_132); ++ result += "\n"; ++ result += "Tester_Class_9.var_131 = "; result += Test6712835.Printer.print(var_131); ++ result += "\n"; ++ result += "Tester_Class_9.var_127 = "; result += Test6712835.Printer.print(var_127); ++ result += "\n"; ++ result += "Tester_Class_9.var_128 = "; result += Test6712835.Printer.print(var_128); ++ result += "\n"; ++ result += "Tester_Class_9.var_133 = "; result += Test6712835.Printer.print(var_133); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_10 extends Tester_Class_0 { ++ final static byte var_138 = 78; ++ Object var_139; ++ final static boolean var_140 = true; ++ float var_141 = 1.2816267E38F; ++ Tester_Class_8 var_142; ++ static Tester_Class_3 var_143; ++ short var_144 = var_1 ? (Tester_Class_6.var_96 &= 8024552544994698240L) : Tester_Class_0.var_5; ++ final boolean var_145 = var_140; ++ long var_146; ++ float[] var_147; ++ ++ ++ public Tester_Class_10() ++ { ++ "xuc".codePointCount(new Tester_Class_6().var_99 / ((new Tester_Class_9().var_128 = new Tester_Class_2()).var_1 ? var_138 : (int)(Tester_Class_3.var_64 += Tester_Class_3.var_64)), 882345740); ++ Tester_Class_3.var_64 /= Tester_Class_9.var_132; ++ Tester_Class_9.var_127.indexOf((Tester_Class_7.var_114 = (Tester_Class_8.var_114 = (Tester_Class_5)(var_139 = "mcyagebtv"))).var_83 = var_145 ? (Tester_Class_2.var_45 = Tester_Class_3.var_58) : Tester_Class_6.var_96); ++ --Tester_Class_2.var_46; ++ final float var_148 = 3.0263434E38F; ++ ((Tester_Class_7.var_114 = (Tester_Class_5)(Tester_Class_9.var_133 = new Tester_Class_1())).var_85 & ((Tester_Class_1)(var_139 = new Tester_Class_6())).var_1 ? "gmxwrgik" : Tester_Class_9.var_127).compareTo(var_4); ++ --Tester_Class_2.var_46; ++ new Tester_Class_6(); ++ ++Tester_Class_2.var_46; ++ Tester_Class_3.var_60 = Tester_Class_5.var_86 ? new Tester_Class_1() : new Tester_Class_1(); ++ { ++ --Tester_Class_6.var_96; ++ ((Tester_Class_7)(var_139 = new Tester_Class_1().var_4)).var_112 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)(var_139 = "gugsy"))); ++ } ++ Tester_Class_9.var_133 = (Tester_Class_3.var_60 = new Tester_Class_1()); ++ if (var_140 & !var_140) ++ { ++ Tester_Class_6.var_96++; ++ } ++ else ++ { ++ Tester_Class_2.var_46++; ++ } ++ { ++ ++new Tester_Class_6().var_92; ++ } ++ Tester_Class_7.var_109 = (((new Tester_Class_4[Tester_Class_3.var_58])[Tester_Class_3.var_58]).var_69 = (var_143 = new Tester_Class_3())); ++ Tester_Class_3.var_63--; ++ } ++ ++ ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_10.var_147 = "; result += Test6712835.Printer.print(var_147); ++ result += "\n"; ++ result += "Tester_Class_10.var_146 = "; result += Test6712835.Printer.print(var_146); ++ result += "\n"; ++ result += "Tester_Class_10.var_3 = "; result += Test6712835.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_10.var_141 = "; result += Test6712835.Printer.print(var_141); ++ result += "\n"; ++ result += "Tester_Class_10.var_5 = "; result += Test6712835.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_10.var_144 = "; result += Test6712835.Printer.print(var_144); ++ result += "\n"; ++ result += "Tester_Class_10.var_138 = "; result += Test6712835.Printer.print(var_138); ++ result += "\n"; ++ result += "Tester_Class_10.var_1 = "; result += Test6712835.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_10.var_140 = "; result += Test6712835.Printer.print(var_140); ++ result += "\n"; ++ result += "Tester_Class_10.var_145 = "; result += Test6712835.Printer.print(var_145); ++ result += "\n"; ++ result += "Tester_Class_10.var_139 = "; result += Test6712835.Printer.print(var_139); ++ result += "\n"; ++ result += "Tester_Class_10.var_142 = "; result += Test6712835.Printer.print(var_142); ++ result += "\n"; ++ result += "Tester_Class_10.var_2 = "; result += Test6712835.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_10.var_4 = "; result += Test6712835.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_10.var_143 = "; result += Test6712835.Printer.print(var_143); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++interface Tester_Interface_11 { ++ public Tester_Class_4 func_0(final int arg_0, final byte arg_1); ++ public Tester_Class_2 func_1(Tester_Class_5 arg_0, final Tester_Class_0 arg_1, final int arg_2); ++} ++ ++public class Test6712835 { ++ final boolean var_149 = false; ++ Tester_Class_8 var_150; ++ final long var_151 = 8058077687473630208L; ++ ++ ++ protected final Tester_Class_1 func_0(final Object arg_0, Tester_Class_3 arg_1, final Tester_Class_4 arg_2, int arg_3) ++ { ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)arg_0)); ++ --Tester_Class_3.var_63; ++ (var_150 = (((new Tester_Class_10[arg_2.var_71])[(((Tester_Class_6)arg_0).var_94 = arg_2).var_71 &= Tester_Class_3.var_63 << ~arg_2.var_71]).var_142 = (var_150 = (((Tester_Class_10)arg_0).var_142 = (Tester_Class_8)arg_0)))).var_113 = arg_2; ++ Tester_Class_7.var_114 = (Tester_Class_7.var_114 = false ? (Tester_Class_5)arg_0 : (Tester_Class_5)arg_0); ++ ((((arg_1 = arg_1).var_1 |= "lgcrda".equalsIgnoreCase("ontlkst")) ? (Tester_Class_1)arg_0 : (Tester_Class_3.var_60 = (Tester_Class_1)arg_0)).var_29 ? (arg_1 = (Tester_Class_3)(((Tester_Class_7)arg_0).var_112 = (Tester_Class_9)arg_0)) : arg_1).var_57 >>>= ']'; ++ Tester_Class_8.var_114 = (Tester_Class_5)arg_0; ++ ((Tester_Class_3.var_55 &= (arg_1.var_1 = true)) ? (Tester_Class_6)(new Tester_Class_0[Tester_Class_3.var_58][Tester_Class_10.var_138])[Tester_Class_10.var_138][Tester_Class_10.var_138] : (Tester_Class_6)arg_0).var_94 = arg_2; ++ { ++ Tester_Class_3.var_55 &= ((Tester_Class_3.var_60 = new Tester_Class_1()).var_1 &= false); ++ Tester_Class_2.var_44 -= (arg_3 |= + ~6610561718704644096L); ++ ((Tester_Class_8)arg_0).var_113 = ((((Tester_Class_10)(Tester_Class_0)arg_0).var_142 = (var_150 = (Tester_Class_8)arg_0)).var_124 = arg_2); ++ (! (false | Tester_Class_5.var_86) ? (Tester_Class_10)arg_0 : (new Tester_Class_10[arg_1.var_61][arg_1.var_61])[Tester_Class_10.var_138][Tester_Class_10.var_138]).var_139 = ((Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)arg_0)).var_31 = (((Tester_Class_9)arg_0).var_128 = (((Tester_Class_9)arg_0).var_128 = (Tester_Class_2)arg_0))); ++ } ++ final Tester_Interface_11 var_152 = !((Tester_Class_1)arg_0).var_29 ^ Tester_Class_5.var_86 ? (new Tester_Interface_11[arg_2.var_71][arg_1.var_61])[arg_1.var_61][arg_1.var_61] : (new Tester_Interface_11[arg_2.var_71][arg_2.var_71])[Tester_Class_10.var_138][Tester_Class_3.var_58]; ++ Tester_Class_3.var_64 /= (arg_3 >>= ++((Tester_Class_6)(Tester_Class_0)arg_0).var_92) * Tester_Class_9.var_132; ++ Tester_Class_0 var_153 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)arg_0))))).var_31 = (((new Tester_Class_9[arg_1.var_61])[arg_1.var_61 *= 634692606]).var_128 = !false ? (Tester_Class_2)arg_0 : (Tester_Class_2)arg_0); ++ (Tester_Class_10.var_140 ? (Tester_Class_7)arg_0 : (var_150 = (Tester_Class_8)(Tester_Class_7)arg_0)).var_112 = Tester_Class_3.var_64 != ((((Tester_Class_10)(var_153 = (Tester_Class_8.var_114 = (Tester_Class_5)arg_0))).var_1 |= arg_1.var_1) ? (Tester_Class_6)var_153 : (Tester_Class_6)var_153).var_99-- ? (Tester_Class_7)((var_150 = (Tester_Class_8)arg_0).var_112 = (Tester_Class_10)var_153) : (Tester_Class_7)arg_0; ++ (((new Tester_Class_7[Tester_Class_10.var_138][arg_2.var_71])[Tester_Class_3.var_58])[arg_2.var_71]).var_112 = arg_0; ++ if (!false) ++ { ++ arg_3 <<= (Tester_Class_2.var_46 /= - ((byte)((Tester_Class_10)arg_0).var_144)) - ((Tester_Class_6)arg_0).var_99; ++ } ++ else ++ { ++ ((Tester_Class_7)(((Tester_Class_8)arg_0).var_112 = var_153)).var_113 = arg_2; ++ ((Tester_Class_9)arg_0).var_128 = (((Tester_Class_9)(((Tester_Class_7)arg_0).var_112 = (Tester_Class_7)arg_0)).var_128 = (((Tester_Class_9)arg_0).var_128 = (Tester_Class_2)arg_0)); ++ } ++ (((Tester_Class_10)arg_0).var_142 = (Tester_Class_8)arg_0).var_124 = (((Tester_Class_6)var_153).var_94 = arg_2); ++ final char var_154 = arg_1.var_57 %= ((Tester_Class_6)var_153).var_93--; ++ (true ? arg_1 : (arg_1 = arg_1)).equals(arg_0); ++ (Tester_Class_10.var_140 ? (new Tester_Class_6[Tester_Class_10.var_138])[arg_2.var_71] : (new Tester_Class_6[(Tester_Class_10.var_143 = arg_1).var_61])[arg_1.var_61]).var_94 = ((((new Tester_Class_7[arg_2.var_71][arg_1.var_61][Tester_Class_10.var_138])[Tester_Class_10.var_138])[arg_2.var_71 = arg_2.var_71][Tester_Class_10.var_138]).var_113 = (((Tester_Class_7)arg_0).var_113 = arg_2)); ++ Tester_Class_3.var_60 = ((Tester_Class_10)(((Tester_Class_7)arg_0).var_112 = (Tester_Class_7)(((Tester_Class_10)var_153).var_139 = new Tester_Class_6[Tester_Class_10.var_138][Tester_Class_10.var_138]))).var_1 ? (Tester_Class_3.var_60 = (Tester_Class_1)var_153) : (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)(Tester_Class_9.var_133 = (Tester_Class_10)arg_0))); ++ ((Tester_Class_7)(((Tester_Class_10)arg_0).var_139 = new Tester_Class_10[Tester_Class_3.var_58][--arg_2.var_71])).var_112 = new byte[(((Tester_Class_8)(Tester_Class_7)((var_150 = (var_150 = (Tester_Class_8)arg_0)).var_112 = arg_2)).var_113 = (((Tester_Class_7)arg_0).var_113 = arg_2)).var_71]; ++ Tester_Class_8 var_155; ++ (Tester_Class_3.var_55 & arg_2.equals(arg_0) ? (Tester_Class_10)var_153 : (Tester_Class_10)var_153).var_3 %= Tester_Class_6.var_91; ++ return ((Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)var_153)))).var_29 ? ! !true : Tester_Class_10.var_140 | Tester_Class_3.var_55) || Tester_Class_3.var_55 ? (Tester_Class_3.var_60 = (Tester_Class_1)(((Tester_Class_10)var_153).var_139 = (Tester_Class_6)var_153)) : new Tester_Class_1(); ++ } ++ ++ protected Tester_Class_5 func_1(Tester_Class_0 arg_0, final float arg_1) ++ { ++ (!Tester_Class_10.var_140 ? (Tester_Class_6)arg_0 : (Tester_Class_6)arg_0).var_90 /= ((Tester_Class_8.var_109 = (new boolean[Tester_Class_10.var_138][Tester_Class_3.var_58])[((Tester_Class_6)arg_0).var_99][Tester_Class_10.var_138] ? (Tester_Class_3)((Tester_Class_3.var_60 = (Tester_Class_1)arg_0).var_31 = (Tester_Class_6)arg_0) : (Tester_Class_3)arg_0).var_61 *= Tester_Class_3.var_58); ++ { ++ "".toLowerCase(); ++ } ++ ((Tester_Class_10)arg_0).var_139 = new Tester_Class_8(); ++ arg_0 = (new Tester_Class_6[((Tester_Class_6)arg_0).var_99])[Tester_Class_3.var_58]; ++ if (((Tester_Class_10)(arg_0 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)arg_0)))).var_145) ++ { ++ Tester_Class_3.var_63++; ++ } ++ else ++ { ++ ++Tester_Class_2.var_46; ++ } ++ (((Tester_Class_3.var_55 ^= Tester_Class_3.var_55 ^ true) ? (Tester_Class_10)arg_0 : (Tester_Class_10)arg_0).var_145 || true ? (Tester_Class_6)arg_0 : (Tester_Class_6)(((Tester_Class_7)(((Tester_Class_10)arg_0).var_139 = (Tester_Class_10)arg_0)).var_112 = "jlixai")).var_99--; ++ Tester_Class_5.var_81 = Tester_Class_3.var_55 && ! (arg_0.var_1 = arg_0.var_1); ++ { ++ ((new Tester_Class_6[Tester_Class_3.var_58])[(true ? (Tester_Class_6)(Tester_Class_9.var_133 = (Tester_Class_10)arg_0) : (Tester_Class_6)(((Tester_Class_1)arg_0).var_31 = (Tester_Class_10)arg_0)).var_99]).var_90 *= (Tester_Class_3.var_64 %= Tester_Class_3.var_63); ++ } ++ ++Tester_Class_2.var_46; ++ Tester_Class_0 var_156; ++ Tester_Class_2.var_46++; ++ Tester_Class_8.var_114 = (Tester_Class_7.var_114 = (Tester_Class_8.var_114 = (Tester_Class_5)arg_0)); ++ Tester_Class_6.func_2((Tester_Class_7.var_114 = (Tester_Class_7.var_114 = (Tester_Class_7.var_114 = (Tester_Class_5)arg_0))).var_83 = (byte)(((Tester_Class_10)arg_0).var_142 = (new Tester_Class_8[Tester_Class_3.var_58][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_10.var_138]).var_110, Tester_Class_6.var_96, (new byte[Tester_Class_3.var_58])[Tester_Class_10.var_138]); ++ Tester_Class_7.var_114 = (new Tester_Class_5[Tester_Class_10.var_138])[((Tester_Class_3)arg_0).var_61]; ++ boolean var_157 = Tester_Class_10.var_140; ++ (Tester_Class_3.var_60 = (Tester_Class_1)arg_0).var_1 ^= Tester_Class_10.var_140; ++ return Tester_Class_8.var_114 = (Tester_Class_7.var_114 = (Tester_Class_8.var_114 = (Tester_Class_5)arg_0)); ++ } ++ ++ final static int func_2(Tester_Class_6 arg_0) ++ { ++ new Tester_Class_9(); ++ { ++ ++Tester_Class_3.var_63; ++ } ++ new Tester_Class_3().var_57--; ++ Tester_Class_1 var_158; ++ String var_159; ++ --Tester_Class_6.var_96; ++ { ++ new String(); ++ } ++ var_159 = (var_159 = arg_0.var_4); ++ { ++ --Tester_Class_2.var_46; ++ } ++ final double var_160 = (Tester_Class_7.var_114 = (Tester_Class_8.var_114 = (Tester_Class_8.var_114 = (Tester_Class_5)(new Tester_Class_0[arg_0.var_99][arg_0.var_99])[Tester_Class_3.var_58][Tester_Class_3.var_58]))).var_1 ? Tester_Class_9.var_132 : Tester_Class_6.var_97; ++ Tester_Class_8 var_161; ++ char var_162 = 'O'; ++ Tester_Class_2.var_46++; ++ Tester_Class_6.var_96++; ++ { ++ new String(); ++ } ++ ++Tester_Class_6.var_96; ++ var_162 >>= ((new Tester_Class_4[arg_0.var_99])[arg_0.var_99++]).var_70 >> Tester_Class_6.var_91; ++ (Tester_Class_7.var_114 = (Tester_Class_7.var_114 = (new Tester_Class_5[Tester_Class_3.var_58])[++arg_0.var_99])).var_83 = (arg_0.var_93 <<= Tester_Class_7.var_108); ++ --Tester_Class_6.var_96; ++ { ++ new Tester_Class_9().var_128 = new Tester_Class_2(); ++ } ++ arg_0 = arg_0; ++ { ++ Tester_Class_9 var_163; ++ } ++ ((Tester_Class_5)(Tester_Class_9.var_133 = arg_0)).var_83 = (arg_0.var_99 >>= Tester_Class_5.var_5); ++ arg_0.var_99 = Tester_Class_10.var_138; ++ Tester_Class_3.var_60 = (var_158 = (Tester_Class_3.var_60 = (Tester_Class_1)(Tester_Class_9.var_133 = arg_0))); ++ return Tester_Class_6.var_91; ++ } ++ ++ protected final Tester_Class_9 func_3() ++ { ++ Tester_Class_2.var_44 = 3210658399310388224L; ++ ++Tester_Class_6.var_96; ++ short var_164 = 15978; ++ var_164++; ++ Tester_Class_5.var_81 = true; ++ return Tester_Class_3.var_55 ? new Tester_Class_9() : new Tester_Class_9(); ++ } ++ ++ final static Tester_Class_10 func_4(Tester_Class_3 arg_0, String arg_1, final byte[] arg_2, final Object arg_3) ++ { ++ Tester_Class_1 var_165; ++ Tester_Class_3.var_63 += new Tester_Class_6().var_92 >= 3821095133162842112L ? (arg_0.var_61 |= Tester_Class_6.var_91) : Tester_Class_10.var_138; ++ return false ? ((var_165 = (Tester_Class_1)arg_3).var_29 ? (Tester_Class_10)arg_3 : (Tester_Class_10)arg_3) : (Tester_Class_10)(Tester_Class_0)arg_3; ++ } ++ ++ private static Object func_7(final short arg_0, String arg_1, final Tester_Class_3 arg_2) ++ { ++ Tester_Class_3.var_60 = (new Tester_Class_1[arg_2.var_61])[Tester_Class_10.var_138]; ++ return ((new Tester_Class_7[arg_2.var_61 |= Tester_Class_3.var_63])[arg_2.var_61 *= Tester_Class_6.var_98]).var_112 = new Tester_Class_8(); ++ } ++ ++ public static String execute() ++ { ++ try { ++ Test6712835 t = new Test6712835(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ try { return t.toString(); } ++ catch (Throwable e) { return "Error during result conversion to String"; } ++ } catch (Throwable e) { return "Error during test execution"; } ++ } ++ ++ public static void main(String[] args) ++ { ++ try { ++ Test6712835 t = new Test6712835(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ try { System.out.println(t); } ++ catch(Throwable e) { } ++ } catch (Throwable e) { } ++ } ++ ++ private void test() ++ { ++ Tester_Class_3.var_60 = true ? (Tester_Class_3.var_60 = new Tester_Class_1()) : new Tester_Class_1(); ++ double var_170 = 0; ++ Tester_Class_9.var_133 = (new Tester_Class_4().var_69 = new Tester_Class_3()); ++ new Tester_Class_6(); ++ String var_171; ++ new Tester_Class_9(); ++ do ++ { ++ new String(); ++ var_170++; ++ Tester_Class_3.var_64 = 1.0240330514364089E307; ++ new String(); ++ var_171 = (var_171 = Tester_Class_9.var_127); ++ Tester_Class_3.var_63--; ++ } while (var_170 < 525); ++ ((new Tester_Class_10[Tester_Class_10.var_138])[Tester_Class_2.var_45 = Tester_Class_3.var_58]).var_142 = (Tester_Class_8)(Tester_Class_7)(new Tester_Class_10().var_139 = new Tester_Class_2()); ++ long var_172 = 0L; ++ Tester_Class_3.var_64 /= (((new Tester_Class_6[Tester_Class_3.var_58])[Tester_Class_10.var_138]).var_99 ^= ((new Tester_Class_6[Tester_Class_3.var_58])[Tester_Class_10.var_138]).var_90) > 9.462466046830147E307 ? new Tester_Class_6().var_99 : Tester_Class_3.var_58; ++ short var_173; ++ (true ? new Tester_Class_2() : (func_3().var_128 = new Tester_Class_2())).var_3 *= (var_150 = new Tester_Class_8()).var_115; ++ (Tester_Class_3.var_60 = new Tester_Class_1()).var_31 = (((new Tester_Class_9[Tester_Class_3.var_58])[Tester_Class_10.var_138]).var_128 = (func_3().var_128 = (func_3().var_128 = (new Tester_Class_9().var_128 = new Tester_Class_2())))); ++ for (((new Tester_Class_10[new Tester_Class_6().var_99])[new Tester_Class_6().var_99++]).var_142 = (new Tester_Class_8[Tester_Class_10.var_138])[Tester_Class_3.var_58]; var_172 < 203 && (Tester_Class_3.var_55 &= (new boolean[Tester_Class_2.var_45 = Tester_Class_3.var_58])[Tester_Class_10.var_138]); Tester_Class_9.var_133 = (Tester_Class_7.var_114 = (new Tester_Class_5[Tester_Class_2.var_45 = Tester_Class_10.var_138][Tester_Class_10.var_138])[Tester_Class_3.var_58][Tester_Class_2.var_45 = Tester_Class_3.var_58])) ++ { ++ var_171 = Tester_Class_9.var_127; ++ var_172++; ++ Tester_Class_3.var_63++; ++ Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_1)(new Object[Tester_Class_3.var_58][Tester_Class_10.var_138])[Tester_Class_3.var_58][Tester_Class_3.var_58]))); ++ ++Tester_Class_2.var_46; ++ Tester_Class_2.var_46--; ++ Tester_Class_3.var_64 -= Tester_Class_3.var_58; ++ } ++ (Tester_Class_3.var_60 = new Tester_Class_1()).var_31 = ((new Tester_Class_8().var_124 = new Tester_Class_4()).var_69 = new Tester_Class_3()); ++ int var_174 = 0; ++ ((new Tester_Class_6[Tester_Class_10.var_138][Tester_Class_10.var_138])[Tester_Class_2.var_45 = Tester_Class_10.var_138][Tester_Class_2.var_45 = Tester_Class_3.var_58]).var_92 = 'Z'; ++ while ((Tester_Class_9.var_131 = Tester_Class_3.var_55) && (var_174 < 24 && !true)) ++ { ++ new Tester_Class_10(); ++ var_174++; ++ Tester_Class_3.var_64 %= (((new Tester_Class_6[Tester_Class_3.var_58])[Tester_Class_2.var_45 = Tester_Class_3.var_58]).var_93 ^= (byte)Tester_Class_3.var_59); ++ ((Tester_Class_10)(Tester_Class_9.var_133 = (new Tester_Class_5[((Tester_Class_6)(new Tester_Class_0[Tester_Class_10.var_138])[(byte)(Tester_Class_2.var_46 >>>= Tester_Class_7.var_108)]).var_99])[Tester_Class_10.var_138])).var_139 = (new Tester_Class_10[new Tester_Class_6().var_99][new Tester_Class_4().var_71])[new Tester_Class_4().var_71]; ++ } ++ int var_175 = 0; ++ (Tester_Class_10.var_140 ? (Tester_Class_2)(Tester_Class_9.var_133 = (Tester_Class_7.var_114 = (new Tester_Class_5[Tester_Class_10.var_138])[Tester_Class_10.var_138])) : new Tester_Class_2()).var_1 &= Tester_Class_3.var_55; ++ do ++ { ++ Tester_Class_10.var_143 = new Tester_Class_3(); ++ var_175++; ++ ++Tester_Class_2.var_46; ++ } while ((false ? true : var_149) | !Tester_Class_10.var_140 && var_175 < 97); ++ Tester_Class_9.var_131 = true; ++ (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = (Tester_Class_3.var_60 = new Tester_Class_1())))).var_1 &= (((new Tester_Class_10().var_1 = !true) ? new Tester_Class_10() : new Tester_Class_10()).var_145 ? new Tester_Class_3() : new Tester_Class_3()).var_1; ++ (true ? func_3() : func_3()).var_128 = ((((Tester_Class_5.var_86 = (Tester_Class_3.var_55 &= !var_149)) ? new Tester_Class_10() : new Tester_Class_10()).var_145 ? new Tester_Class_9() : func_3()).var_128 = var_149 ? new Tester_Class_2() : new Tester_Class_2()); ++ Tester_Class_3.var_59 -= (Tester_Class_5.var_81 = new Tester_Class_1().var_29) ^ !true ? 7920143378515332096L : new Tester_Class_6().var_92; ++ ((Tester_Class_3.var_60 = new Tester_Class_1()).var_1 ? (new Tester_Class_5[Tester_Class_10.var_138][Tester_Class_3.var_58])[Tester_Class_3.var_58][Tester_Class_3.var_58] : (Tester_Class_8.var_114 = new Tester_Class_5())).var_83 = Tester_Class_10.var_140 ? (Tester_Class_3.var_63 -= 2.0167496E38F) : ++Tester_Class_3.var_63; ++ double var_176 = 9.327780852480363E307; ++ } ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Test6712835.var_151 = "; result += Printer.print(var_151); ++ result += "\n"; ++ result += "Test6712835.var_149 = "; result += Printer.print(var_149); ++ result += "\n"; ++ result += "Test6712835.var_150 = "; result += Printer.print(var_150); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++ static class Printer ++ { ++ public static String print(boolean arg) { return String.valueOf(arg); } ++ public static String print(byte arg) { return String.valueOf(arg); } ++ public static String print(short arg) { return String.valueOf(arg); } ++ public static String print(char arg) { return String.valueOf((int)arg); } ++ public static String print(int arg) { return String.valueOf(arg); } ++ public static String print(long arg) { return String.valueOf(arg); } ++ public static String print(float arg) { return String.valueOf(arg); } ++ public static String print(double arg) { return String.valueOf(arg); } ++ ++ ++ public static String print(Object arg) ++ { ++ return print_r(new java.util.Stack(), arg); ++ } ++ ++ private static String print_r(java.util.Stack visitedObjects, Object arg) ++ { ++ String result = ""; ++ if (arg == null) ++ result += "null"; ++ else ++ if (arg.getClass().isArray()) ++ { ++ for (int i = 0; i < visitedObjects.size(); i++) ++ if (visitedObjects.elementAt(i) == arg) return "<recursive>"; ++ ++ visitedObjects.push(arg); ++ ++ final String delimiter = ", "; ++ result += "["; ++ ++ if (arg instanceof Object[]) ++ { ++ Object[] array = (Object[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print_r(visitedObjects, array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof boolean[]) ++ { ++ boolean[] array = (boolean[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof byte[]) ++ { ++ byte[] array = (byte[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof short[]) ++ { ++ short[] array = (short[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof char[]) ++ { ++ char[] array = (char[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof int[]) ++ { ++ int[] array = (int[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof long[]) ++ { ++ long[] array = (long[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof float[]) ++ { ++ float[] array = (float[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof double[]) ++ { ++ double[] array = (double[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ ++ result += "]"; ++ visitedObjects.pop(); ++ ++ } else ++ { ++ result += arg.toString(); ++ } ++ ++ return result; ++ } ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6714694/Tester.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6714694/Tester.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,820 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6714694 ++ * @summary assertion in 64bit server vm (store->find_edge(load) != -1,"missing precedence edge") with COOPs ++ * @run main/othervm -Xcomp Tester ++ */ ++ ++/* Complexity upper bound: 38602 ops */ ++ ++interface Tester_Interface_0 { ++} ++ ++ ++abstract class Tester_Class_1 implements Tester_Interface_0 { ++ static int var_1 = (false ? (short)'b' : (short)-2.4256387E38F) | (byte)('g' * -7.660532860983624E307); ++ float var_2; ++ byte var_3; ++ static boolean var_4 = true; ++ double var_5 = 8.818325751338691E307; ++ Object var_6; ++ static short var_7; ++ final static char var_8 = 'x'; ++ final static float var_9 = 2.2030989E38F; ++ ++ ++ public Tester_Class_1() ++ { ++ var_6 = (var_6 = (var_6 = "xkx")); ++ switch (var_7 = (var_3 = (byte)var_5)) ++ { ++ case 113: ++ ++ case 114: ++ Object var_12; ++ var_4 = 4.9121917E37F < 1957795258; ++ var_4 |= (var_4 ^= !var_4) ^ (var_4 |= var_4); ++ var_3 = (var_3 = (var_3 = (byte)+6010964363045275648L)); ++ break; ++ ++ case 102: ++ ++ } ++ final float var_13 = 1.2443151E38F; ++ var_3 = (byte)(var_1 |= (var_7 = (var_3 = (byte)var_5))); ++ var_2 = (long)(var_7 = (var_3 = (byte)var_8)) - (var_7 = (byte)386742565); ++ var_4 &= var_4; ++ var_2 = (long)((var_3 = (var_3 = (byte)var_8)) / ((var_4 ^= (var_5 /= var_9) <= (var_1 &= var_1)) ? (var_7 = (short)6872886933545336832L) : (byte)var_8)); ++ var_6 = "uqflj"; ++ { ++ switch (((new String[var_3 = (byte)var_5])[var_3 = (byte)8097442298927900672L]).charAt(1540148550)) ++ { ++ case 'l': ++ ++ } ++ var_2 = (var_7 = (byte)2.9859440663042714E307); ++ { ++ Object var_14; ++ } ++ var_3 = (var_3 = (var_3 = (byte)3.3634427195550136E307)); ++ var_5 += '_'; ++ } ++ var_6 = "tempfdjen"; ++ var_3 = (((var_4 ^= new String("jmwiwmk").endsWith("rtlstmnuo")) ? !true : !false) ? true : (var_4 = false)) ? (var_3 = (byte)var_5) : (var_3 = (var_3 = (byte)var_5)); ++ var_4 ^= false; ++ if (1.6435436003809043E307 != var_9) ++ { ++ boolean var_15 = true; ++ } ++ else ++ { ++ var_4 = false; ++ } ++ { ++ Object var_16 = ((new Tester_Class_1[(byte)71832757][(byte)1.0694914E38F])[(byte)1315653071][(byte)(var_7 = (var_7 = (byte)var_8))]).var_6 = new int[(byte)var_8][var_3 = (byte)1933656747]; ++ } ++ var_7 = (var_4 = var_4) ? (short)2.756967E37F : (short)'K'; ++ byte var_17; ++ } ++ ++ ++ ++ abstract public Tester_Interface_0 func_0(double[][] arg_0, final Object arg_1); ++ ++ ++ final double func_0(final float arg_0, final short arg_1, final boolean arg_2) ++ { ++ var_6 = (var_6 = "lmshbl"); ++ var_3 = (var_3 = (new byte[(new byte[(byte)arg_1])[var_3 = (byte)arg_0]])[var_3 = (var_3 = (byte)(var_1 >>>= var_1))]); ++ var_5 %= (var_3 = (byte)1909375874); ++ var_1 /= (char)(short)'i'; ++ { ++ "vgar".length(); ++ } ++ int var_10; ++ { ++ var_3 = (var_4 &= true) ? (byte)(var_5 *= 6375499657746206720L) : (byte)+ (var_5 /= var_9); ++ var_7 = (var_4 = true) ? (byte)(false ? (short)749593632 : (byte)8.692758043260743E307) : (byte)var_1; ++ ((new Tester_Class_1[(byte)1.2890904018345944E308])[(byte)var_1]).var_3 = (var_3 = (byte)arg_0); ++ var_4 = true ^ var_4; ++ } ++ { ++ var_1 ^= (var_3 = (var_3 = (var_3 = (byte)'U'))); ++ } ++ var_3 = (var_3 = (var_3 = (var_3 = (byte)arg_1))); ++ char var_11; ++ var_1 += (var_2 = (var_7 = arg_1)); ++ { ++ var_7 = (var_7 = arg_1); ++ } ++ var_7 = arg_1; ++ var_6 = (new char[(byte)1985094111797788672L][var_3 = (byte)3112604683090268160L])[var_3 = (byte)~ (var_3 = (byte)(var_5 += var_1))]; ++ var_3 = (var_3 = (var_3 = (var_3 = (byte)3694858000202921984L))); ++ var_1 /= ~ ((byte)1311538336); ++ (((var_4 |= arg_2 ? !true && arg_2 : false) ? arg_2 : arg_2) ? "iih".substring(~ (var_3 = (byte)3.5401308E37F), 'g' * arg_1) : "gynskmvoj").trim(); ++ var_3 = (var_3 = arg_2 ? (byte)+ ~5247392660383928320L : (byte)8392160279007184896L); ++ var_3 = (var_3 = (var_3 = (byte)var_8)); ++ return (var_5 += 7.157559E37F) + (var_11 = 'V'); ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_1.var_7 = "; result += Tester.Printer.print(var_7); ++ result += "\n"; ++ result += "Tester_Class_1.var_3 = "; result += Tester.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_1.var_8 = "; result += Tester.Printer.print(var_8); ++ result += "\n"; ++ result += "Tester_Class_1.var_1 = "; result += Tester.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_1.var_4 = "; result += Tester.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_1.var_5 = "; result += Tester.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_1.var_2 = "; result += Tester.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_1.var_9 = "; result += Tester.Printer.print(var_9); ++ result += "\n"; ++ result += "Tester_Class_1.var_6 = "; result += Tester.Printer.print(var_6); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_2 extends Tester_Class_1 implements Tester_Interface_0 { ++ final static String var_18 = false | Tester_Class_1.var_4 | (Tester_Class_1.var_4 &= (Tester_Class_1.var_4 |= (Tester_Class_1.var_4 = var_4))) ? "tbobyhqne" : ""; ++ static String var_19 = "acxfj"; ++ ++ ++ public Tester_Class_2() ++ { ++ Tester_Class_1.var_4 = !Tester_Class_1.var_4; ++ var_1++; ++ var_2 = (byte)2.4009747E38F; ++ new String(); ++ var_6 = (var_19 = "hsshyw"); ++ var_19 = var_19; ++ } ++ ++ ++ public Tester_Interface_0 func_0(double[][] arg_0, final Object arg_1) ++ { ++ var_5 = 4.0352057E37F; ++ (((false && ! ((Tester_Class_1.var_4 |= !true) ^ (Tester_Class_1.var_4 ^ false))) ^ (var_4 &= true) ? var_4 : (var_4 ^= true)) ? "spskwj" : "xcqianm").length(); ++ ((var_4 |= (Tester_Class_1.var_4 ^= Tester_Class_1.var_4) ? (Tester_Class_1.var_4 &= false) : (Tester_Class_1.var_4 |= Tester_Class_1.var_4)) ? (Tester_Class_1)(var_6 = new double[(byte)6.628342687109622E307]) : (Tester_Class_1)arg_1).var_6 = arg_0; ++ var_7 = (short)(byte)(short)8775325134193811456L; ++ var_4 ^= (var_4 &= !false); ++ ((Tester_Class_1)arg_1).var_3 = (var_3 = (byte)(var_5 %= 8.933448E37F)); ++ Tester_Class_1 var_20 = Tester_Class_1.var_4 ? (Tester_Class_1)arg_1 : (Tester_Class_1)arg_1; ++ { ++ var_19.endsWith(var_19); ++ var_6 = var_20; ++ (var_20 = (var_20 = var_20)).var_2 = (short)('p' <= 1986176769 % (int)2242661265280256000L % 2664882044098145280L ? ~ (var_3 = (byte)1.1892553447967157E308) & ~1806805036550279168L : (var_7 = (byte)var_8)); ++ } ++ final boolean var_21 = Tester_Class_1.var_4; ++ var_20.var_3 = (var_3 = (var_20.var_3 = (byte)'t')); ++ boolean var_22 = true; ++ Tester_Class_1.var_4 |= (var_4 = var_21); ++ var_19 = "ocn"; ++ var_19 = var_19; ++ var_1 *= Tester_Class_1.var_8; ++ var_20 = var_22 ? var_20 : var_20; ++ var_7 = var_21 ? (byte)+ ((byte)var_1) : ((var_20 = (var_20 = var_20)).var_3 = (var_3 = (var_3 = (byte)'L'))); ++ return true ? (var_20 = var_20) : (new Tester_Interface_0[(byte)5618282952859970560L])[var_3 = (byte)Tester_Class_1.var_8]; ++ } ++ ++ ++ public boolean equals(Object obj) ++ { ++ Tester_Class_1.var_7 = (var_7 = (((Tester_Class_1)obj).var_3 = (byte)var_9)); ++ { ++ final Tester_Class_1 var_23 = (Tester_Class_1)obj; ++ } ++ ++Tester_Class_1.var_1; ++ var_5 = (Tester_Class_1.var_7 = var_4 ? (Tester_Class_1.var_7 = (((Tester_Class_1)obj).var_3 = (byte)Tester_Class_1.var_8)) : (var_7 = (byte)var_9)); ++ ((Tester_Class_1)obj).var_6 = var_18.replace(Tester_Class_1.var_8, Tester_Class_1.var_8); ++ ((new Tester_Class_1[((Tester_Class_1)(obj = new char[var_3 = (byte)Tester_Class_1.var_8])).var_3 = (((Tester_Class_1)obj).var_3 = (byte)(var_1 %= 787509251458841600L))])[(new byte[var_3 = (byte)Tester_Class_1.var_1])[((Tester_Class_1)obj).var_3 = (byte)1.2382548E38F]]).var_3 = (((Tester_Class_1)obj).var_3 = var_4 ? (byte)Tester_Class_1.var_8 : (byte)4.1085164E36F); ++ var_1 &= var_8; ++ var_7 = var_4 ? (var_3 = (byte)var_8) : (byte)var_5; ++ var_19 = var_18; ++ ("o".compareTo("kwlfk") > (var_2 = 5289241662482067456L) ? (Tester_Class_1)obj : (Tester_Class_1)obj).var_5 -= (((Tester_Class_1)obj).var_3 = (((Tester_Class_1)obj).var_3 = (((Tester_Class_1)obj).var_3 = (byte)var_9))); ++ return true; ++ } ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_2.var_7 = "; result += Tester.Printer.print(var_7); ++ result += "\n"; ++ result += "Tester_Class_2.var_8 = "; result += Tester.Printer.print(var_8); ++ result += "\n"; ++ result += "Tester_Class_2.var_3 = "; result += Tester.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_2.var_18 = "; result += Tester.Printer.print(var_18); ++ result += "\n"; ++ result += "Tester_Class_2.var_19 = "; result += Tester.Printer.print(var_19); ++ result += "\n"; ++ result += "Tester_Class_2.var_1 = "; result += Tester.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_2.var_4 = "; result += Tester.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_2.var_5 = "; result += Tester.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_2.var_2 = "; result += Tester.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_2.var_9 = "; result += Tester.Printer.print(var_9); ++ result += "\n"; ++ result += "Tester_Class_2.var_6 = "; result += Tester.Printer.print(var_6); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_3 extends Tester_Class_2 implements Tester_Interface_0 { ++ long var_24 = 9026266006808413184L; ++ char var_25; ++ String var_26 = ((var_4 ^= Tester_Class_1.var_4) ? (!true ? false : (var_4 |= true)) : (Tester_Class_2.var_4 ^= var_4)) ? "dkmhvhl" : (var_19 = (Tester_Class_2.var_19 = (Tester_Class_2.var_19 = var_18))); ++ static Tester_Class_2 var_27; ++ short var_28 = Tester_Class_2.var_7 = (short)(Tester_Class_2.var_1 &= (var_3 = (var_3 = (var_3 = (byte)Tester_Class_2.var_9)))); ++ static boolean var_29 = false; ++ static Object[][] var_30; ++ int var_31 = 750583762; ++ Tester_Class_2 var_32; ++ final static long var_33 = 3050784555932008448L; ++ ++ ++ public Tester_Class_3() ++ { ++ byte[] var_34; ++ var_4 &= (Tester_Class_1.var_4 = true); ++ Tester_Class_1.var_1--; ++ switch (var_28 >>= ~ ((byte)var_28)) ++ { ++ case 9: ++ ++ case 26: ++ Tester_Class_1.var_4 ^= Tester_Class_1.var_4; ++ (Tester_Class_2.var_19 = "pwtic").indexOf(Tester_Class_2.var_18); ++ var_26.indexOf(var_19); ++ ((Tester_Class_1)(new Tester_Interface_0[(byte)var_5])[var_24 <= var_31 ? (byte)'^' : (byte)var_24]).var_2 = 5611775846881101824L; ++ var_29 |= (Tester_Class_2.var_4 ^= var_29); ++ Tester_Class_2 var_35; ++ var_24 <<= (var_31 >>= (var_25 = var_8)); ++ break; ++ ++ case 28: ++ ++ } ++ new String(); ++ var_5 %= (var_25 = 'n'); ++ ((Tester_Class_2)(Tester_Class_1)(((Tester_Class_1)(var_6 = Tester_Class_2.var_18)).var_6 = (var_26 = ""))).var_2 = var_31; ++ --var_1; ++ } ++ ++ ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_3.var_8 = "; result += Tester.Printer.print(var_8); ++ result += "\n"; ++ result += "Tester_Class_3.var_25 = "; result += Tester.Printer.print(var_25); ++ result += "\n"; ++ result += "Tester_Class_3.var_1 = "; result += Tester.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_3.var_31 = "; result += Tester.Printer.print(var_31); ++ result += "\n"; ++ result += "Tester_Class_3.var_30 = "; result += Tester.Printer.print(var_30); ++ result += "\n"; ++ result += "Tester_Class_3.var_24 = "; result += Tester.Printer.print(var_24); ++ result += "\n"; ++ result += "Tester_Class_3.var_33 = "; result += Tester.Printer.print(var_33); ++ result += "\n"; ++ result += "Tester_Class_3.var_5 = "; result += Tester.Printer.print(var_5); ++ result += "\n"; ++ result += "Tester_Class_3.var_2 = "; result += Tester.Printer.print(var_2); ++ result += "\n"; ++ result += "Tester_Class_3.var_9 = "; result += Tester.Printer.print(var_9); ++ result += "\n"; ++ result += "Tester_Class_3.var_7 = "; result += Tester.Printer.print(var_7); ++ result += "\n"; ++ result += "Tester_Class_3.var_28 = "; result += Tester.Printer.print(var_28); ++ result += "\n"; ++ result += "Tester_Class_3.var_3 = "; result += Tester.Printer.print(var_3); ++ result += "\n"; ++ result += "Tester_Class_3.var_18 = "; result += Tester.Printer.print(var_18); ++ result += "\n"; ++ result += "Tester_Class_3.var_19 = "; result += Tester.Printer.print(var_19); ++ result += "\n"; ++ result += "Tester_Class_3.var_26 = "; result += Tester.Printer.print(var_26); ++ result += "\n"; ++ result += "Tester_Class_3.var_4 = "; result += Tester.Printer.print(var_4); ++ result += "\n"; ++ result += "Tester_Class_3.var_29 = "; result += Tester.Printer.print(var_29); ++ result += "\n"; ++ result += "Tester_Class_3.var_27 = "; result += Tester.Printer.print(var_27); ++ result += "\n"; ++ result += "Tester_Class_3.var_32 = "; result += Tester.Printer.print(var_32); ++ result += "\n"; ++ result += "Tester_Class_3.var_6 = "; result += Tester.Printer.print(var_6); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++public class Tester { ++ static double var_36 = 2.679028326789642E307; ++ float var_37; ++ String var_38 = Tester_Class_2.var_18; ++ static Tester_Interface_0 var_39; ++ static char var_40 = 'D'; ++ Tester_Class_1 var_41; ++ static int var_42; ++ final static boolean var_43 = false; ++ ++ ++ final static Tester_Class_2 func_0(Tester_Class_1 arg_0, final Tester_Class_2 arg_1) ++ { ++ "ooots".replaceFirst("rdxor", ((new Tester_Class_3[arg_1.var_3 = (byte)2.7836305E38F])[arg_0.var_3 = (byte)+ + +1.4958218616334936E307]).var_26); ++ if (true) ++ { ++ arg_0 = (Tester_Class_3)arg_0; ++ ((Tester_Class_3)arg_0).var_25 = var_40; ++ final Tester_Class_2 var_44 = (Tester_Class_2)((Tester_Class_3.var_29 |= var_43) ? arg_0 : (arg_0.var_6 = Tester_Class_3.var_18)); ++ } ++ else ++ { ++ var_39 = (Tester_Class_3.var_27 = (Tester_Class_3)arg_1); ++ } ++ Tester_Class_3.var_19 = "onndgsil"; ++ var_39 = arg_0; ++ return (Tester_Class_2.var_4 &= Tester_Class_2.var_4 ^ true) ? (((Tester_Class_3)arg_0).var_32 = (Tester_Class_3)arg_1) : (((Tester_Class_3)arg_0).var_32 = (Tester_Class_3)arg_1); ++ } ++ ++ private final static float func_1(final short arg_0, int[][] arg_1, final long arg_2) ++ { ++ Tester_Class_2.var_1 *= arg_0; ++ double var_45 = 6.841391103184752E307; ++ long var_46; ++ Tester_Class_2.var_1--; ++ --var_40; ++ ++var_40; ++ ++Tester_Class_3.var_1; ++ Tester_Class_1.var_4 = false; ++ var_36 %= 'X'; ++ ++Tester_Class_2.var_1; ++ Tester_Class_1.var_1++; ++ return 3.2422038E38F; ++ } ++ ++ private final static char func_2(double arg_0, final byte arg_1, int arg_2) ++ { ++ --Tester_Class_3.var_1; ++ if (Tester_Class_1.var_4) ++ { ++ if (var_43) ++ { ++ Tester_Class_3.var_1++; ++ } ++ else ++ { ++ var_40 <<= 1329560515532651520L; ++ } ++ (false & Tester_Class_2.var_4 ? (new Tester_Class_1[arg_1])[arg_1] : (new Tester_Class_1[arg_1][arg_1])[arg_1][arg_1]).var_3 = arg_1; ++ Tester_Class_2.var_19 = Tester_Class_3.var_19; ++ --var_40; ++ final long var_47 = ~Tester_Class_3.var_33 << var_40--; ++ ((Tester_Class_3)(new Tester_Class_2[arg_1][arg_1])[arg_1][arg_1]).var_24 *= (var_36 *= (long)arg_1 * ~arg_1); ++ Tester_Class_2.var_19 = Tester_Class_2.var_19; ++ ++((new Tester_Class_3[arg_1])[arg_1]).var_24; ++ } ++ else ++ { ++ var_40++; ++ } ++ var_40 <<= var_40; ++ if (true) ++ { ++ ++arg_2; ++ } ++ else ++ { ++ Tester_Class_2.var_7 = arg_1; ++ } ++ boolean var_48 = true; ++ var_36 /= arg_1; ++ final short var_49 = 15276; ++ Tester_Interface_0 var_50; ++ ((Tester_Class_2.var_19 = (Tester_Class_2.var_19 = Tester_Class_2.var_19)) + "xhi").toString(); ++ arg_2++; ++ return var_40; ++ } ++ ++ public final static char func_4(final boolean arg_0) ++ { ++ float var_52 = 2.8063675E38F; ++ var_40--; ++ Object var_53; ++ Tester_Class_3.var_29 |= (Tester_Class_3.var_29 &= true); ++ if (!Tester_Class_1.var_4) ++ { ++ --var_40; ++ } ++ else ++ { ++ var_52 %= 2027756834; ++ } ++ int var_54 = Tester_Class_1.var_1++; ++ var_40--; ++ long var_55; ++ byte var_56 = 97; ++ var_36 *= 9.75628909363086E307 % + -1.9812653793936264E306; ++ int var_57; ++ boolean var_58 = Tester_Class_1.var_4 ^= var_43; ++ return 'J'; ++ } ++ ++ static float func_5(final Object arg_0, float arg_1, final Tester_Class_2 arg_2) ++ { ++ var_39 = arg_2; ++ Tester_Class_3.var_27 = arg_2; ++ arg_1 %= 1.7777554E38F; ++ var_39 = (Tester_Class_3.var_27 = arg_2); ++ Tester_Class_3 var_59; ++ { ++ var_40 -= arg_1 - ~ (((Tester_Class_3)arg_2).var_3 = (byte)1455854212); ++ } ++ Object var_60 = Tester_Class_1.var_4 ? arg_0 : new String[arg_2.var_3 = (byte)arg_1][(byte)((Tester_Class_3)arg_0).var_28]; ++ Tester_Class_3.var_27 = (Tester_Class_2)(var_39 = arg_2); ++ ((Tester_Class_3.var_4 |= var_43) ? (var_59 = (var_59 = (var_59 = (Tester_Class_3)var_60))) : (var_59 = (Tester_Class_3)arg_2)).var_24 ^= Tester_Class_3.var_1; ++ return Tester_Class_1.var_9; ++ } ++ ++ private static void func_6(char arg_0, final Tester_Class_3 arg_1, String arg_2, final double arg_3) ++ { ++ ((new Tester_Class_1[(byte)arg_1.var_28])[(arg_1.var_32 = arg_1).var_3 = (byte)var_40]).var_2 = Tester_Class_3.var_9; ++ double var_61; ++ (true ? (arg_1.var_32 = arg_1) : (arg_1.var_32 = (Tester_Class_3.var_27 = (arg_1.var_32 = arg_1)))).var_6 = var_43 | (Tester_Class_2.var_4 = !Tester_Class_3.var_4) ? (arg_1.var_26 = arg_2) : (Tester_Class_2.var_19 = Tester_Class_2.var_18); ++ } ++ ++ private final char func_7(int arg_0) ++ { ++ Tester_Class_2.var_4 &= var_43; ++ float var_62 = Tester_Class_3.var_9; ++ --var_40; ++ int var_63 = Tester_Class_1.var_1++; ++ { ++ "nncjfoit".indexOf((new int[(byte)'\\'])[(byte)var_36]); ++ if (var_43) ++ { ++ ((new Tester_Class_3[(byte)var_40][(byte)Tester_Class_2.var_1])[(byte)5046997225818337280L][(byte)var_63]).var_24 >>>= var_40; ++ } ++ else ++ { ++ --var_40; ++ } ++ --Tester_Class_2.var_1; ++ --var_63; ++ } ++ { ++ final byte var_64 = Tester_Class_1.var_4 ? (byte)'M' : (byte)(var_62 -= + ((byte)Tester_Class_1.var_8)); ++ float var_65; ++ var_62 *= ((Tester_Class_3)(new Tester_Interface_0[var_64])[var_64]).var_24++; ++ var_36 /= var_64; ++ { ++ double var_66; ++ } ++ var_40 += 3500240160155094016L; ++ ((new Tester_Class_1[var_64][var_64])[var_64][var_64]).var_3 = (byte)(Tester_Class_2.var_7 = (Tester_Class_1.var_7 = (Tester_Class_1.var_7 = (Tester_Class_1.var_7 = var_64)))); ++ ++Tester_Class_3.var_1; ++ } ++ --arg_0; ++ { ++ arg_0++; ++ } ++ Tester_Class_2.var_1++; ++ var_40 &= (short)((byte)Tester_Class_2.var_8 >> (((new Tester_Class_3[(byte)var_36])[(byte)(var_40 = Tester_Class_3.var_8)]).var_3 = (byte)((byte)3.3531374E38F * var_40))); ++ var_36 %= (var_62 = (byte)900943133); ++ var_36 = Tester_Class_3.var_33; ++ var_62 += (var_40 /= (byte)6766658341842315264L % (byte)'p') * (short)2019461672; ++ --var_40; ++ if (true) ++ { ++ var_62 *= 365879806965555200L; ++ } ++ else ++ { ++ var_36 -= ~9163555887358003200L; ++ } ++ Tester_Class_1.var_4 = Tester_Class_1.var_4; ++ { ++ var_40 <<= var_63; ++ } ++ var_40++; ++ String var_67; ++ return Tester_Class_1.var_8; ++ } ++ ++ private final static Tester_Interface_0 func_8(char arg_0, final Tester_Class_2 arg_1, final String arg_2) ++ { ++ ((new Tester[(byte)((Tester_Class_3)arg_1).var_28])[((Tester_Class_1)(var_39 = arg_1)).var_3 = ((Tester_Class_3.var_27 = (Tester_Class_3)arg_1).var_3 = (byte)+ -9.9100855E36F)]).var_38 = (var_43 ? "k" : Tester_Class_2.var_19).substring(350785312); ++ return (new Tester_Interface_0[(byte)'l'])[((Tester_Class_1)(var_39 = (Tester_Class_3.var_27 = (Tester_Class_3)arg_1))).var_3 = ((Tester_Class_3.var_27 = arg_1).var_3 = (((Tester_Class_3)arg_1).var_3 = (arg_1.var_3 = (arg_1.var_3 = (byte)'['))))]; ++ } ++ ++ private final int func_9(Tester_Class_3 arg_0, char arg_1) ++ { ++ final float var_68 = Tester_Class_3.var_9; ++ Tester_Class_2.var_18.toLowerCase(); ++ double var_69; ++ { ++ Tester_Class_3.var_29 ^= !false || Tester_Class_2.var_4; ++ } ++ Tester_Class_1 var_70; ++ (Tester_Class_3.var_27 = (Tester_Class_2)(var_70 = arg_0)).var_6 = (Tester_Class_2)((var_41 = arg_0).var_6 = (arg_0.var_6 = arg_0)); ++ "hv".codePointBefore(--Tester_Class_2.var_1); ++ var_41 = arg_0; ++ return ~ (((arg_0 = arg_0).var_24 &= arg_1) == 3.0764282E38F ? (byte)457565863 : ((arg_0 = arg_0).var_3 = (byte)arg_0.var_28)); ++ } ++ ++ private static void func_10(double arg_0, final Tester_Class_3 arg_1, double arg_2) ++ { ++ arg_1.var_32 = 'g' != 1.520646515461986E307 ? (arg_1.var_32 = arg_1) : arg_1; ++ Tester_Class_2.var_19.startsWith(Tester_Class_2.var_19 = Tester_Class_3.var_18); ++ Tester_Class_1.var_4 ^= true & (arg_1.var_3 = (arg_1.var_3 = (byte)- ((byte)1.4509185661781193E308))) > (arg_1.var_2 = var_40); ++ var_36 += Tester_Class_3.var_9; ++ } ++ ++ Tester_Interface_0 func_12(final Object arg_0, float arg_1) ++ { ++ switch (((Tester_Class_3)arg_0).var_3 = (byte)arg_1) ++ { ++ case 4: ++ var_41 = (Tester_Class_3)(var_39 = (Tester_Class_3.var_27 = (Tester_Class_3.var_27 = (Tester_Class_3)arg_0))); ++ double var_72 = (double)3858573493713776640L; ++ byte var_73 = (var_41 = (Tester_Class_2)arg_0).var_3 = (((Tester_Class_3)arg_0).var_3 = (byte)var_72); ++ break; ++ ++ case 13: ++ (Tester_Class_3.var_27 = (((Tester_Class_3)arg_0).var_32 = (Tester_Class_3)(Tester_Class_2)arg_0)).var_3 = (Tester_Class_2.var_1 *= ((Tester_Class_3)arg_0).var_24) == (byte)Tester_Class_3.var_33 ? (byte)188693954866039808L : (byte)Tester_Class_2.var_8; ++ break; ++ ++ default: ++ var_40 <<= (byte)157510337; ++ break; ++ ++ case 26: ++ ++ case 122: ++ ++ } ++ Tester_Interface_0 var_74; ++ long var_75; ++ var_41 = (var_41 = (var_41 = (Tester_Class_2)arg_0)); ++ arg_1 *= 1601420762; ++ var_74 = (var_41 = Tester_Class_1.var_4 ? (Tester_Class_3)arg_0 : (Tester_Class_2)arg_0); ++ (Tester_Class_1.var_4 ? (Tester_Class_3)(var_39 = (Tester_Class_3)arg_0) : (true ? (Tester_Class_3)arg_0 : (Tester_Class_3)arg_0)).var_28 *= 1066935145; ++ var_40 >>>= (byte)6.643183E36F / - ((byte)1.277596E37F); ++ { ++ ((Tester_Class_3)(((Tester_Class_3)((Tester_Class_3.var_29 ^= (Tester_Class_3.var_29 &= var_43)) ? (Tester_Class_2)arg_0 : (Tester_Class_2)arg_0)).var_32 = (Tester_Class_3.var_27 = (Tester_Class_2)arg_0))).var_28--; ++ } ++ var_38 = "qad"; ++ byte var_76 = ((Tester_Class_2)(var_39 = (Tester_Class_3)arg_0)).var_3 = true ? ((var_41 = (var_41 = (Tester_Class_3)arg_0)).var_3 = (byte)1.7128118638075888E308) : (byte)1.6562746603631249E308; ++ return var_39 = (Tester_Class_3)((var_41 = (Tester_Class_3)arg_0).var_6 = Tester_Class_2.var_18); ++ } ++ ++ protected final String func_13() ++ { ++ float var_77; ++ var_38 = (Tester_Class_2.var_19 = var_38); ++ Tester_Class_2.var_4 ^= !var_43 | (Tester_Class_3.var_29 ^= Tester_Class_1.var_4); ++ Tester_Class_3.var_1--; ++ Tester_Class_2.var_1++; ++ return Tester_Class_2.var_18; ++ } ++ ++ public static String execute() ++ { ++ try { ++ Tester t = new Tester(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ try { return t.toString(); } ++ catch (Throwable e) { return "Error during result conversion to String"; } ++ } catch (Throwable e) { return "Error during test execution"; } ++ } ++ ++ public static void main(String[] args) ++ { ++ try { ++ Tester t = new Tester(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ try { System.out.println(t); } ++ catch(Throwable e) { } ++ } catch (Throwable e) { } ++ } ++ ++ private void test() ++ { ++ int var_78 = 0; ++ var_39 = (new Tester_Class_1[(byte)var_40])[(byte)Tester_Class_3.var_33]; ++ while (var_43 && (var_78 < 70 && true)) ++ { ++ var_40 *= ~ ~Tester_Class_3.var_33 % Tester_Class_3.var_9; ++ var_78++; ++ var_39 = new Tester_Class_3(); ++ var_39 = (var_41 = (Tester_Class_3.var_27 = new Tester_Class_2())); ++ } ++ final Tester_Class_3 var_79 = (Tester_Class_1.var_4 ? ~Tester_Class_3.var_33 : var_36) == 1433764895112462336L ? new Tester_Class_3() : new Tester_Class_3(); ++ Tester_Class_2 var_80; ++ } ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester.var_40 = "; result += Printer.print(var_40); ++ result += "\n"; ++ result += "Tester.var_42 = "; result += Printer.print(var_42); ++ result += "\n"; ++ result += "Tester.var_36 = "; result += Printer.print(var_36); ++ result += "\n"; ++ result += "Tester.var_37 = "; result += Printer.print(var_37); ++ result += "\n"; ++ result += "Tester.var_39 = "; result += Printer.print(var_39); ++ result += "\n"; ++ result += "Tester.var_38 = "; result += Printer.print(var_38); ++ result += "\n"; ++ result += "Tester.var_43 = "; result += Printer.print(var_43); ++ result += "\n"; ++ result += "Tester.var_41 = "; result += Printer.print(var_41); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++ static class Printer ++ { ++ public static String print(boolean arg) { return String.valueOf(arg); } ++ public static String print(byte arg) { return String.valueOf(arg); } ++ public static String print(short arg) { return String.valueOf(arg); } ++ public static String print(char arg) { return String.valueOf((int)arg); } ++ public static String print(int arg) { return String.valueOf(arg); } ++ public static String print(long arg) { return String.valueOf(arg); } ++ public static String print(float arg) { return String.valueOf(arg); } ++ public static String print(double arg) { return String.valueOf(arg); } ++ ++ ++ public static String print(Object arg) ++ { ++ return print_r(new java.util.Stack(), arg); ++ } ++ ++ private static String print_r(java.util.Stack visitedObjects, Object arg) ++ { ++ String result = ""; ++ if (arg == null) ++ result += "null"; ++ else ++ if (arg.getClass().isArray()) ++ { ++ for (int i = 0; i < visitedObjects.size(); i++) ++ if (visitedObjects.elementAt(i) == arg) return "<recursive>"; ++ ++ visitedObjects.push(arg); ++ ++ final String delimiter = ", "; ++ result += "["; ++ ++ if (arg instanceof Object[]) ++ { ++ Object[] array = (Object[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print_r(visitedObjects, array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof boolean[]) ++ { ++ boolean[] array = (boolean[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof byte[]) ++ { ++ byte[] array = (byte[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof short[]) ++ { ++ short[] array = (short[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof char[]) ++ { ++ char[] array = (char[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof int[]) ++ { ++ int[] array = (int[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof long[]) ++ { ++ long[] array = (long[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof float[]) ++ { ++ float[] array = (float[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof double[]) ++ { ++ double[] array = (double[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ ++ result += "]"; ++ visitedObjects.pop(); ++ ++ } else ++ { ++ result += arg.toString(); ++ } ++ ++ return result; ++ } ++ } ++} ++ ++ +diff -r 4aebfff4f8a2 hotspot/test/compiler/6716441/Tester.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6716441/Tester.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,940 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6716441 ++ * @summary error in meet with +DoEscapeAnalysis ++ * @run main/othervm -Xcomp -XX:+AggressiveOpts Tester ++ */ ++ ++/* Complexity upper bound: 70070 ops */ ++ ++class Tester_Class_0 { ++ Object var_1; ++ ++ ++ public Tester_Class_0() ++ { ++ var_1 = "cmlv"; ++ { ++ final Object var_7 = false ? (var_1 = "flwnujmm") : (var_1 = ""); ++ } ++ float var_8 = 0F; ++ boolean var_9; ++ do ++ { ++ ((var_9 = (var_9 = (var_9 = false))) && true ? new String("yvirc") : "rmfkjbx").indexOf(99854165); ++ var_8++; ++ boolean var_10 = true; ++ var_10 |= true ? true : false; ++ var_10 |= false | var_10 ? (var_10 |= true) : true; ++ } while (var_8 < 1 && "tpb".charAt(~ ((byte)2449669946597620736L)) >>> (byte)1.704554E38F >= ('t' < var_8 ? (short)var_8 : 1237471887 / +4199632387838836736L)); ++ var_1 = (var_1 = "y"); ++ switch ((var_9 = "".equalsIgnoreCase("kqalxwsnu") | false) ? (new char[(byte)1.3230508534158742E308])[(byte)(short)93390917] : 'c') ++ { ++ case 'U': ++ ++ case 'W': ++ ++ case 'A': ++ ++ case 72: ++ ++ } ++ var_9 = (var_9 = false); ++ float var_11 = 0F; ++ var_9 = true; ++ for (var_1 = (var_1 = new boolean[(new byte[(byte)'O'])[(byte)'l']]); var_11 < 2; var_1 = (true ? "" : "nn").toUpperCase()) ++ { ++ var_9 = true; ++ var_11++; ++ var_9 = true; ++ int var_12 = (new short[(byte)1825213428])[(byte)1.6151095881186834E308] + (byte)(short)'V'; ++ } ++ var_1 = (new boolean[(byte)1546704177][(byte)6314352927310996480L][(byte)6838913812451802112L])["e".equalsIgnoreCase("d") ? (byte)3.964472879846357E307 : (byte)'L']; ++ var_9 = (var_9 = false); ++ } ++ ++ ++ ++ protected Object clone() ++ { ++ var_1 = (var_1 = "dbogknllu"); ++ var_1 = "jljax"; ++ var_1 = (var_1 = false ? "s" : "upqinst"); ++ if (false) ++ { ++ var_1 = (var_1 = (var_1 = "nwhu")); ++ } ++ else ++ { ++ short var_2; ++ var_2 = false ? (byte)((short)'e' - (byte)2.267975E38F) : (byte)1.28920093132789E308; ++ } ++ (((byte)2.3450009E38F >= (byte)- (+ - -1.6256751428449317E306 * 954071273906192384L) ? true : true) ? "gpv".substring(468176669, 1915798010) : "macqbvf").offsetByCodePoints("ivwivjege".charAt(1819923298) >>> (byte)((- ~653213024937366528L + 'N') * +1.0297164E38F) + (short)~ + -4535402293751053312L, (short)3837656677199316992L + (new byte[(byte)2.1586717E38F])[(byte)((short)719847962 - 8.599263E37F)]); ++ new String((char)650047353 > (short)'I' ? "maygldu".replaceAll("hpn", "bacoyows") : "nkx").endsWith(new String("h" + "vx")); ++ byte var_3; ++ return var_1 = "vbiccvdu"; ++ } ++ ++ public boolean equals(Object obj) ++ { ++ var_1 = "rxpocj"; ++ obj = "ndogtwvuh"; ++ { ++ { ++ var_1 = "vmdkvs"; ++ } ++ final boolean var_4 = false; ++ long var_5; ++ var_5 = (short)'G' >> + ((byte)1.1872624048733707E308); ++ } ++ var_1 = (new byte[(byte)(short)1.7804576633213148E308][(byte)(short)8.300151422843056E307])[(byte)3110360603258978304L]; ++ obj = "fudebwroh"; ++ obj = new Object[(false && false) & false ? (byte)8796624364629753856L : (byte)- +1.5843542184394165E308]; ++ if (true) ++ { ++ var_1 = new float[(byte)1372189277][(byte)((byte)8.352642520619892E307 == (! !false ^ true ? (short)1.3871033E37F : (byte)'f') ? 7.33899E37F - (short)2.2558552E37F : 2.6072269E38F)]; ++ } ++ else ++ { ++ var_1 = obj; ++ obj = new boolean[(byte)8.623747E37F][(byte)~ ((byte)(short)(byte)2100816354)]; ++ } ++ var_1 = new int[(new byte[(byte)7410132537719084032L])[(byte)1524949007]][(byte)((long)9188640 ^ 'n')]; ++ if (-3.0364305E38F > 8.114229090672013E307) ++ { ++ var_1 = (var_1 = new boolean[(byte)1.0354788699727844E308][(byte)-4867581638981979136L]); ++ } ++ else ++ { ++ obj = (obj = obj); ++ obj = (new int[(byte)'f'][(byte)7563033606293564416L])[(byte)2052737645]; ++ } ++ long var_6; ++ var_6 = (+ + ~3862500564271147008L != (short)8549491352795953152L || (byte)+ + (var_6 = 'D') > (var_6 = 1687952259)) && true ? (short)1756260278 : (byte)(short)3.202384E36F; ++ return false ^ ((false ? !true : true) ? false : (true ? ! !false : false)); ++ } ++ ++ ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_0.var_1 = "; result += Tester.Printer.print(var_1); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++interface Tester_Interface_1 { ++} ++ ++ ++final class Tester_Class_2 extends Tester_Class_0 { ++ static char var_13; ++ final static long var_14 = ~ ~ (((false ? !true ^ !true : !false | true) ? (byte)1.4363583E38F : (byte)(short)'X') * + + +3767002589844008960L << (var_13 = (var_13 = 'X'))); ++ ++ ++ public Tester_Class_2() ++ { ++ ((true ? (byte)- ((byte)2.6338962E38F) : (byte)'H') <= (short)8.671266E37F || !false & true ? (Tester_Class_0)(var_1 = "tgoexsr") : (Tester_Class_0)(var_1 = "mptusv")).var_1 = "tbxbgyti"; ++ var_1 = true ? (var_1 = "islgpxwa") : "rypkbu"; ++ var_1 = "vngiif"; ++ var_13 = (var_13 = (short)~ (-3250577075350561792L + +2983539228635145216L - '`') < 861590495 * (short)1.5299644E38F ? 'V' : 'G'); ++ Object[] var_27; ++ var_1 = (var_1 = "glu"); ++ } ++ ++ ++ ++ ++ ++ private static int func_0(Tester_Interface_1 arg_0, Tester_Interface_1 arg_1, final int arg_2) ++ { ++ var_13 = 'i'; ++ new String(); ++ (true ? "pu" : "oltbcysyd").substring(1236315614); ++ byte var_15; ++ var_15 = (new byte[(byte)1582653493940204544L][(byte)(char)-1.5806537192822515E308])[(byte)1.2986292E38F][(byte)(short)arg_2]; ++ if (true || true) ++ { ++ ((new Tester_Class_2[var_15 = (byte)'q'])[var_15 = 7.653082E37F < (var_13 = 'o') ? (byte)- - + +3.1640875E38F : (byte)-6820511772487837696L]).var_1 = (new Tester_Class_0[(byte)(short)(new byte[(byte)1080194717])[(byte)8297829563314362368L]])[var_15 = (var_15 = (var_15 = (var_15 = (byte)'t')))]; ++ double[] var_16; ++ } ++ else ++ { ++ arg_1 = (arg_1 = arg_0); ++ } ++ var_13 = (var_13 = 'o'); ++ var_13 = (false || false ^ false) ^ !true ? 'Z' : (var_13 = 'i'); ++ return true ? (var_15 = (byte)'C') : 1120493294; ++ } ++ ++ static double func_1(final int arg_0, long arg_1, long arg_2) ++ { ++ "ghtfhmbeg".compareToIgnoreCase("djn"); ++ { ++ ((true ? true : ! !true) ? "" : "ioowivxge").substring(1844979226, "ppsk".startsWith("lllmn") | false ? arg_0 * arg_0 : (byte)663320199); ++ ((Tester_Class_0)(((new Tester_Class_2[(byte)4797509007239530496L])[(byte)(- -2.8961086E38F - arg_1)]).var_1 = new float[(byte)('m' / 6.0657416E37F)])).var_1 = new boolean[(byte)(short)(+4.515459E37F - (short)arg_0)][(byte)(-1.3002677717712297E308 + (var_13 = "bcjfdnc".charAt(arg_0)) * (arg_2 - 1.6058080036165979E308))]; ++ var_13 = 'E'; ++ } ++ float var_17 = 0F; ++ --arg_1; ++ do ++ { ++ final String[] var_18 = new String[(byte)(short)arg_0]; ++ var_17++; ++ Object var_19 = (new Object[(byte)var_17])[(false ? "xfkx".equalsIgnoreCase("j") : !false) ^ !false ? (byte)(1.6627987E35F * 2.62825E38F) : (byte)var_17]; ++ } while (var_17 < 2 && false | ((byte)1.4661115E38F | arg_0 - 'l') < ('J' & (byte)+ ((float)1200013759))); ++ long var_20 = 0L; ++ arg_2--; ++ for (var_13 = (var_13 = (var_13 = (var_13 = (var_13 = (var_13 = 'p'))))); var_20 < 4; var_13 = 'y') ++ { ++ new String((true | true ? "oxpfy" : "gaynucv") + (true ? "cmrrk".substring(653981013, arg_0) : "ociewl" + "srhbvcgci")); ++ var_20++; ++ arg_2 >>= arg_0; ++ arg_2 = false ? (byte)'l' : (byte)(~var_20 - (byte)1.1290483681734838E308); ++ } ++ ((new Tester_Class_2[(byte)arg_1++])[(byte)685259385]).var_1 = new Tester_Interface_1[(byte)arg_0]; ++ --arg_1; ++ var_13 = 483446392 - (byte)'P' < ((short)(true ? (var_13 = 't') : 'n') & (short)'l') ? (var_13 = 'q') : (var_13 = (var_13 = 'h')); ++ var_13 = 'y'; ++ return 1.097000731360761E308; ++ } ++ ++ private final boolean func_2(final short[][] arg_0, byte arg_1, Object arg_2) ++ { ++ var_1 = new char[arg_1]; ++ arg_1 /= (var_13 = 'A') + -var_14; ++ int var_21 = 0; ++ arg_2 = (new Tester_Class_0[arg_1 += var_14][arg_1])[arg_1 >>>= 'R' + + -var_14 - 4078879817303787520L]; ++ for (arg_1--; (+ +1.1473423E38F < 'w' & false | var_21 != (short)4633877342445358080L | !false ? false | !false : true) && (var_21 < 1 && (arg_0[arg_1])[arg_1 %= 7.136449148111178E307] > 7.362329280963185E307); arg_1++) ++ { ++ arg_1 = (arg_1 %= + -9.872181578576624E307); ++ var_21++; ++ arg_1 /= 7.365334241099395E307; ++ var_13 = (var_13 = (var_13 = (var_13 = (var_13 = (var_13 = 'A'))))); ++ } ++ arg_1 >>= var_14; ++ boolean var_22 = false; ++ return ((var_22 &= true) && var_22 ? (short)1.568578228250838E308 : arg_1) >= (new float[arg_1])[arg_1 /= 1.6849858816110731E308]; ++ } ++ ++ public final String func_3(Tester_Interface_1 arg_0) ++ { ++ arg_0 = arg_0; ++ arg_0 = (arg_0 = arg_0); ++ var_13 = (var_13 = (var_13 = (var_13 = "rqimya".charAt(390686412)))); ++ ((Tester_Class_0)(var_1 = "suxd")).var_1 = new Tester_Class_0[(byte)(float)(short)1.584667675541511E308]; ++ arg_0 = ((byte)+ + - +1.3636011E38F == 'L' ^ true) & (!true | true) ? (arg_0 = arg_0) : arg_0; ++ var_1 = (((Tester_Class_0)(var_1 = (Tester_Class_0)(var_1 = "ndxcurdr"))).var_1 = (var_1 = (var_1 = "schnhe"))); ++ var_1 = (new Object[(byte)(var_13 = (var_13 = 'G'))])[(byte)((byte)1.5366658198344074E308 - 1.0051541518022535E308)]; ++ var_13 = (var_13 = 'x'); ++ (true ? (Tester_Class_0)(var_1 = "slesdph") : (Tester_Class_0)(var_1 = "wxj")).var_1 = false ? (Tester_Class_0)(var_1 = "iddvoil") : (Tester_Class_0)(var_1 = "yjbxhuip"); ++ var_13 = (var_13 = 'f'); ++ var_1 = (new short[(byte)1.8902424351360974E307])[(new byte[(byte)1552392028])[(byte)'V']] >= (1.2449926736063704E308 + 'K') / (short)1.0847178E38F / ((short)'M' % (1.225890077244388E308 + + ((byte)1.5358312881295287E308))) ? (Tester_Class_0)(var_1 = "khfntg".toString()) : (Tester_Class_0)(var_1 = "jkttx"); ++ { ++ arg_0 = arg_0; ++ } ++ arg_0 = arg_0; ++ var_13 = (true ? "jndbffakc" : "hhcsc").charAt((byte)7322932713210745856L >> (short)(var_13 = (var_13 = 'R'))); ++ var_13 = (var_13 = (var_13 = 'U')); ++ { ++ "gepdu".trim(); ++ } ++ var_13 = 'H'; ++ new String(); ++ { ++ (false ^ (true ^ ((!true | ! !true) ^ ! (1.7800668444792402E308 * var_14 >= (var_13 = (var_13 = (var_13 = 'g')))))) ? "dsm" : "g").toUpperCase().toString(); ++ ((Tester_Class_0)(var_1 = "fcdvd")).var_1 = (Tester_Class_0)(((Tester_Class_0)(var_1 = "uwhnte")).var_1 = "vpatqpd"); ++ } ++ switch (((byte)((byte)((int)'n' / var_14) >>> (short)7.786475993917233E307 - (var_13 = 'm')) <= (("".endsWith("pbypgis") ^ false) & true ? (byte)func_0(arg_0, arg_0, 723551781) : (short)140766856) ? true | (!false || false) : 'F' != (var_13 = 'V')) ? (var_13 = 'j') : 'D') ++ { ++ case 'p': ++ ++ } ++ var_13 = (var_13 = (var_13 = 'y')); ++ var_13 = ("" + "wwbxwyt").charAt((short)8373354379880418304L << (short)(byte)1.557224945027141E308); ++ arg_0 = true ? (arg_0 = arg_0) : arg_0; ++ ((Tester_Class_0)(((Tester_Class_0)(var_1 = "rmkvbp")).var_1 = (var_1 = "gvb"))).var_1 = new Tester_Class_0[(byte)var_14]; ++ arg_0 = arg_0; ++ return 2.5245162E38F + 3.9088502076337727E307 > 1.0883030748712796E308 ? "efttufmbg" : "xy"; ++ } ++ ++ protected short func_4(final double arg_0, long arg_1, final Object arg_2, final byte arg_3) ++ { ++ (((("ptnmpn".startsWith("xxgxjvsie") ? !true : ! !true) ? ! !false : false) ? (true ? true : false) : (var_13 = (var_13 = 'X')) == 1948276447) ? (Tester_Class_0)(var_1 = new float[arg_3][arg_3]) : (Tester_Class_0)arg_2).var_1 = new double[(new byte[arg_3][arg_3])[arg_3][arg_3]][arg_3]; ++ boolean var_23; ++ return true ? (short)'r' : (byte)(short)('\\' >>> arg_3); ++ } ++ ++ final static byte func_5(final long arg_0, float arg_1, final double arg_2) ++ { ++ arg_1 = arg_2 <= ((var_13 = 'D') <= - (3463565869695079424L << 'S') ? 'a' : (var_13 = 'o')) | (true ? !false : !false) ? (byte)(short)(var_13 = 'r') : (short)(byte)'S'; ++ { ++ { ++ arg_1 %= '_'; ++ } ++ char var_24 = 'G'; ++ "hc".lastIndexOf(""); ++ arg_1 *= (arg_1 /= (byte)-8.308933840953204E306); ++ --var_24; ++ arg_1 /= ~ ((byte)2.2736606E38F) <= (3392301601783633920L == 3.015267E38F ^ ! !true ? (byte)88382550 : (byte)1.2019729E38F) ? 1027309963 : + -4.355887546298483E307; ++ ((new Tester_Class_2[(byte)arg_2])[(byte)870592870]).var_1 = "i"; ++ arg_1 /= 't'; ++ } ++ var_13 = 'f'; ++ Tester_Class_0 var_25 = (new Tester_Class_0[(byte)arg_1])[(true | false ^ !false) & ! !true & - +2.758844E38F >= (new short[(byte)5.9160883E37F])[(byte)'r'] ? (byte)arg_0 : (byte)((short)1802078016 & arg_0)]; ++ arg_1 /= (byte)arg_2; ++ var_13 = 'R'; ++ boolean var_26 = (true ? false : !false) ? false : !true == ! !false; ++ arg_1 %= (var_26 ^= (byte)1101752087 <= (short)arg_1) ? arg_1 : (float)1882235314; ++ var_25 = var_25; ++ if (var_26 &= var_26) ++ { ++ var_13 = "".startsWith("vp", - ((byte)2040501187) ^ (byte)-3921263616446438400L) ? "gam".charAt(+ ((byte)arg_1)) : (var_13 = 'H'); ++ arg_1 /= var_26 | ! (var_26 ^ (byte)arg_0 <= (var_13 = 'r') | (var_26 |= var_26)) ? 'N' : ~8963227563301903360L; ++ } ++ else ++ { ++ var_13 = 'l'; ++ var_25 = (var_25 = var_25); ++ } ++ arg_1 += (byte)(("m".substring(837996717, 861903057).startsWith("vwpky", (var_13 = 'Z') % (byte)arg_1) ? !false ^ !var_26 : var_26) ? (byte)arg_1 : ((var_26 | var_26) ^ !false ? (short)'U' : (short)'d')); ++ ((1.3445538E38F < (arg_1 -= 1236356135) ^ (var_26 = true)) & var_26 ? var_25 : (var_25 = var_25)).var_1 = true ? (var_25.var_1 = var_25) : (var_25.var_1 = var_25); ++ var_26 |= - ((byte)251113415) < (short)arg_1 & false & false; ++ arg_1 += (var_26 &= true) ? 7.546147305340402E307 : (true & !var_26 ? (byte)1.5107802154474685E307 : (byte)arg_1); ++ var_25.var_1 = true ? "bqsewhn" : "aojssvan"; ++ return (byte)(var_13 = (char)(new short[(byte)46697464])[(byte)var_14]); ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_2.var_13 = "; result += Tester.Printer.print(var_13); ++ result += "\n"; ++ result += "Tester_Class_2.var_14 = "; result += Tester.Printer.print(var_14); ++ result += "\n"; ++ result += "Tester_Class_2.var_1 = "; result += Tester.Printer.print(var_1); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++public class Tester { ++ static Tester_Class_0 var_28; ++ double var_29 = 4.861846831496217E307; ++ static byte var_30 = 79; ++ static boolean var_31 = false; ++ final byte var_32 = 48; ++ ++ ++ public short func_0(final byte arg_0, boolean arg_1, final double arg_2) ++ { ++ --var_30; ++ new Tester_Class_2().var_1 = "xdwldeqhc"; ++ char var_33 = 'd'; ++ return (var_31 = var_30 < (new short[var_30])[var_30]) ? (short)(var_33 >>>= (short)2.3152642E38F) : var_30; ++ } ++ ++ private final float func_1(final long arg_0, final Tester_Class_0 arg_1, Tester_Class_0 arg_2, final char arg_3) ++ { ++ { ++ new Tester_Class_0(); ++ } ++ var_30 >>= (short)1.1469118780047631E308; ++ var_31 |= var_31; ++ if (true) ++ { ++ Tester_Class_2 var_34 = (var_31 ^= (var_31 ^= false)) ? (Tester_Class_2)arg_1 : (new Tester_Class_2[var_32])[var_30]; ++ } ++ else ++ { ++ "shqjwg".compareToIgnoreCase(false ? "gxoyw" + "cx" : "r" + "icj"); ++ } ++ ((new Tester_Class_2[var_32])[++var_30]).var_1 = (new Object[var_30][var_32][var_32])[var_30 |= var_32]; ++ arg_1.var_1 = (arg_2 = arg_2); ++ arg_1.var_1 = (((new Tester_Class_2[var_30])[var_30 = var_32]).var_1 = new String[var_32]); ++ var_28 = (Tester_Class_2)((arg_2 = arg_2).var_1 = new double[var_30]); ++ arg_2 = arg_1; ++ final boolean var_35 = "qjsdfuyru".endsWith("nuw" + "bne") | arg_3 >= 1.2054153346397785E308; ++ var_31 &= (var_31 ^= var_35); ++ { ++ var_31 &= var_31 ? false : !false; ++ } ++ if (var_31) ++ { ++ var_28 = (new Tester_Class_2[var_32])[var_32]; ++ } ++ else ++ { ++ arg_1.equals((new Object[var_32])[var_32]); ++ } ++ ((var_31 ^= true) ? "x" : "euc").substring(+ (var_30 ^= var_30) & (byte)(new short[var_30])[var_30 /= 4.220757896697652E307]); ++ arg_2 = var_31 ? (Tester_Class_2)arg_1 : (Tester_Class_2)arg_2; ++ arg_2 = (Tester_Class_2)(new Object[var_32][var_32])[var_30][var_32]; ++ return 9.932983E36F * (Tester_Class_2.var_13 = arg_3); ++ } ++ ++ public int func_2(Tester_Class_0 arg_0) ++ { ++ "ptwusxrxn".indexOf("v"); ++ var_30 |= 1770666843; ++ var_29 += (short)(Tester_Class_2.var_14 / Tester_Class_2.var_14); ++ if (var_31) ++ { ++ var_30 = var_32; ++ } ++ else ++ { ++ double var_36; ++ } ++ if (true) ++ { ++ var_30 -= 2.1474216E38F; ++ } ++ else ++ { ++ var_29 += 'f'; ++ } ++ var_29 -= Tester_Class_2.var_14; ++ if (false) ++ { ++ arg_0.var_1 = arg_0; ++ } ++ else ++ { ++ arg_0 = (var_28 = (var_28 = arg_0)); ++ } ++ { ++ Tester_Class_2.var_13 = 'p'; ++ } ++ var_29 = ~Tester_Class_2.var_14 % 'y'; ++ switch (var_30 >>>= var_30) ++ { ++ case 115: ++ ++ } ++ arg_0 = arg_0; ++ var_31 ^= (var_31 = true); ++ return "".charAt(~var_32) >> ((var_31 &= true) ? var_30 : var_32); ++ } ++ ++ protected double func_3(boolean[] arg_0, double arg_1, long[][] arg_2) ++ { ++ switch (var_31 ? (short)(var_32 / (arg_1 /= (int)(arg_1 *= (Tester_Class_2.var_13 = ']')))) : (var_30 ^= + +Tester_Class_2.var_14 * (+ +3075166460237931520L / '['))) ++ { ++ case 31: ++ ++ case 118: ++ ++ } ++ Tester_Class_2.var_13 = 'm'; ++ "mwkh".indexOf("hdgiquve", (new char[var_32])[var_30 &= 'S'] % var_30); ++ final boolean var_37 = false; ++ char var_38 = 'F'; ++ var_28 = (new Tester_Class_2[var_30][var_30])[var_30 *= var_38][var_32]; ++ new Tester_Class_0().var_1 = new char[var_32][var_30]; ++ var_30 &= var_30; ++ var_31 |= (var_31 |= true); ++ int var_39 = 1769831681; ++ final Tester_Class_2 var_40 = (var_31 |= false ? var_31 : var_37) ? (Tester_Class_2)((new Object[var_30][var_30][var_32])[var_30 <<= var_30])[var_30][var_30++] : (Tester_Class_2)new Tester_Class_0(); ++ var_30 -= +var_30; ++ "dvmuim".replaceFirst("clmisuxu", "".toLowerCase() + "xi"); ++ var_39 = var_38 - (short)585806817; ++ arg_1 += (double)(short)(6.4329855E37F / var_32 * (var_38 += 'w')); ++ ++var_39; ++ var_40.var_1 = (var_28 = (var_28 = var_40)); ++ var_29 /= 3.5705444317400964E306; ++ Tester_Interface_1 var_41; ++ return arg_1; ++ } ++ ++ final char func_4(final long arg_0, int arg_1, final int arg_2) ++ { ++ { ++ Tester_Class_2.var_13 = 'D'; ++ var_31 = false; ++ } ++ if (var_31) ++ { ++ var_30--; ++ Tester_Class_0 var_42 = var_28 = (new Tester_Class_0[var_32])[var_32]; ++ } ++ else ++ { ++ Tester_Class_2.var_13 = (Tester_Class_2.var_13 = 'H'); ++ } ++ var_28 = (Tester_Class_2)(new Tester_Class_2().var_1 = (var_28 = (new Tester_Class_0[var_30])[var_30])); ++ arg_1 &= var_32; ++ --var_30; ++ return Tester_Class_2.var_13 = 'n'; ++ } ++ ++ final static Object func_5() ++ { ++ var_28 = (Tester_Class_2)(! (var_31 |= true & var_31) ? (new Tester_Class_0[var_30])[var_30] : (var_28 = (new Tester_Class_0[var_30])[var_30])); ++ var_31 |= false; ++ return var_31 ? (((Tester_Class_2)(new Object[var_30])[var_30]).var_1 = (new Tester_Class_0[var_30 /= 1366944127])[var_30]) : (new Tester_Class_0[var_30][var_30])[var_30 += 1.4070924450257891E307][var_30]; ++ } ++ ++ static Tester_Class_2 func_6(final Object arg_0) ++ { ++ var_28 = (var_31 ^= true) ? (Tester_Class_2)arg_0 : (Tester_Class_2)arg_0; ++ ((new Tester[--var_30])[var_30]).var_29 -= -3.0029087E38F * (Tester_Class_2.var_13 = (Tester_Class_2.var_13 = 'k')); ++ var_28 = (Tester_Class_2)(var_28 = (var_28 = (var_28 = (Tester_Class_0)arg_0))); ++ return false ? new Tester_Class_2() : new Tester_Class_2(); ++ } ++ ++ private static Tester_Interface_1 func_7(byte arg_0, Tester_Class_2 arg_1, final int arg_2, char arg_3) ++ { ++ { ++ var_31 = var_31; ++ var_31 |= (var_31 &= (var_31 |= !true)); ++ arg_0 += Tester_Class_2.var_14; ++ } ++ var_30 = (var_30 *= ((new Tester[arg_0 ^= 1039546367])[arg_0]).var_32); ++ arg_1.var_1 = (var_31 ^= (var_31 &= !var_31 && !var_31)) ? (arg_1 = (arg_1 = arg_1)) : (new Tester_Class_0[arg_0++][arg_0])[arg_0][arg_0]; ++ arg_1.var_1 = var_31 ? "jpmg" : "epwvupaqp"; ++ var_28 = arg_1; ++ if (false) ++ { ++ arg_1 = arg_1; ++ } ++ else ++ { ++ arg_3 += var_30 % -9.298157E37F; ++ } ++ arg_1.var_1 = ((var_28 = (var_28 = arg_1)).var_1 = ((var_28 = arg_1).var_1 = "rlmf")); ++ var_28 = (arg_1 = arg_1); ++ arg_1 = arg_1; ++ { ++ var_31 = true; ++ } ++ (arg_1 = arg_1).var_1 = (arg_1.var_1 = (arg_1 = arg_1)); ++ final short[] var_43 = new short[(var_31 &= false) ? arg_0 : var_30]; ++ final short var_44 = 18087; ++ return false ? (new Tester_Interface_1[var_30 %= Tester_Class_2.var_14])[arg_0 -= 8.913955E37F * +arg_0] : (new Tester_Interface_1[var_30])[var_30]; ++ } ++ ++ private static float func_8(final Object[] arg_0, final byte arg_1, Tester_Class_0[] arg_2) ++ { ++ ((new Tester_Class_2[var_30 /= -2.37832E38F])[((new Tester[arg_1])[(new byte[arg_1])[arg_1]]).var_32]).var_1 = new Tester_Interface_1[arg_1]; ++ if (var_31) ++ { ++ var_28 = (Tester_Class_2)(var_28 = arg_2[var_30]); ++ } ++ else ++ { ++ var_30 -= Tester_Class_2.var_14; ++ final int var_45 = 1864933386; ++ final Tester_Class_0 var_46 = var_28 = (new Tester_Class_2[arg_1][var_30 |= Tester_Class_2.var_14])[((new Tester[arg_1][var_30])[var_30][var_30]).var_32][arg_1]; ++ var_31 &= (var_31 ^= false); ++ var_30 += (false ? 2.7581227E37F : + +1.8832631E38F) * ('P' * -1.9479086E38F); ++ } ++ (var_28 = (Tester_Class_2)arg_2[arg_1]).var_1 = (new Tester_Class_2[var_30][arg_1][arg_1])[arg_1]; ++ ++var_30; ++ (var_28 = (new Tester_Class_2[var_30])[arg_1]).var_1 = false ? (new Tester_Class_0[var_30][var_30])[var_30][arg_1] : arg_2[var_30]; ++ var_31 |= false; ++ ((new Tester[arg_1][var_30 >>>= (char)1981599])[arg_1][arg_1]).var_29 = false ^ (var_31 = var_31) ? (Tester_Class_2.var_13 = "nes".charAt(1080898679)) : - (var_30 %= 'n') ^ arg_1; ++ { ++ ((new Tester[arg_1])[var_30]).var_29 = (short)(Tester_Class_2.var_13 = (Tester_Class_2.var_13 = 'h')); ++ } ++ Tester_Class_2.var_13 = 'j'; ++ ((new Tester_Class_2[arg_1])[var_30]).var_1 = new byte[var_30]; ++ var_31 ^= (var_31 ^= !false); ++ "wcbi".toString(); ++ final byte var_47 = var_30; ++ if (true) ++ { ++ "mpbkilw".substring(199662864); ++ } ++ else ++ { ++ var_30++; ++ } ++ Tester_Class_2.var_13 = '`'; ++ "yujypq".indexOf("crve" + "inmvh", false ? ~arg_1 : "vukbkc".charAt(528096652)); ++ Tester_Class_2 var_48 = (Tester_Class_2)((!var_31 & (var_31 ^= false ^ !true) ? false | !true : false) ? (var_28 = (Tester_Class_2)arg_0[var_30]) : (new Tester_Class_2[arg_1])[var_30]); ++ return (float)(var_31 ^ var_31 ? (var_30 ^= (short)((new Tester[var_30])[var_30]).var_29) : (var_30 /= - -5.917837279005691E307 - - +3.2004715720509636E306)); ++ } ++ ++ final Tester_Class_0 func_9() ++ { ++ var_30 += -3531557622894482432L / ~var_30; ++ var_28 = (var_28 = (new Tester_Class_2[var_30 += + -7.0203367E37F])[var_30]); ++ var_31 ^= ! !false ^ false; ++ if (true) ++ { ++ byte[] var_49; ++ var_31 &= true; ++ short var_50 = 14869; ++ } ++ else ++ { ++ (((new Tester[var_32][var_30][var_32])[var_30])[var_32][var_30]).var_29 *= 'h'; ++ } ++ final int var_51 = false ? +var_32 >>> ~var_30 : --var_30; ++ var_31 |= false; ++ return (new Tester_Class_0[var_32][var_32])[var_30][var_30]; ++ } ++ ++ public static Object func_10() ++ { ++ Tester_Class_2.var_13 = (Tester_Class_2.var_13 = 'O'); ++ return ((Tester_Class_2)(new Object[--var_30])[var_30]).var_1 = (((Tester_Class_2)(new Object[var_30])[var_30]).var_1 = "iu"); ++ } ++ ++ protected byte func_11(final Tester_Interface_1[] arg_0) ++ { ++ { ++ --var_30; ++ var_29 *= (short)1749707986816114688L; ++ var_31 = (var_31 = (var_31 |= var_31)); ++ var_30 -= 6.4575257E37F; ++ } ++ var_28 = (var_28 = func_9()); ++ Tester_Class_2.var_13 = 'b'; ++ var_30--; ++ var_28 = (var_28 = (var_28 = (var_28 = (Tester_Class_2)func_10()))); ++ var_28 = (new Tester_Class_2[var_32])[var_30]; ++ char var_52 = (var_31 = false) ? (char)+ +Tester_Class_2.var_14 : (Tester_Class_2.var_13 = (Tester_Class_2.var_13 = '_')); ++ if (false) ++ { ++ var_30 += (short)(var_32 + 840104459); ++ } ++ else ++ { ++ var_29 /= 2.5320765E38F; ++ } ++ if (true) ++ { ++ var_30 %= 379977167934025728L; ++ } ++ else ++ { ++ var_52 = var_52; ++ } ++ var_30 >>= ('A' ^ --var_30) & 'H'; ++ Tester_Class_2 var_53; ++ final int var_54 = 771623383; ++ var_29 %= (+1.938582E37F - 'G') * ++var_30; ++ int var_55 = (short)6.234053079170724E306 - (int)'^' / ((var_31 &= (var_31 ^= var_31)) ? (short)var_30 : ++var_30); ++ var_55 >>>= var_55 / ~6865244393150017536L; ++ var_31 ^= !false; ++ return var_30 >>>= 4351766607072508928L >> func_0(var_32, var_31, 1.021781609675458E308); ++ } ++ ++ public static String execute() ++ { ++ try { ++ Tester t = new Tester(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ try { return t.toString(); } ++ catch (Throwable e) { return "Error during result conversion to String"; } ++ } catch (Throwable e) { return "Error during test execution"; } ++ } ++ ++ public static void main(String[] args) ++ { ++ try { ++ Tester t = new Tester(); ++ try { t.test(); } ++ catch(Throwable e) { } ++ try { System.out.println(t); } ++ catch(Throwable e) { } ++ } catch (Throwable e) { } ++ } ++ ++ private void test() ++ { ++ { ++ ((Tester_Class_2)(Tester_Class_0)((var_31 = true) ^ (var_31 |= false & true) ? func_10() : new Tester_Class_2[var_32])).var_1 = ((var_28 = new Tester_Class_0()).var_1 = (new Tester_Class_0().var_1 = new Tester_Class_2())); ++ } ++ new String(); ++ Tester_Class_2.var_13 = '['; ++ var_28 = (Tester_Class_2)(((var_31 ^= true) ? func_9() : new Tester_Class_0()).var_1 = new Tester_Class_2()); ++ var_28 = new Tester_Class_0(); ++ new String(); ++ { ++ if ((new boolean[var_30])[var_30] & 732877932 == 1.4654316E38F & "xpqy".replace(']', 'f').startsWith("pqrqunvfx") ? ((var_31 ^= (var_31 &= var_31)) ? !var_31 : (var_31 &= true)) : var_31) ++ { ++ var_31 &= var_31; ++ } ++ else ++ { ++ func_2(var_28 = new Tester_Class_0()); ++ } ++ { ++ ((new Tester_Class_0[var_30][var_30])[var_30][var_30]).var_1 = "uwrbjvl"; ++ var_28 = (Tester_Class_0)func_5(); ++ } ++ Tester_Class_2.var_13 = 's'; ++ Tester_Class_0 var_56 = var_28 = true ? func_6(func_5()) : (new Tester_Class_2[var_30][var_32])[var_32][var_32]; ++ double var_57 = 0; ++ var_29 += 1024895641427426304L % ~ ~Tester_Class_2.var_14; ++ while ((true || (var_31 = var_31)) && var_57 < 12) ++ { ++ (false & !false ? var_56 : (var_56 = var_56)).var_1 = "vbc"; ++ var_57++; ++ var_29 += func_0(var_30 /= (short)var_30 / var_32, false, var_57); ++ (var_31 ? (Tester_Class_2)var_56 : (new Tester_Class_2[var_30])[var_30]).var_1 = new double[var_31 ? (var_30 |= 177265600183083008L) : var_32]; ++ } ++ switch (var_31 ^ var_31 | ! (var_31 = false) & (var_31 & false) ? (true ? (short)var_30 : func_0(var_30, true, var_57)) : func_0(var_30, var_31, var_29 /= 2.7203017E38F)) ++ { ++ case 23: ++ var_31 ^= true ? var_31 : var_31; ++ break; ++ ++ case 40: ++ ++ default: ++ ++ case 104: ++ ++ } ++ Object var_58 = (var_31 ^= (var_31 ^= false) | (~3392263608888292352L < 1681682009 | var_31)) ? (((new Tester_Class_2[Tester_Class_2.func_5(Tester_Class_2.var_14, 3.3507317E38F, var_57)])[var_30 %= var_32]).var_1 = (var_56 = (Tester_Class_0)func_5())) : func_5(); ++ (var_56 = (var_28 = (var_56 = func_6(var_58)))).var_1 = (((new Tester_Class_2[var_30])[var_30]).var_1 = new float[(byte)Tester_Class_2.var_14][var_32]); ++ new Tester_Class_2().var_1 = new double[var_30]; ++ final Tester_Class_0 var_59 = var_28 = (!false & (false || (var_31 && !var_31) & false) ? var_31 : (var_31 |= !var_31)) ? (Tester_Class_2)(var_28 = new Tester_Class_2()) : (false ? new Tester_Class_2() : (Tester_Class_2)var_58); ++ } ++ var_30--; ++ { ++ var_29 += ~func_11(((new Tester_Interface_1[var_32][var_30][var_32])[var_30 ^= var_30])[var_32]); ++ } ++ float var_60 = 0F; ++ double var_61 = var_29; ++ do ++ { ++ long var_62; ++ var_60++; ++ "vcs".offsetByCodePoints((short)('w' | (short)var_30) & (new short[--var_30])[var_30], ((var_31 |= var_31) ^ (var_31 = var_31) ? var_32 : var_30) - (short)86413218); ++ } while (false && (var_60 < 100 && ((var_31 = false) ? var_31 : (var_31 ^= false)) & var_31)); ++ long var_63 = 0L; ++ double var_64 = (var_31 ? (Tester_Class_2.var_13 = 'V') : 'e') - (var_29 = 'A') * (var_29 = var_30); ++ var_31 &= (short)+ var_30-- + var_30 <= var_60; ++ while (false && (var_63 < 23 && false)) ++ { ++ var_30 >>= func_0(var_30, var_31, var_29) ^ ("".endsWith("mecvlajq" + "jhrbf") ? var_30 : (short)var_61); ++ var_63++; ++ var_28 = (Tester_Class_2)(var_28 = new Tester_Class_2()); ++ new Tester_Class_0(); ++ } ++ double var_65 = 0; ++ var_61 -= var_65; ++ for (((var_31 &= (var_31 ^= var_31)) | var_31 ? new Tester_Class_2() : new Tester_Class_2()).var_1 = ! (var_31 = false) && !var_31 ? func_10() : new Object[var_32][var_32]; var_31 | var_31 && (var_65 < 107 && (false ? !var_31 : (var_31 &= var_31))); var_30 *= Tester_Class_2.var_14) ++ { ++ var_28 = var_30 > (var_31 | true ? (Tester_Class_2.var_13 = (Tester_Class_2.var_13 = 'k')) : (Tester_Class_2.var_13 = (Tester_Class_2.var_13 = 'r'))) ? (Tester_Class_2)((var_28 = (Tester_Class_0)func_5()).var_1 = func_5()) : new Tester_Class_2(); ++ var_65++; ++ var_29 = "efothsl".startsWith("qk") ? 3.2306712E37F : +1.1835607464479516E308; ++ new Tester_Class_2().var_1 = new Tester_Class_0(); ++ } ++ double var_66 = 0; ++ func_6(((Tester_Class_2)((true ? (Tester_Class_2)func_10() : (Tester_Class_2)func_9()).var_1 = (var_28 = (Tester_Class_2)func_10()))).var_1 = ""); ++ while (false | (new boolean[var_30][var_30])[var_30][var_32] && (var_66 < 104 && false)) ++ { ++ ((var_31 ^= !false) ? "" : "slgr").toUpperCase(); ++ var_66++; ++ var_28 = func_6(func_9().var_1 = func_10()); ++ var_31 |= (var_31 |= true); ++ } ++ Tester_Class_2.var_13 = var_31 ? (Tester_Class_2.var_13 = 'Y') : (Tester_Class_2.var_13 = (Tester_Class_2.var_13 = (Tester_Class_2.var_13 = func_4(var_63, 137999726, 1870981930)))); ++ int var_67 = 0; ++ final double var_68 = 9.955130040461458E307; ++ do ++ { ++ "".lastIndexOf(var_32 != (Tester_Class_2.var_13 = 'f') ? (Tester_Class_2.var_13 = 'C') : ~var_30, (char)3.187607E38F + (var_30 /= var_30)); ++ var_67++; ++ Tester_Class_2.var_13 = (Tester_Class_2.var_13 = 'B'); ++ } while (var_67 < 9 && var_31 ^ var_31); ++ int var_69 = 0; ++ (true ? func_6(func_10()) : (Tester_Class_2)func_9()).var_1 = ((var_28 = (var_28 = new Tester_Class_2())).var_1 = (func_6(new Tester_Class_2().var_1 = new Tester_Class_0()).var_1 = (Tester_Class_2)func_9())); ++ do ++ { ++ var_28 = (Tester_Class_2)(var_28 = (Tester_Class_0)(new Tester_Class_2().var_1 = "qs")); ++ var_69++; ++ var_31 ^= var_31; ++ } while (var_69 < 189); ++ (! (var_31 = true) | var_31 ? new Tester_Class_2() : (new Tester_Class_0[var_30])[var_30]).var_1 = (((new Tester_Class_2[var_30 ^= (short)var_30])[var_30]).var_1 = (var_31 ? var_31 : (var_31 |= false)) ? "lfhliyphg" : "impovq"); ++ ((var_31 ? var_32 == (short)8901596111720974336L : 220705842 != var_60) ? (new Tester_Class_2[var_30])[var_32] : (new Tester_Class_2[var_30][var_32])[var_30][var_30]).var_1 = (var_28 = ((char)var_30 >= "pngjthlf".lastIndexOf("jjbuojp") & var_31 ? var_31 : var_31) ? (new Tester_Class_2[var_32])[var_30] : func_6(new Tester_Class_2().var_1 = new String[var_32])); ++ Tester_Class_2.var_13 = 'c'; ++ } ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester.var_29 = "; result += Printer.print(var_29); ++ result += "\n"; ++ result += "Tester.var_30 = "; result += Printer.print(var_30); ++ result += "\n"; ++ result += "Tester.var_32 = "; result += Printer.print(var_32); ++ result += "\n"; ++ result += "Tester.var_31 = "; result += Printer.print(var_31); ++ result += "\n"; ++ result += "Tester.var_28 = "; result += Printer.print(var_28); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++ static class Printer ++ { ++ public static String print(boolean arg) { return String.valueOf(arg); } ++ public static String print(byte arg) { return String.valueOf(arg); } ++ public static String print(short arg) { return String.valueOf(arg); } ++ public static String print(char arg) { return String.valueOf((int)arg); } ++ public static String print(int arg) { return String.valueOf(arg); } ++ public static String print(long arg) { return String.valueOf(arg); } ++ public static String print(float arg) { return String.valueOf(arg); } ++ public static String print(double arg) { return String.valueOf(arg); } ++ ++ ++ public static String print(Object arg) ++ { ++ return print_r(new java.util.Stack(), arg); ++ } ++ ++ private static String print_r(java.util.Stack visitedObjects, Object arg) ++ { ++ String result = ""; ++ if (arg == null) ++ result += "null"; ++ else ++ if (arg.getClass().isArray()) ++ { ++ for (int i = 0; i < visitedObjects.size(); i++) ++ if (visitedObjects.elementAt(i) == arg) return "<recursive>"; ++ ++ visitedObjects.push(arg); ++ ++ final String delimiter = ", "; ++ result += "["; ++ ++ if (arg instanceof Object[]) ++ { ++ Object[] array = (Object[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print_r(visitedObjects, array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof boolean[]) ++ { ++ boolean[] array = (boolean[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof byte[]) ++ { ++ byte[] array = (byte[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof short[]) ++ { ++ short[] array = (short[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof char[]) ++ { ++ char[] array = (char[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof int[]) ++ { ++ int[] array = (int[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof long[]) ++ { ++ long[] array = (long[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof float[]) ++ { ++ float[] array = (float[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ else ++ if (arg instanceof double[]) ++ { ++ double[] array = (double[]) arg; ++ for (int i = 0; i < array.length; i++) ++ { ++ result += print(array[i]); ++ if (i < array.length - 1) result += delimiter; ++ } ++ } ++ ++ result += "]"; ++ visitedObjects.pop(); ++ ++ } else ++ { ++ result += arg.toString(); ++ } ++ ++ return result; ++ } ++ } ++} ++ ++ +diff -r 4aebfff4f8a2 hotspot/test/compiler/6724218/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6724218/Test.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,98 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6724218 ++ * @summary Fix raise_LCA_above_marks() early termination ++ * @run main/othervm -Xbatch -XX:CompileCommand=exclude,Test.update Test ++ */ ++ ++public class Test { ++ Test next = null; ++ Object value = null; ++ ++ static boolean _closed = false; ++ static int size = 0; ++ static Test list = null; ++ static int cache_size = 0; ++ static Test cache = null; ++ ++ Object get(int i) { ++ Test t = list; ++ list = t.next; ++ size -= 1; ++ Object o = t.value; ++ if (i > 0) { ++ t.next = cache; ++ t.value = null; ++ cache = t; ++ cache_size = +1; ++ } ++ return o; ++ } ++ ++ void update() { ++ // Exclude compilation of this one. ++ if (size == 0) { ++ Test t; ++ if (cache_size > 0) { ++ t = cache; ++ cache = t.next; ++ cache_size = -1; ++ } else { ++ t = new Test(); ++ } ++ t.value = new Object(); ++ t.next = list; ++ list = t; ++ size += 1; ++ } ++ } ++ ++ synchronized Object test(int i) { ++ while (true) { ++ if (_closed) { ++ return null; ++ } else if (size > 0) { ++ return get(i); ++ } ++ update(); ++ } ++ } ++ ++ public static void main(String argv[]) throws Exception { ++ Test t = new Test(); ++ int lim = 500000; ++ Object o; ++ for (int j = 0; j < lim; j++) { ++ o = t.test(j&1); ++ if (o == null) { ++ throw new Exception("*** Failed on iteration " + j); ++ } ++ if ((j&1) == 0) { ++ t.update(); ++ } ++ } ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6726999/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6726999/Test.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,1419 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/* ++ * @test ++ * @bug 6726999 ++ * @summary nsk/stress/jck12a/jck12a010 assert(n != NULL,"Bad immediate dominator info."); ++ * @run main/othervm -Xbatch -XX:CompileCommand=exclude,Test.dummy -XX:+AggressiveOpts Test ++ */ ++ ++import java.lang.reflect.Array; ++ ++class Point { ++ int x; ++ int y; ++} ++ ++public class Test { ++ ++ void dummy() { ++ // Empty method to verify correctness of DebugInfo. ++ // Use -XX:CompileCommand=exclude,Test.dummy ++ } ++ ++ int test0_0_0(int y) { ++ int x = 3; ++ Point p = new Point(); ++ dummy(); ++ p.x = x; ++ p.y = 3 * x + y; ++ return p.x * p.y; ++ } ++ ++ int test0_0_1(int y) { ++ int x = 3; ++ Point p = null; ++ dummy(); ++ p = new Point(); ++ dummy(); ++ p.x = x; ++ p.y = 3 * x + y; ++ return p.x * p.y; ++ } ++ ++ int test0_0_2(int y) { ++ int x = 3; ++ Point p = new Point(); ++ dummy(); ++ p = new Point(); ++ dummy(); ++ p.x = x; ++ p.y = 3 * x + y; ++ return p.x * p.y; ++ } ++ ++ int test0_0_3(int y) { ++ int x = 3; ++ Point p[] = new Point[1]; ++ p[0] = new Point(); ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test0_0_4(int y) { ++ int x = 3; ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test0_0_5(int y) { ++ int x = 3; ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = null; ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test0_0_6(int y) { ++ int x = 3; ++ Point p[] = new Point[1]; ++ p[0] = new Point(); ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test0_1_3(int y) { ++ int x = 3; ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ p[0] = p1; ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test0_1_4(int y) { ++ int x = 3; ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = p1; ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test0_1_5(int y) { ++ int x = 3; ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = null; ++ dummy(); ++ p[0] = p1; ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test0_1_6(int y) { ++ int x = 3; ++ Point p1 = new Point(); ++ dummy(); ++ Point p2 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ p[0] = p1; ++ dummy(); ++ p[0] = p2; ++ dummy(); ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_0_0(int y) { ++ Point p = new Point(); ++ if ( (y & 1) == 1 ) { ++ p = new Point(); ++ } ++ int x = 3; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test1_0_1(int y) { ++ Point p = null; ++ if ( (y & 1) == 1 ) { ++ p = new Point(); ++ } ++ int x = 3; ++ if ( p == null ) ++ return (3 * x + y) * x; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test1_0_2(int y) { ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ p[0] = new Point(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_0_3(int y) { ++ Point p[] = new Point[1]; ++ p[0] = null; ++ if ( (y & 1) == 1 ) { ++ p[0] = new Point(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_0_4(int y) { ++ Point p[] = new Point[1]; ++ p[0] = new Point(); ++ if ( (y & 1) == 1 ) { ++ p[0] = new Point(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_0_5(int y) { ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ p[0] = new Point(); ++ } else { ++ p[0] = null; ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_0_6(int y) { ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ p[0] = new Point(); ++ } else { ++ p[0] = new Point(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_1_0(int y) { ++ Point p = new Point(); ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test1_1_1(int y) { ++ Point p = null; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p == null ) ++ return (3 * x + y) * x; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test1_1_2(int y) { ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_1_3(int y) { ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = null; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_1_4(int y) { ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = new Point(); ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_1_5(int y) { ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ } else { ++ dummy(); ++ p[0] = null; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_1_6(int y) { ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ } else { ++ dummy(); ++ p[0] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_2_0(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p = new Point(); ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p = p1; ++ dummy(); ++ } ++ int x = 3; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test1_2_1(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p = null; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p = p1; ++ dummy(); ++ } ++ int x = 3; ++ if ( p == null ) ++ return (3 * x + y) * x; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test1_2_2(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = p1; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_2_3(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = null; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = p1; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_2_4(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p2 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ dummy(); ++ p[0] = p1; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = p2; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_2_5(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = p1; ++ dummy(); ++ } else { ++ dummy(); ++ p[0] = null; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test1_2_6(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p2 = new Point(); ++ dummy(); ++ Point p[] = new Point[1]; ++ if ( (y & 1) == 1 ) { ++ dummy(); ++ p[0] = p1; ++ dummy(); ++ } else { ++ dummy(); ++ p[0] = p2; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[0] == null ) ++ return (3 * x + y) * x; ++ p[0].x = x; ++ p[0].y = 3 * x + y; ++ dummy(); ++ return p[0].x * p[0].y; ++ } ++ ++ int test2_0_0(int y) { ++ Point p = new Point(); ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ p = new Point(); ++ } ++ int x = 3; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test2_0_1(int y) { ++ Point p = null; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ p = new Point(); ++ } ++ int x = 3; ++ if ( p == null ) ++ return (3 * x + y) * x; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test2_0_2(int y) { ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ p[i] = new Point(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_0_3(int y) { ++ Point p[] = new Point[3]; ++ int j = (y & 1); ++ p[j] = null; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ p[i] = new Point(); ++ } ++ int x = 3; ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_0_4(int y) { ++ Point p[] = new Point[3]; ++ int j = (y & 1); ++ p[j] = new Point(); ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ p[i] = new Point(); ++ } ++ int x = 3; ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_0_5(int y) { ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ p[i] = new Point(); ++ } ++ for (int i = 0; i < lim; i++) { ++ p[i] = null; ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_0_6(int y) { ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ p[i] = new Point(); ++ } ++ for (int i = 0; i < lim; i++) { ++ p[i] = new Point(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_1_0(int y) { ++ Point p = new Point(); ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test2_1_1(int y) { ++ Point p = null; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p == null ) ++ return (3 * x + y) * x; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test2_1_2(int y) { ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_1_3(int y) { ++ Point p[] = new Point[3]; ++ dummy(); ++ int j = (y & 1); ++ p[j] = null; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_1_4(int y) { ++ Point p[] = new Point[3]; ++ dummy(); ++ int j = (y & 1); ++ p[j] = new Point(); ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_1_5(int y) { ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = new Point(); ++ dummy(); ++ } ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = null; ++ dummy(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_1_6(int y) { ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = new Point(); ++ dummy(); ++ } ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = new Point(); ++ dummy(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_2_0(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p = new Point(); ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p = p1; ++ dummy(); ++ } ++ int x = 3; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test2_2_1(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p = null; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p = p1; ++ dummy(); ++ } ++ int x = 3; ++ if ( p == null ) ++ return (3 * x + y) * x; ++ p.x = x; ++ p.y = 3 * x + y; ++ dummy(); ++ return p.x * p.y; ++ } ++ ++ int test2_2_2(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = p1; ++ dummy(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_2_3(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[3]; ++ dummy(); ++ int j = (y & 1); ++ p[j] = null; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = p1; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_2_4(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p2 = new Point(); ++ dummy(); ++ Point p[] = new Point[3]; ++ dummy(); ++ int j = (y & 1); ++ p[j] = p1; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = p2; ++ dummy(); ++ } ++ int x = 3; ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_2_5(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = p1; ++ dummy(); ++ } ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = null; ++ dummy(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ int test2_2_6(int y) { ++ Point p1 = new Point(); ++ dummy(); ++ Point p2 = new Point(); ++ dummy(); ++ Point p[] = new Point[3]; ++ int lim = (y & 3); ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = p1; ++ dummy(); ++ } ++ for (int i = 0; i < lim; i++) { ++ dummy(); ++ p[i] = p2; ++ dummy(); ++ } ++ int x = 3; ++ int j = (y & 1); ++ if ( p[j] == null ) ++ return (3 * x + y) * x; ++ p[j].x = x; ++ p[j].y = 3 * x + y; ++ dummy(); ++ return p[j].x * p[0].y; ++ } ++ ++ public static void main(String args[]) { ++ Test tsr = new Test(); ++ Point p = new Point(); ++ Point ptmp = p; ++ Class cls = Point.class; ++ int y = 0; ++ for (int i=0; i<10000; i++) { ++ y = tsr.test0_0_0(y); ++ y = tsr.test0_0_0(y); ++ y = tsr.test0_0_1(y); ++ y = tsr.test0_0_1(y); ++ y = tsr.test0_0_2(y); ++ y = tsr.test0_0_2(y); ++ y = tsr.test0_0_3(y); ++ y = tsr.test0_0_3(y); ++ y = tsr.test0_0_4(y); ++ y = tsr.test0_0_4(y); ++ y = tsr.test0_0_5(y); ++ y = tsr.test0_0_5(y); ++ y = tsr.test0_0_6(y); ++ y = tsr.test0_0_6(y); ++ ++ y = tsr.test0_1_3(y); ++ y = tsr.test0_1_3(y); ++ y = tsr.test0_1_4(y); ++ y = tsr.test0_1_4(y); ++ y = tsr.test0_1_5(y); ++ y = tsr.test0_1_5(y); ++ y = tsr.test0_1_6(y); ++ y = tsr.test0_1_6(y); ++ ++ y = tsr.test1_0_0(y&~1); ++ y = tsr.test1_0_1(y&~1); ++ y = tsr.test1_0_2(y&~1); ++ y = tsr.test1_0_3(y&~1); ++ y = tsr.test1_0_4(y&~1); ++ y = tsr.test1_0_5(y&~1); ++ y = tsr.test1_0_6(y&~1); ++ y = tsr.test1_0_0((y&~1)+1); ++ y = tsr.test1_0_1((y&~1)+1); ++ y = tsr.test1_0_2((y&~1)+1); ++ y = tsr.test1_0_3((y&~1)+1); ++ y = tsr.test1_0_4((y&~1)+1); ++ y = tsr.test1_0_5((y&~1)+1); ++ y = tsr.test1_0_6((y&~1)+1); ++ ++ y = tsr.test1_1_0(y&~1); ++ y = tsr.test1_1_1(y&~1); ++ y = tsr.test1_1_2(y&~1); ++ y = tsr.test1_1_3(y&~1); ++ y = tsr.test1_1_4(y&~1); ++ y = tsr.test1_1_5(y&~1); ++ y = tsr.test1_1_6(y&~1); ++ y = tsr.test1_1_0((y&~1)+1); ++ y = tsr.test1_1_1((y&~1)+1); ++ y = tsr.test1_1_2((y&~1)+1); ++ y = tsr.test1_1_3((y&~1)+1); ++ y = tsr.test1_1_4((y&~1)+1); ++ y = tsr.test1_1_5((y&~1)+1); ++ y = tsr.test1_1_6((y&~1)+1); ++ ++ y = tsr.test1_2_0(y&~1); ++ y = tsr.test1_2_1(y&~1); ++ y = tsr.test1_2_2(y&~1); ++ y = tsr.test1_2_3(y&~1); ++ y = tsr.test1_2_4(y&~1); ++ y = tsr.test1_2_5(y&~1); ++ y = tsr.test1_2_6(y&~1); ++ y = tsr.test1_2_0((y&~1)+1); ++ y = tsr.test1_2_1((y&~1)+1); ++ y = tsr.test1_2_2((y&~1)+1); ++ y = tsr.test1_2_3((y&~1)+1); ++ y = tsr.test1_2_4((y&~1)+1); ++ y = tsr.test1_2_5((y&~1)+1); ++ y = tsr.test1_2_6((y&~1)+1); ++ ++ y = tsr.test2_0_0(y&~3); ++ y = tsr.test2_0_1(y&~3); ++ y = tsr.test2_0_2(y&~3); ++ y = tsr.test2_0_3(y&~3); ++ y = tsr.test2_0_4(y&~3); ++ y = tsr.test2_0_5(y&~3); ++ y = tsr.test2_0_6(y&~3); ++ y = tsr.test2_0_0((y&~3)+3); ++ y = tsr.test2_0_1((y&~3)+3); ++ y = tsr.test2_0_2((y&~3)+3); ++ y = tsr.test2_0_3((y&~3)+3); ++ y = tsr.test2_0_4((y&~3)+3); ++ y = tsr.test2_0_5((y&~3)+3); ++ y = tsr.test2_0_6((y&~3)+3); ++ ++ y = tsr.test2_1_0(y&~3); ++ y = tsr.test2_1_1(y&~3); ++ y = tsr.test2_1_2(y&~3); ++ y = tsr.test2_1_3(y&~3); ++ y = tsr.test2_1_4(y&~3); ++ y = tsr.test2_1_5(y&~3); ++ y = tsr.test2_1_6(y&~3); ++ y = tsr.test2_1_0((y&~3)+3); ++ y = tsr.test2_1_1((y&~3)+3); ++ y = tsr.test2_1_2((y&~3)+3); ++ y = tsr.test2_1_3((y&~3)+3); ++ y = tsr.test2_1_4((y&~3)+3); ++ y = tsr.test2_1_5((y&~3)+3); ++ y = tsr.test2_1_6((y&~3)+3); ++ ++ y = tsr.test2_2_0(y&~3); ++ y = tsr.test2_2_1(y&~3); ++ y = tsr.test2_2_2(y&~3); ++ y = tsr.test2_2_3(y&~3); ++ y = tsr.test2_2_4(y&~3); ++ y = tsr.test2_2_5(y&~3); ++ y = tsr.test2_2_6(y&~3); ++ y = tsr.test2_2_0((y&~3)+3); ++ y = tsr.test2_2_1((y&~3)+3); ++ y = tsr.test2_2_2((y&~3)+3); ++ y = tsr.test2_2_3((y&~3)+3); ++ y = tsr.test2_2_4((y&~3)+3); ++ y = tsr.test2_2_5((y&~3)+3); ++ y = tsr.test2_2_6((y&~3)+3); ++ ++ } ++ for (int i=0; i<10000; i++) { ++ y = tsr.test0_0_0(y); ++ y = tsr.test0_0_0(y); ++ y = tsr.test0_0_1(y); ++ y = tsr.test0_0_1(y); ++ y = tsr.test0_0_2(y); ++ y = tsr.test0_0_2(y); ++ y = tsr.test0_0_3(y); ++ y = tsr.test0_0_3(y); ++ y = tsr.test0_0_4(y); ++ y = tsr.test0_0_4(y); ++ y = tsr.test0_0_5(y); ++ y = tsr.test0_0_5(y); ++ y = tsr.test0_0_6(y); ++ y = tsr.test0_0_6(y); ++ ++ y = tsr.test0_1_3(y); ++ y = tsr.test0_1_3(y); ++ y = tsr.test0_1_4(y); ++ y = tsr.test0_1_4(y); ++ y = tsr.test0_1_5(y); ++ y = tsr.test0_1_5(y); ++ y = tsr.test0_1_6(y); ++ y = tsr.test0_1_6(y); ++ ++ y = tsr.test1_0_0(y&~1); ++ y = tsr.test1_0_1(y&~1); ++ y = tsr.test1_0_2(y&~1); ++ y = tsr.test1_0_3(y&~1); ++ y = tsr.test1_0_4(y&~1); ++ y = tsr.test1_0_5(y&~1); ++ y = tsr.test1_0_6(y&~1); ++ y = tsr.test1_0_0((y&~1)+1); ++ y = tsr.test1_0_1((y&~1)+1); ++ y = tsr.test1_0_2((y&~1)+1); ++ y = tsr.test1_0_3((y&~1)+1); ++ y = tsr.test1_0_4((y&~1)+1); ++ y = tsr.test1_0_5((y&~1)+1); ++ y = tsr.test1_0_6((y&~1)+1); ++ ++ y = tsr.test1_1_0(y&~1); ++ y = tsr.test1_1_1(y&~1); ++ y = tsr.test1_1_2(y&~1); ++ y = tsr.test1_1_3(y&~1); ++ y = tsr.test1_1_4(y&~1); ++ y = tsr.test1_1_5(y&~1); ++ y = tsr.test1_1_6(y&~1); ++ y = tsr.test1_1_0((y&~1)+1); ++ y = tsr.test1_1_1((y&~1)+1); ++ y = tsr.test1_1_2((y&~1)+1); ++ y = tsr.test1_1_3((y&~1)+1); ++ y = tsr.test1_1_4((y&~1)+1); ++ y = tsr.test1_1_5((y&~1)+1); ++ y = tsr.test1_1_6((y&~1)+1); ++ ++ y = tsr.test1_2_0(y&~1); ++ y = tsr.test1_2_1(y&~1); ++ y = tsr.test1_2_2(y&~1); ++ y = tsr.test1_2_3(y&~1); ++ y = tsr.test1_2_4(y&~1); ++ y = tsr.test1_2_5(y&~1); ++ y = tsr.test1_2_6(y&~1); ++ y = tsr.test1_2_0((y&~1)+1); ++ y = tsr.test1_2_1((y&~1)+1); ++ y = tsr.test1_2_2((y&~1)+1); ++ y = tsr.test1_2_3((y&~1)+1); ++ y = tsr.test1_2_4((y&~1)+1); ++ y = tsr.test1_2_5((y&~1)+1); ++ y = tsr.test1_2_6((y&~1)+1); ++ ++ y = tsr.test2_0_0(y&~3); ++ y = tsr.test2_0_1(y&~3); ++ y = tsr.test2_0_2(y&~3); ++ y = tsr.test2_0_3(y&~3); ++ y = tsr.test2_0_4(y&~3); ++ y = tsr.test2_0_5(y&~3); ++ y = tsr.test2_0_6(y&~3); ++ y = tsr.test2_0_0((y&~3)+3); ++ y = tsr.test2_0_1((y&~3)+3); ++ y = tsr.test2_0_2((y&~3)+3); ++ y = tsr.test2_0_3((y&~3)+3); ++ y = tsr.test2_0_4((y&~3)+3); ++ y = tsr.test2_0_5((y&~3)+3); ++ y = tsr.test2_0_6((y&~3)+3); ++ ++ y = tsr.test2_1_0(y&~3); ++ y = tsr.test2_1_1(y&~3); ++ y = tsr.test2_1_2(y&~3); ++ y = tsr.test2_1_3(y&~3); ++ y = tsr.test2_1_4(y&~3); ++ y = tsr.test2_1_5(y&~3); ++ y = tsr.test2_1_6(y&~3); ++ y = tsr.test2_1_0((y&~3)+3); ++ y = tsr.test2_1_1((y&~3)+3); ++ y = tsr.test2_1_2((y&~3)+3); ++ y = tsr.test2_1_3((y&~3)+3); ++ y = tsr.test2_1_4((y&~3)+3); ++ y = tsr.test2_1_5((y&~3)+3); ++ y = tsr.test2_1_6((y&~3)+3); ++ ++ y = tsr.test2_2_0(y&~3); ++ y = tsr.test2_2_1(y&~3); ++ y = tsr.test2_2_2(y&~3); ++ y = tsr.test2_2_3(y&~3); ++ y = tsr.test2_2_4(y&~3); ++ y = tsr.test2_2_5(y&~3); ++ y = tsr.test2_2_6(y&~3); ++ y = tsr.test2_2_0((y&~3)+3); ++ y = tsr.test2_2_1((y&~3)+3); ++ y = tsr.test2_2_2((y&~3)+3); ++ y = tsr.test2_2_3((y&~3)+3); ++ y = tsr.test2_2_4((y&~3)+3); ++ y = tsr.test2_2_5((y&~3)+3); ++ y = tsr.test2_2_6((y&~3)+3); ++ ++ } ++ for (int i=0; i<10000; i++) { ++ y = tsr.test0_0_0(y); ++ y = tsr.test0_0_0(y); ++ y = tsr.test0_0_1(y); ++ y = tsr.test0_0_1(y); ++ y = tsr.test0_0_2(y); ++ y = tsr.test0_0_2(y); ++ y = tsr.test0_0_3(y); ++ y = tsr.test0_0_3(y); ++ y = tsr.test0_0_4(y); ++ y = tsr.test0_0_4(y); ++ y = tsr.test0_0_5(y); ++ y = tsr.test0_0_5(y); ++ y = tsr.test0_0_6(y); ++ y = tsr.test0_0_6(y); ++ ++ y = tsr.test0_1_3(y); ++ y = tsr.test0_1_3(y); ++ y = tsr.test0_1_4(y); ++ y = tsr.test0_1_4(y); ++ y = tsr.test0_1_5(y); ++ y = tsr.test0_1_5(y); ++ y = tsr.test0_1_6(y); ++ y = tsr.test0_1_6(y); ++ ++ y = tsr.test1_0_0(y&~1); ++ y = tsr.test1_0_1(y&~1); ++ y = tsr.test1_0_2(y&~1); ++ y = tsr.test1_0_3(y&~1); ++ y = tsr.test1_0_4(y&~1); ++ y = tsr.test1_0_5(y&~1); ++ y = tsr.test1_0_6(y&~1); ++ y = tsr.test1_0_0((y&~1)+1); ++ y = tsr.test1_0_1((y&~1)+1); ++ y = tsr.test1_0_2((y&~1)+1); ++ y = tsr.test1_0_3((y&~1)+1); ++ y = tsr.test1_0_4((y&~1)+1); ++ y = tsr.test1_0_5((y&~1)+1); ++ y = tsr.test1_0_6((y&~1)+1); ++ ++ y = tsr.test1_1_0(y&~1); ++ y = tsr.test1_1_1(y&~1); ++ y = tsr.test1_1_2(y&~1); ++ y = tsr.test1_1_3(y&~1); ++ y = tsr.test1_1_4(y&~1); ++ y = tsr.test1_1_5(y&~1); ++ y = tsr.test1_1_6(y&~1); ++ y = tsr.test1_1_0((y&~1)+1); ++ y = tsr.test1_1_1((y&~1)+1); ++ y = tsr.test1_1_2((y&~1)+1); ++ y = tsr.test1_1_3((y&~1)+1); ++ y = tsr.test1_1_4((y&~1)+1); ++ y = tsr.test1_1_5((y&~1)+1); ++ y = tsr.test1_1_6((y&~1)+1); ++ ++ y = tsr.test1_2_0(y&~1); ++ y = tsr.test1_2_1(y&~1); ++ y = tsr.test1_2_2(y&~1); ++ y = tsr.test1_2_3(y&~1); ++ y = tsr.test1_2_4(y&~1); ++ y = tsr.test1_2_5(y&~1); ++ y = tsr.test1_2_6(y&~1); ++ y = tsr.test1_2_0((y&~1)+1); ++ y = tsr.test1_2_1((y&~1)+1); ++ y = tsr.test1_2_2((y&~1)+1); ++ y = tsr.test1_2_3((y&~1)+1); ++ y = tsr.test1_2_4((y&~1)+1); ++ y = tsr.test1_2_5((y&~1)+1); ++ y = tsr.test1_2_6((y&~1)+1); ++ ++ y = tsr.test2_0_0(y&~3); ++ y = tsr.test2_0_1(y&~3); ++ y = tsr.test2_0_2(y&~3); ++ y = tsr.test2_0_3(y&~3); ++ y = tsr.test2_0_4(y&~3); ++ y = tsr.test2_0_5(y&~3); ++ y = tsr.test2_0_6(y&~3); ++ y = tsr.test2_0_0((y&~3)+3); ++ y = tsr.test2_0_1((y&~3)+3); ++ y = tsr.test2_0_2((y&~3)+3); ++ y = tsr.test2_0_3((y&~3)+3); ++ y = tsr.test2_0_4((y&~3)+3); ++ y = tsr.test2_0_5((y&~3)+3); ++ y = tsr.test2_0_6((y&~3)+3); ++ ++ y = tsr.test2_1_0(y&~3); ++ y = tsr.test2_1_1(y&~3); ++ y = tsr.test2_1_2(y&~3); ++ y = tsr.test2_1_3(y&~3); ++ y = tsr.test2_1_4(y&~3); ++ y = tsr.test2_1_5(y&~3); ++ y = tsr.test2_1_6(y&~3); ++ y = tsr.test2_1_0((y&~3)+3); ++ y = tsr.test2_1_1((y&~3)+3); ++ y = tsr.test2_1_2((y&~3)+3); ++ y = tsr.test2_1_3((y&~3)+3); ++ y = tsr.test2_1_4((y&~3)+3); ++ y = tsr.test2_1_5((y&~3)+3); ++ y = tsr.test2_1_6((y&~3)+3); ++ ++ y = tsr.test2_2_0(y&~3); ++ y = tsr.test2_2_1(y&~3); ++ y = tsr.test2_2_2(y&~3); ++ y = tsr.test2_2_3(y&~3); ++ y = tsr.test2_2_4(y&~3); ++ y = tsr.test2_2_5(y&~3); ++ y = tsr.test2_2_6(y&~3); ++ y = tsr.test2_2_0((y&~3)+3); ++ y = tsr.test2_2_1((y&~3)+3); ++ y = tsr.test2_2_2((y&~3)+3); ++ y = tsr.test2_2_3((y&~3)+3); ++ y = tsr.test2_2_4((y&~3)+3); ++ y = tsr.test2_2_5((y&~3)+3); ++ y = tsr.test2_2_6((y&~3)+3); ++ ++ } ++ ++ int z = 0; ++ y = tsr.test0_0_0(0); ++ System.out.println("After 'test0_0_0' y=" + y); ++ y = tsr.test0_0_1(0); ++ System.out.println("After 'test0_0_1' y=" + y); ++ y = tsr.test0_0_2(0); ++ System.out.println("After 'test0_0_2' y=" + y); ++ y = tsr.test0_0_3(0); ++ System.out.println("After 'test0_0_3' y=" + y); ++ y = tsr.test0_0_4(0); ++ System.out.println("After 'test0_0_4' y=" + y); ++ y = tsr.test0_0_5(0); ++ System.out.println("After 'test0_0_5' y=" + y); ++ y = tsr.test0_0_6(0); ++ System.out.println("After 'test0_0_6' y=" + y); ++ y = tsr.test0_1_3(0); ++ System.out.println("After 'test0_1_3' y=" + y); ++ y = tsr.test0_1_4(0); ++ System.out.println("After 'test0_1_4' y=" + y); ++ y = tsr.test0_1_5(0); ++ System.out.println("After 'test0_1_5' y=" + y); ++ y = tsr.test0_1_6(0); ++ System.out.println("After 'test0_1_6' y=" + y); ++ ++ y = tsr.test1_0_0(0); ++ System.out.println("After 'test1_0_0' y=" + y); ++ y = tsr.test1_0_1(0); ++ System.out.println("After 'test1_0_1' y=" + y); ++ y = tsr.test1_0_2(0); ++ System.out.println("After 'test1_0_2' y=" + y); ++ y = tsr.test1_0_3(0); ++ System.out.println("After 'test1_0_3' y=" + y); ++ y = tsr.test1_0_4(0); ++ System.out.println("After 'test1_0_4' y=" + y); ++ y = tsr.test1_0_5(0); ++ System.out.println("After 'test1_0_5' y=" + y); ++ y = tsr.test1_0_6(0); ++ System.out.println("After 'test1_0_6' y=" + y); ++ ++ y = tsr.test1_1_0(0); ++ System.out.println("After 'test1_1_0' y=" + y); ++ y = tsr.test1_1_1(0); ++ System.out.println("After 'test1_1_1' y=" + y); ++ y = tsr.test1_1_2(0); ++ System.out.println("After 'test1_1_2' y=" + y); ++ y = tsr.test1_1_3(0); ++ System.out.println("After 'test1_1_3' y=" + y); ++ y = tsr.test1_1_4(0); ++ System.out.println("After 'test1_1_4' y=" + y); ++ y = tsr.test1_1_5(0); ++ System.out.println("After 'test1_1_5' y=" + y); ++ y = tsr.test1_1_6(0); ++ System.out.println("After 'test1_1_6' y=" + y); ++ ++ y = tsr.test1_2_0(0); ++ System.out.println("After 'test1_2_0' y=" + y); ++ y = tsr.test1_2_1(0); ++ System.out.println("After 'test1_2_1' y=" + y); ++ y = tsr.test1_2_2(0); ++ System.out.println("After 'test1_2_2' y=" + y); ++ y = tsr.test1_2_3(0); ++ System.out.println("After 'test1_2_3' y=" + y); ++ y = tsr.test1_2_4(0); ++ System.out.println("After 'test1_2_4' y=" + y); ++ y = tsr.test1_2_5(0); ++ System.out.println("After 'test1_2_5' y=" + y); ++ y = tsr.test1_2_6(0); ++ System.out.println("After 'test1_2_6' y=" + y); ++ ++ y = tsr.test2_0_0(0); ++ System.out.println("After 'test2_0_0' y=" + y); ++ y = tsr.test2_0_1(0); ++ System.out.println("After 'test2_0_1' y=" + y); ++ y = tsr.test2_0_2(0); ++ System.out.println("After 'test2_0_2' y=" + y); ++ y = tsr.test2_0_3(0); ++ System.out.println("After 'test2_0_3' y=" + y); ++ y = tsr.test2_0_4(0); ++ System.out.println("After 'test2_0_4' y=" + y); ++ y = tsr.test2_0_5(0); ++ System.out.println("After 'test2_0_5' y=" + y); ++ y = tsr.test2_0_6(0); ++ System.out.println("After 'test2_0_6' y=" + y); ++ ++ y = tsr.test2_1_0(0); ++ System.out.println("After 'test2_1_0' y=" + y); ++ y = tsr.test2_1_1(0); ++ System.out.println("After 'test2_1_1' y=" + y); ++ y = tsr.test2_1_2(0); ++ System.out.println("After 'test2_1_2' y=" + y); ++ y = tsr.test2_1_3(0); ++ System.out.println("After 'test2_1_3' y=" + y); ++ y = tsr.test2_1_4(0); ++ System.out.println("After 'test2_1_4' y=" + y); ++ y = tsr.test2_1_5(0); ++ System.out.println("After 'test2_1_5' y=" + y); ++ y = tsr.test2_1_6(0); ++ System.out.println("After 'test2_1_6' y=" + y); ++ ++ y = tsr.test2_2_0(0); ++ System.out.println("After 'test2_2_0' y=" + y); ++ y = tsr.test2_2_1(0); ++ System.out.println("After 'test2_2_1' y=" + y); ++ y = tsr.test2_2_2(0); ++ System.out.println("After 'test2_2_2' y=" + y); ++ y = tsr.test2_2_3(0); ++ System.out.println("After 'test2_2_3' y=" + y); ++ y = tsr.test2_2_4(0); ++ System.out.println("After 'test2_2_4' y=" + y); ++ y = tsr.test2_2_5(0); ++ System.out.println("After 'test2_2_5' y=" + y); ++ y = tsr.test2_2_6(0); ++ System.out.println("After 'test2_2_6' y=" + y); ++ ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6741738/Tester.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6741738/Tester.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,50 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6741738 ++ * @summary TypePtr::add_offset() set incorrect offset when the add overflows ++ * @run main/othervm -Xcomp -XX:CompileOnly=Tester.foo Tester ++ */ ++ ++public class Tester { ++ private String[] values; ++ private int count; ++ ++ String foo() { ++ int i = Integer.MAX_VALUE-1; ++ String s; ++ try { ++ s = values[i]; ++ } catch (Throwable e) { ++ s = ""; ++ } ++ return s; ++ } ++ ++ public static void main(String[] args) { ++ Tester t = new Tester(); ++ String s = t.foo(); ++ } ++}