blob: df0779adb0b06d2f5f245496a8dc61dfea97e64b [file] [log] [blame]
/*
* Copyright (c) 2008, 2018, Oracle and/or its affiliates. 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
*
* @summary converted from VM Testbase jit/t/t063.
* VM Testbase keywords: [jit, quick]
*
* @library /vmTestbase
* /test/lib
* @run driver jdk.test.lib.FileInstaller . .
* @build jit.t.t063.t063
* @run driver ExecDriver --java jit.t.t063.t063
*/
package jit.t.t063;
import nsk.share.TestFailure;
import nsk.share.GoldChecker;
class t063
{
public static final GoldChecker goldChecker = new GoldChecker( "t063" );
t063() { }
byte b = 0;
short s = 0;
int i = 0;
long l = 0;
static void chkCond(String s, boolean b)
{
if(!b)
t063.goldChecker.println(s);
}
static void chkIntVal(String s, String t, int x, int y)
{
if(x != y)
t063.goldChecker.println(s + " " + t + " is " + x + " sb " + y);
}
public static void chkBounds()
{
t063 ox = new t063();
ox.b = -128;
chkCond("err_1", ox.b == -128);
ox.b = 127;
chkCond("err_2", ox.b == 127);
ox.s = -32768;
chkCond("err_3", ox.s == -32768);
ox.s = 32767;
chkCond("err_4", ox.s == 32767);
ox.i = -2147483647 -1;
chkCond("err_5", ox.i == 0x80000000);
ox.i = 2147483647;
chkCond("err_6", ox.i == 017777777777);
ox.l = -9223372036854775807L -1;
chkCond("err_7", ox.l == 0x8000000000000000l);
ox.l = 9223372036854775807L;
chkCond("err_8", ox.l == 0x7fffffffffffffffl);
ox.i = -2147483647 - 2;
chkCond("err_9", ox.i <= 2147483647);
chkCond("err_10", ox.i >= 0x80000000);
ox.i = 2147483647 + 1;
chkCond("err_11", ox.i <= 2147483647);
chkCond("err_12", ox.i >= 0x80000000);
ox.l = -9223372036854775807l - 2;
chkCond("err_13", ox.l <= 9223372036854775807l);
chkCond("err_14", ox.l >= 0x8000000000000000l);
ox.l = 9223372036854775807l + 1;
chkCond("err_15", ox.l <= 9223372036854775807l);
chkCond("err_16", ox.l >= 0x8000000000000000l);
ox.b = 100;
chkIntVal("err_17", "ox.b * ox.b", ox.b * ox.b, 10000);
for (int i = 0; i < 10000; i++)
ox.b++;
chkCond("err_18", ox.b <= 127);
chkCond("err_19", ox.b >= -128);
ox.s = 32750;
chkIntVal("err_20", "ox.s * ox.s", ox.s * ox.s, 1072562500);
for (int i = 0; i < 1000000; i++)
ox.s++;
chkCond("err_21", ox.s <= 32767);
chkCond("err_22", ox.s >= -32768);
}
public static void main(String argv[])
{
t063.goldChecker.println("Hi, t063.java here.");
chkBounds();
t063.goldChecker.println("... and that's all the news that's fit to print.");
t063.goldChecker.check();
}
}