-
Bug
-
Resolution: Cannot Reproduce
-
P5
-
None
-
0.9
-
sparc
-
solaris_2.4
From fy@pan Mon Mar 27 22:45 PST 1995
For the purposes of my compiler, I was compiling the nonsense
function at the bottom
I noticed that the bytecodes produced included the following:
90 iconst_0
91 goto 94
94 ifne 31
and that there are no other references to "byte 94". So these three
instructions do absolutely nothing
Needless to say, the Sparc code faithfully reproduces the compiled code.
Block #6
001. 30800000 ba,a ... //branch #7#
Block #7
001. 80a00000 sub.cc %0, %0 => %0
002. 12800000 bne ... //branch #2#
003. 01000000 nop
-- Frank
class test {
public static int foo() {
int a = 10; int b = 20; int c = 30; int d = 40; int e = 50;
baz(a, b, c, d, e);
for (int i = 0; baz(b, c, d, e, a), i < 10; i = Math.abs(i)) {
baz(c, d, e, a, b);
if (i == 3) {
baz(d, e, a, b, c);
break;
}
baz(e, a, b, c, d);
}
baz(c, d, e, a, b);
return 10;
}
public static void baz(int a, int b, int c, int d, int e) { }
}
For the purposes of my compiler, I was compiling the nonsense
function at the bottom
I noticed that the bytecodes produced included the following:
90 iconst_0
91 goto 94
94 ifne 31
and that there are no other references to "byte 94". So these three
instructions do absolutely nothing
Needless to say, the Sparc code faithfully reproduces the compiled code.
Block #6
001. 30800000 ba,a ... //branch #7#
Block #7
001. 80a00000 sub.cc %0, %0 => %0
002. 12800000 bne ... //branch #2#
003. 01000000 nop
-- Frank
class test {
public static int foo() {
int a = 10; int b = 20; int c = 30; int d = 40; int e = 50;
baz(a, b, c, d, e);
for (int i = 0; baz(b, c, d, e, a), i < 10; i = Math.abs(i)) {
baz(c, d, e, a, b);
if (i == 3) {
baz(d, e, a, b, c);
break;
}
baz(e, a, b, c, d);
}
baz(c, d, e, a, b);
return 10;
}
public static void baz(int a, int b, int c, int d, int e) { }
}