blob: db2ba6d967740e744f9c833dbadc326afeceb61e [file] [log] [blame]
/*
* Copyright (c) 2008, 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
* @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);
}
}