test/compiler/6663848/Tester.java

Mon, 28 Jul 2014 15:06:38 -0700

author
fzhinkin
date
Mon, 28 Jul 2014 15:06:38 -0700
changeset 6997
dbb05f6d93c4
parent 1907
c18cbe5936b8
child 6876
710a3c8b516e
permissions
-rw-r--r--

8051344: JVM crashed in Compile::start() during method parsing w/ UseRTMDeopt turned on
Summary: call rtm_deopt() only if there were no compilation bailouts before.
Reviewed-by: kvn

     1 /*
     2  * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     8  *
     9  * This code is distributed in the hope that it will be useful, but WITHOUT
    10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    12  * version 2 for more details (a copy is included in the LICENSE file that
    13  * accompanied this code).
    14  *
    15  * You should have received a copy of the GNU General Public License version
    16  * 2 along with this work; if not, write to the Free Software Foundation,
    17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    18  *
    19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    20  * or visit www.oracle.com if you need additional information or have any
    21  * questions.
    22  */
    24 /*
    25  * @test
    26  * @bug 6663848
    27  * @summary assert(i < Max(),"oob")
    28  */
    30 /* Complexity upper bound: 296055 ops */
    32 final class Tester_Class_0 {
    33     byte var_1;
    34     static double var_2;
    35     String var_3;
    36     char var_4 = 'n';
    37     static int var_5;
    38     String var_6;
    39     final long var_7 = 4161100809902398464L;
    40     static String var_8 = "a";
    43     public Tester_Class_0()
    44     {
    45         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))))
    46         {
    47             case 125:
    49             case ']':
    51             case 6:
    52                 var_5 = (false ? false : 3708707602755734528L >= 1648075631) ? var_4 : (false ? var_4 : ++var_4);
    53                 break;
    55             case 46:
    56                 Object var_15;
    57                 ++var_4;
    58                 float var_16 = 3.1085987E38F;
    59                 var_5 = 'h';
    60                 var_1 = true ? (byte)9.482988718680618E307 : (false && false ? (byte)var_7 : (byte)6793807430041920512L);
    61                 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);
    62                 var_15 = "an";
    63                 break;
    65             case 29:
    66                 var_3 = (var_6 = (var_8 = "kgc"));
    67                 break;
    69             case 60:
    71         }
    72         char var_18;
    73         ((new Tester_Class_0[var_1 = (byte)(var_2 = 93813743)])[var_1 = (byte)var_4]).var_1 = (var_1 = (var_1 = (byte)5.1405316E37F));
    74         var_8 = var_8;
    75         float var_19 = 0F;
    76         var_2 = var_4;
    77         do
    78         {
    79             var_4 >>= var_7;
    80             var_19++;
    81             var_4 %= true ? (short)7643330105057892352L : (short)1.1014013E38F;
    82         } while (var_19 < 2 && (! (true & (!true && false)) && true));
    83         var_4++;
    84         int var_20 = 0;
    85         var_4 = ~var_7 == (var_1 = (byte)var_7) | (float)var_20 <= 'H' ? 'r' : (var_4 |= (byte)var_4);
    86         for (var_6 = (var_8 = "wqmnvxava"); (false ? (short)+ ~3540350558052792320L : + ~ ~3244965056572428288L - (var_4 *= 8.314953959831226E307)) <= +9.34280058703911E307 && var_20 < 6; var_2 = 3.0507823E38F)
    87         {
    88             var_2 = ~ ((byte)844279629935048704L) ^ (var_19 <= (false ? '\\' : 'B') ? (byte)(short)(var_1 = (byte)(short)var_19) : (var_1 = (var_1 = (var_1 = (byte)'T'))));
    89             var_20++;
    90             var_5 = (short)(var_7 >>> (! !true & true ? 'D' : (var_4 -= 1.1444072012663494E308)));
    91             (var_6 = "jnjbrmaus").compareTo(var_3 = false ? "pfmv" : (var_8 = var_8));
    92         }
    93         var_2 = func_0(1248385981, 'V' != '[' ? (short)1.0082348960424545E308 : (byte)var_4, new double[var_1 = (byte)'p'][(byte)var_19], 1.3646683639847343E308);
    94         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)));
    95         var_3 = (var_3 = "dn");
    96         var_2 = false ? (var_1 = (byte)9.136750130102702E307) : var_7;
    97     }
   102     final short func_0(int arg_0, short arg_1, double[][] arg_2, double arg_3)
   103     {
   104         double[][] var_9 = arg_2;
   105         arg_0 <<= true ? (byte)- +1.1174307E37F : (var_1 = (byte)911334714);
   106         switch ("touoh".endsWith(var_8) ^ ! ! (++var_4 != 1.8567045E38F) ? (var_4 <<= arg_1) : 'E')
   107         {
   108             case 'a':
   110             case 46:
   112             case 's':
   114             case 50:
   115                 ((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);
   116                 var_3 = false ? var_8 : "amfijbpwa";
   117                 var_4 -= -1.4699719646972257E308;
   118                 var_2 = (var_1 = (byte)(arg_1 += 1.6757431E38F));
   119                 var_1 = (var_1 = (var_1 = (byte)+1.4416583523884388E308));
   120                 final Object var_10 = (new Object[(byte)(arg_1 += var_4)])[var_1 = (byte)- +1.0281942E38F];
   121                 arg_1 = arg_1;
   122                 break;
   124             case 7:
   125                 var_8 = var_8 + var_8;
   126                 break;
   128             case 'N':
   130             case 'V':
   132             case 56:
   134             case 'I':
   136         }
   137         arg_0 &= arg_1;
   138         var_3 = false ? var_8 : "vpaj";
   139         var_4 = (var_4 *= arg_1);
   140         arg_3 *= (var_4 = var_4);
   141         final char var_11 = true ? var_4 : (char)(var_4 << (var_1 = (byte)(arg_1 &= arg_0)));
   142         boolean var_12;
   143         var_4 ^= '`';
   144         "nkj".startsWith(var_6 = "wrcnrdd");
   145         var_1 = (byte)~var_7;
   146         var_6 = (var_8 = "ul");
   147         return (var_12 = 3548576322219573248L <= var_4++ & ((var_12 = !true) || (var_12 = !false | false))) ? arg_1-- : (var_1 = (byte)+ (var_2 = 2.7633542E38F));
   148     }
   150     protected final void func_1(final String arg_0, Object arg_1, short arg_2)
   151     {
   152         arg_2 *= ~8267766955221100544L;
   153         arg_1 = (var_6 = var_8);
   154         arg_2 <<= false ? (var_1 = (var_1 = (var_1 = (byte)1.6645553629318776E308))) : arg_2;
   155     }
   157     protected final static float func_2(byte arg_0, final String arg_1)
   158     {
   159         var_8 = arg_1;
   160         char var_13 = ((new Tester_Class_0[arg_0 |= ']'])[arg_0]).var_4--;
   161         var_5 = 907889433;
   162         {
   163             var_13 ^= (var_5 = var_13);
   164         }
   165         var_8 = arg_1;
   166         var_5 = (byte)1759688161;
   167         var_8 = (new String[arg_0 >>>= (short)1072761211])[arg_0];
   168         return 5.108221E37F;
   169     }
   171     private static boolean func_3(boolean arg_0, final boolean arg_1)
   172     {
   173         var_2 = ((new Tester_Class_0[(byte)(short)'H'])[(byte)(short)(var_2 = (short)'k')]).var_4;
   174         if (false)
   175         {
   176             var_8 = "cl";
   177         }
   178         else
   179         {
   180             final byte[] var_14 = new byte[true ? (byte)(- ((byte)9.760296114722793E307) | ~1867374212153383936L) : (byte)(short)'Q'];
   181             var_2 = (float)~3838271533006646272L / (- ~ ~1786841397228277760L ^ ~3695911615719734272L & 'Z');
   182         }
   183         {
   184             var_8 = var_8;
   185         }
   186         ((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;
   187         ((new Tester_Class_0[(byte)756871578277111808L][(byte)+ + -3.0687752E38F])[(byte)'f'][(byte)1544156315]).var_6 = (var_8 = "vqey");
   188         return arg_1;
   189     }
   191     public final char func_4(short arg_0)
   192     {
   193         {
   194             var_6 = (var_3 = "hjtjar");
   195             var_1 = false ? (byte)4.02486350499973E307 : (byte)1.3222663E38F;
   196         }
   197         var_1 = (new byte[var_1 = (var_1 = (byte)1770517884)])[var_1 = (byte)arg_0];
   198         var_4++;
   199         --arg_0;
   200         var_5 = true ? 'D' : (var_4 ^= (var_5 = 134858941));
   201         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;
   202     }
   204 }
   207 class Tester_Class_1 {
   208     Tester_Class_0[][] var_21;
   209     static long var_22 = 6671342492736446464L;
   210     float var_23 = 2.9329673E38F;
   211     final int var_24 = 1834862519;
   212     int var_25 = 69920645;
   213     static char var_26;
   214     static Object var_27;
   215     static int var_28 = Tester_Class_0.var_5 = false ? 'U' : (var_26 = (var_26 = 'R'));
   218     public Tester_Class_1()
   219     {
   220         (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);
   221         Tester_Class_0.var_2 = new Tester_Class_0().var_7;
   222         --var_22;
   223         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);
   224         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);
   225         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];
   226         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));
   227         Tester_Class_0.var_2 = 1.4644308179397427E308;
   228         var_28 /= (short)1681483575;
   229         Tester_Class_0.var_2 = (var_34 <<= (var_25 ^= ~ (var_22 |= (var_22 = var_22))));
   230         var_23 *= (char)(var_28 *= var_32 ? var_34 ^ --var_34 : 3220732582528450560L);
   231         if ((((Tester_Class_0)var_33).var_4 &= var_34) != (short)var_28)
   232         {
   233             Tester_Class_0.var_8 = ((false ? (Tester_Class_0)var_33 : (Tester_Class_0)var_33).var_6 = Tester_Class_0.var_8);
   234         }
   235         else
   236         {
   237             var_33 = false | (var_32 ^= true) ? ((new Tester_Class_0[var_34][var_34])[var_34])[var_34] : (Tester_Class_0)var_33;
   238         }
   239         if (false)
   240         {
   241             var_22 = 107656877775594496L;
   242         }
   243         else
   244         {
   245             ((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;
   246         }
   247         String[][] var_35;
   248         Tester_Class_0.var_8 = Tester_Class_0.var_8;
   249         var_27 = (new Tester_Class_0[var_34][var_34 /= 226411329])[false ? --var_34 : (var_34 /= 1.7237614E38F)][var_34];
   250         var_23 %= var_25;
   251     }
   255     protected Object clone()
   256     {
   257         var_28 >>>= (new Tester_Class_0().var_1 = (byte)new Tester_Class_0().var_4);
   258         ((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;
   259         var_22--;
   260         new Tester_Class_0().var_4 -= (new Tester_Class_0().var_1 = (byte)'O');
   261         {
   262             short var_29 = 12378;
   263         }
   264         Tester_Class_0.var_8 = "fd";
   265         "".lastIndexOf("bgsxwmil");
   266         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);
   267         return var_27 = (var_27 = (var_27 = (var_27 = (Tester_Class_0.var_8 = Tester_Class_0.var_8).substring(var_24))));
   268     }
   270     public boolean equals(Object obj)
   271     {
   272         --var_28;
   273         var_23 /= +var_23 * -6025098819014877184L / 3.3957492E38F / (short)'i';
   274         Tester_Class_0.var_2 = 3.0420988E38F * ((short)var_23 <= (var_23 %= 8.761205585617465E307) % + -1.2374670294031777E308 ? (var_23 = 'P') : (float)+ +1.0313120780554142E308);
   275         (7489001532003495936L >= 'C' ? (Tester_Class_0)obj : (Tester_Class_0)(var_27 = obj)).func_4((short)(float)(byte)(float)(Tester_Class_0.var_2 = 1601763635));
   276         (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++;
   277         boolean var_30 = true;
   278         var_27 = new Tester_Class_0();
   279         final String var_31 = "aiqnc";
   280         return 1.1357028E38F + (var_30 ? (Tester_Class_0)(var_27 = obj) : (Tester_Class_0)obj).var_7 == 3.860172628750592E306;
   281     }
   284 }
   286 public class Tester {
   287     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;
   290     static long func_0(final Tester_Class_1 arg_0, long arg_1)
   291     {
   292         ((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;
   293         return Tester_Class_1.var_22 &= new Tester_Class_0().var_4;
   294     }
   296     protected Tester_Class_1 func_1(final boolean arg_0, Object arg_1)
   297     {
   298         Tester_Class_0.var_2 = (short)Tester_Class_1.var_22;
   299         ((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");
   300         arg_1 = (new Tester_Class_0[((Tester_Class_0)arg_1).var_1 = (byte)1.0730194668655324E308])[(byte)'l'];
   301         Tester_Class_0.var_8 = Tester_Class_0.var_8;
   302         Tester_Class_1.var_27 = arg_0 & (true | !true) ? (Tester_Class_1)arg_1 : (Tester_Class_1)arg_1;
   303         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);
   304         Tester_Class_1.var_28 <<= ((Tester_Class_0)arg_1).var_4;
   305         return arg_0 ? (false ^ false ? (Tester_Class_1)arg_1 : (Tester_Class_1)arg_1) : (Tester_Class_1)arg_1;
   306     }
   308     protected final static String[][] func_2(final double arg_0)
   309     {
   310         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]);
   311         {
   312             ((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'));
   313         }
   314         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);
   315         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;
   316         {
   317             ((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;
   318         }
   319         final double var_37 = 1.6970877829548446E308;
   320         --(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;
   321         Tester_Class_1.var_22--;
   322         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'];
   323     }
   325     final short func_3(byte arg_0, final short arg_1)
   326     {
   327         ((Tester_Class_0)(Tester_Class_1.var_27 = (Tester_Class_0.var_8 = "oenvgqdit"))).var_6 = Tester_Class_0.var_8;
   328         new Tester_Class_0().var_4 >>>= + -var_36;
   329         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);
   330         ((new Tester_Class_1[arg_0])[arg_0 |= 1942533325]).var_23 %= arg_0 < arg_0 ? 'm' : 'N';
   331         float var_38;
   332         ((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;
   333         return true ? arg_1 : arg_1;
   334     }
   336     private String func_4()
   337     {
   338         if (true)
   339         {
   340             ((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;
   341             ((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);
   342         }
   343         else
   344         {
   345             {
   346                 Tester_Class_1.var_22 *= 1.6498653E36F;
   347             }
   348             Tester_Class_0.var_2 = + ((byte)7.750601265069686E307) > (short)(byte)3131520439106527232L ? (short)4699552681135671296L : (short)Tester_Class_1.var_22;
   349             Tester_Class_1.var_22++;
   350             ((Tester_Class_1)(new Object[(byte)6.231994821505742E307])[(byte)Tester_Class_1.var_22]).var_23 %= 30526551;
   351             {
   352                 Tester_Class_0.var_2 = ((Tester_Class_1)(Tester_Class_1.var_27 = new short[(byte)9.628297E37F])).var_25;
   353             }
   354             Tester_Class_1.var_28 /= (byte)(false ^ Tester_Class_0.var_8.equalsIgnoreCase(Tester_Class_0.var_8) ? (byte)2.689633745095358E307 : (short)1.2532476E38F);
   355             float var_39;
   356             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')))];
   357         }
   358         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'));
   359         Tester_Class_0.var_8 = (Tester_Class_0.var_8 = Tester_Class_0.var_8);
   360         return "rkvffvlf";
   361     }
   363     final char func_5(final char arg_0, final Object[] arg_1, final double arg_2, Object arg_3)
   364     {
   365         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;
   366         (true ? (Tester_Class_1)arg_3 : (Tester_Class_1)arg_3).var_23 -= (Tester_Class_0.var_2 = arg_0);
   367         arg_3 = (new String[(byte)arg_2])[(byte)-2.797633529863769E307];
   368         (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];
   369         Tester_Class_0.var_8 = Tester_Class_0.var_8;
   370         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);
   371         (false ? (Tester_Class_0)arg_3 : (Tester_Class_0)arg_3).var_6 = "bpjqfacys";
   372         ((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);
   373         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';
   374     }
   376     private final static Tester_Class_1 func_6(String arg_0, String arg_1)
   377     {
   378         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;
   379         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)'['];
   380     }
   382     double func_7(Object arg_0, final String arg_1)
   383     {
   384         if (false)
   385         {
   386             ((Tester_Class_0)arg_0).var_1 = (byte)'Z';
   387         }
   388         else
   389         {
   390             ((Tester_Class_0)arg_0).var_3 = Tester_Class_0.var_8;
   391         }
   392         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';
   393         ++Tester_Class_1.var_22;
   394         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;
   395     }
   397     private final static byte func_8(final Object arg_0, double arg_1, final double arg_2, double arg_3)
   398     {
   399         ((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);
   400         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];
   401         Tester_Class_1.var_22 <<= ((new Tester_Class_0[(byte)var_42])[((Tester_Class_0)arg_0).var_1 = (byte)'X']).var_4;
   402         (false ? new Tester_Class_0() : new Tester_Class_0()).var_4 *= 6.636831399350763E307;
   403         (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;
   404         int var_43;
   405         final Object var_44 = Tester_Class_1.var_27 = new byte[((Tester_Class_0)arg_0).var_1 = (byte)+arg_2];
   406         ((Tester_Class_0)var_44).var_1 = (byte)arg_1;
   407         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;
   408         arg_1 *= false ? (false ? (byte)var_45.var_23 : (byte)var_45.var_24) : (byte)8158132319185776640L;
   409         Tester_Class_0.var_8 = (new Tester_Class_0().var_6 = "gvxkyj");
   410         Tester_Class_1.var_27 = "bkfbu";
   411         arg_1 *= (((Tester_Class_0)arg_0).var_4 += new Tester_Class_0().var_4);
   412         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;
   413         return var_46.var_1 = (var_46.var_1 = (var_46.var_1 = (byte)var_45.var_23));
   414     }
   416     public static void main(String[] args)
   417     {
   418         for (int i = 0; i < 100000; i++) {
   419             Tester t = new Tester();
   420             try {
   421                 t.test();
   422             } catch(Throwable e) {
   423             }
   424             if (t.var_36 !=  -4918908939899620363L) {
   425                 throw new InternalError(t.var_36 + " !=  -4918908939899620363");
   426             }
   427         }
   428     }
   430     private void test()
   431     {
   432         ((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;
   433         Tester_Class_1.var_22 <<= Tester_Class_1.var_22;
   434         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();
   435         (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++;
   436         (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;
   437         new Tester_Class_0().var_4 ^= 8777687662500669440L;
   438         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];
   439         long var_48 = 0L;
   440         Tester_Class_0.var_2 = "nwcmc".codePointAt("wgcdlmd".compareTo("jyt"));
   441         do
   442         {
   443             Tester_Class_1.var_22 += new Tester_Class_0().var_4;
   444             var_48++;
   445             Tester_Class_1.var_27 = false ? "dfvpqs" : Tester_Class_0.var_8;
   446             new Tester_Class_0().var_1 = (new Tester_Class_0().var_1 = (new byte[(byte)2.2825838E38F])[(byte)4.2446597794703817E307]);
   447         } while ((true ? !false : false & !false) && (var_48 < 117 && true));
   448         int var_49 = 0;
   449         Tester_Class_1.var_26 = 'I';
   450         short var_50;
   451         while (var_49 < 225 && ('U' | ~ ((byte)9.556538701292864E306)) < var_49)
   452         {
   453             var_50 = (var_50 = ((byte)1.2016701369644112E308 != (var_50 = (short)1.2518271E38F) ^ !true ? !true : false) ? (short)6.629572378442352E307 : (byte)'O');
   454             var_49++;
   455             var_50 = true ? (byte)Tester_Class_1.var_22 : (byte)(Tester_Class_1.var_22 = (byte)var_48);
   456             byte var_51;
   457             short var_52;
   458         }
   459         Tester_Class_1.var_27 = Tester_Class_0.var_8 + "r";
   460         var_50 = (var_50 = true ^ ! (!false ^ false) ? (byte)573442894 : (byte)2.1479471E38F);
   461         ((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 = '^');
   462         float var_53;
   463         (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;
   464         long var_54 = 0L;
   465         Object var_55;
   466         (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;
   467         while (false & (false | 5.7300464E37F != (short)(Tester_Class_0.var_2 = (short)var_36)) && var_54 < 293)
   468         {
   469             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));
   470             var_54++;
   471             (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)));
   472             Tester_Class_0.var_8 = Tester_Class_0.var_8;
   473         }
   474         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)));
   475         Tester_Class_1.var_22++;
   476         Tester_Class_1.var_28 <<= 'Y';
   477     }
   478 }

mercurial