| // Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| package regress_70703087; |
| |
| /** |
| * AOSP JFuzz Tester. |
| * Automatically generated program. |
| * jfuzz -s 67746824 -d 1 -l 8 -i 2 -n 3 (version 1.4) |
| */ |
| |
| import java.util.Arrays; |
| |
| public class Test { |
| |
| private interface X { |
| int x(); |
| } |
| |
| private class A { |
| public int a() { |
| return ((-1855525611 | 1607049612) + 1045227917); |
| } |
| } |
| |
| private class B extends A implements X { |
| public int a() { |
| return super.a() + ((--mI) >>> mI); |
| } |
| public int x() { |
| return (Math.negateExact((mI--))); |
| } |
| } |
| |
| private static class C implements X { |
| public static int s() { |
| return 772321235; |
| } |
| public int c() { |
| return 1742917409; |
| } |
| public int x() { |
| return -1360135619; |
| } |
| } |
| |
| private A mA = new B(); |
| private B mB = new B(); |
| private X mBX = new B(); |
| private C mC = new C(); |
| private X mCX = new C(); |
| |
| private boolean mZ = false; |
| private int mI = 0; |
| private long mJ = 0; |
| private float mF = 0; |
| private double mD = 0; |
| |
| private double[] mArray = new double[700]; |
| |
| private Test() { |
| double a = 1796354926.0; |
| for (int i0 = 0; i0 < 700; i0++) { |
| mArray[i0] = a; |
| a++; |
| } |
| } |
| |
| private float testMethod() { |
| { |
| int i0 = -1; |
| while (++i0 < 700) { |
| mJ -= (mB.a()); |
| mArray[i0] = (mB.x()); |
| if ((-1926417383 < (((false || true) || true) ? 1210112326 : ((int) new Integer((Integer.MIN_VALUE)))))) { |
| mI += (((int) new Integer((mI++))) % (mZ ? mI : -1938324616)); |
| for (int i1 = 0; i1 < 700; i1++) { |
| mZ = ((boolean) new Boolean(mZ)); |
| mF += (Math.nextUp((++mF))); |
| mI *= (Integer.MAX_VALUE); |
| { |
| int lI0 = (- mI); |
| { |
| int i2 = -1; |
| while (++i2 < 700) { |
| mF -= (++mF); |
| switch (i0) { |
| case 427: { |
| switch (i1) { |
| case 684: { |
| { |
| int i3 = -1; |
| while (++i3 < mArray.length) { |
| continue; |
| } |
| } |
| break; |
| } |
| default: { |
| for (int i3 = 0; i3 < 700; i3++) { |
| mZ = (false | (true || (mZ))); |
| mJ >>= (mJ++); |
| mZ ^= ((boolean) new Boolean(mZ)); |
| } |
| break; |
| } |
| } |
| mJ *= ((true || (mZ)) ? 612985119L : 2049818256L); |
| break; |
| } |
| default: { |
| mF += (Math.nextDown((++mF))); |
| break; |
| } |
| } |
| } |
| } |
| if ((mZ)) { |
| lI0 >>>= ((lI0 << 91989301) ^ -1039049984); |
| } else { |
| lI0 >>>= (false ? (Integer.MAX_VALUE) : ((int) mD)); |
| } |
| switch (i0) { |
| case 197: { |
| if ((false ^ true)) { |
| for (int i2 = 0; i2 < 700; i2++) { |
| mJ += (-676408943L << mJ); |
| } |
| mI /= ((1831995326 / mI) >>> -108611513); |
| } else { |
| mJ <<= (Math.multiplyExact(((~ mJ) - 1612907666L), -42299883L)); |
| mI += (921426411 >>> (((boolean) new Boolean(mZ)) ? mI : -718350442)); |
| } |
| break; |
| } |
| default: { |
| mZ ^= (! ((boolean) new Boolean((! false)))); |
| break; |
| } |
| } |
| } |
| { |
| int i2 = -1; while (++i2 < 700) { |
| mZ = (Boolean.logicalAnd(false, (mZ ^ (mZ ^ (mZ))))); |
| } |
| } |
| } |
| } else { |
| { |
| int lI0 = ((int) new Integer(-242659552)); |
| if ((1516210251.0 >= -69512179.0)) { |
| lI0 = (mI--); |
| } else { |
| mD -= ((mArray[163]--) * ((mB.a()) / -1609350152.0)); |
| } |
| } |
| } |
| } |
| } |
| return (mF - -1677280306.0f); |
| } |
| |
| public static void main(String[] args) { |
| Test t = new Test(); |
| float r = 1753285454.0f; |
| try { |
| r = t.testMethod(); |
| } catch (Exception e) { |
| // Arithmetic, null pointer, index out of bounds, etc. |
| System.out.println("An exception was caught."); |
| } |
| System.out.println("r = " + r); |
| System.out.println("mZ = " + t.mZ); |
| System.out.println("mI = " + t.mI); |
| System.out.println("mJ = " + t.mJ); |
| System.out.println("mF = " + t.mF); |
| System.out.println("mD = " + t.mD); |
| System.out.println("mArray = " + Arrays.toString(t.mArray)); |
| } |
| } |