Request for reviews (M): 6930772: JSR 292 needs to support SPARC C1

Christian Thalinger Christian.Thalinger at Sun.COM
Mon May 3 11:44:20 PDT 2010


On Mon, 2010-05-03 at 11:11 -0700, John Rose wrote:
> On May 3, 2010, at 8:33 AM, Christian Thalinger wrote:
> 
> > On Wed, 2010-04-28 at 12:23 -0700, John Rose wrote:
> >> Suggestion:  Grep for is_method_handle_adapter in this file, and adapt any relevant changes:
> >> 
> >> http://hg.openjdk.java.net/mlvm/mlvm/hotspot/file/tip/meth-ing-6939134.patch
> >> 
> >> (My bad that it's not pushed yet.)
> > 
> > Now it is.  Is it OK that 3 tests of MethodHandlesTest are failing
> > now?  
> 
> No, that's not OK; I always (?!?) test MHT before pushing.  Which
> patches (or is it the JDK7 push), which version of MHT, and which 3
> tests?

I built the hotspot-comp forest to really test what is then in the
repository.

> 
> Possible explanation:  The tests change (improve) with both meth-ing
> and meth-bcp.  It's likely there's a temporary version skew somewhere.

JUnit version 4.4
.IIIIII..E...E...................E
Time: 0.731
There were 3 failures:
1) testFindVirtual(MethodHandlesTest)
java.lang.AssertionError: expected:<(MethodHandlesTest$Example)void> but was:<(java.lang.Object)void>
	at org.junit.Assert.fail(Assert.java:74)
	at org.junit.Assert.failNotEquals(Assert.java:448)
	at org.junit.Assert.assertEquals(Assert.java:102)
	at org.junit.Assert.assertEquals(Assert.java:117)
	at MethodHandlesTest.testFindVirtual(MethodHandlesTest.java:518)
	at MethodHandlesTest.testFindVirtual(MethodHandlesTest.java:492)
	at MethodHandlesTest.testFindVirtual(MethodHandlesTest.java:488)
	at MethodHandlesTest.testFindVirtual(MethodHandlesTest.java:467)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:613)
	at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
	at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
	at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
	at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
	at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
	at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
	at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
	at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
	at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
	at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
	at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
	at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
	at org.junit.internal.runners.CompositeRunner.runChildren(CompositeRunner.java:33)
	at org.junit.internal.runners.CompositeRunner.run(CompositeRunner.java:28)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:130)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:109)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:100)
	at org.junit.runner.JUnitCore.runMain(JUnitCore.java:81)
	at org.junit.runner.JUnitCore.main(JUnitCore.java:44)
2) testUnreflect(MethodHandlesTest)
java.lang.AssertionError: expected:<class MethodHandlesTest$Example> but was:<class java.lang.Object>
	at org.junit.Assert.fail(Assert.java:74)
	at org.junit.Assert.failNotEquals(Assert.java:448)
	at org.junit.Assert.assertEquals(Assert.java:102)
	at org.junit.Assert.assertEquals(Assert.java:117)
	at MethodHandlesTest.testUnreflectMaybeSpecial(MethodHandlesTest.java:716)
	at MethodHandlesTest.testUnreflect(MethodHandlesTest.java:663)
	at MethodHandlesTest.testUnreflect(MethodHandlesTest.java:651)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:613)
	at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
	at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
	at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
	at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
	at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
	at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
	at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
	at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
	at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
	at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
	at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
	at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
	at org.junit.internal.runners.CompositeRunner.runChildren(CompositeRunner.java:33)
	at org.junit.internal.runners.CompositeRunner.run(CompositeRunner.java:28)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:130)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:109)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:100)
	at org.junit.runner.JUnitCore.runMain(JUnitCore.java:81)
	at org.junit.runner.JUnitCore.main(JUnitCore.java:44)
3) testUserClassInSignature(MethodHandlesTest)
java.lang.AssertionError: 
	at org.junit.Assert.fail(Assert.java:74)
	at org.junit.Assert.assertTrue(Assert.java:37)
	at org.junit.Assert.assertTrue(Assert.java:46)
	at MethodHandlesTest.testUserClassInSignature(MethodHandlesTest.java:1879)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:613)
	at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
	at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
	at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
	at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
	at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
	at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
	at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
	at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
	at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
	at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
	at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
	at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
	at org.junit.internal.runners.CompositeRunner.runChildren(CompositeRunner.java:33)
	at org.junit.internal.runners.CompositeRunner.run(CompositeRunner.java:28)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:130)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:109)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:100)
	at org.junit.runner.JUnitCore.runMain(JUnitCore.java:81)
	at org.junit.runner.JUnitCore.main(JUnitCore.java:44)

FAILURES!!!
Tests run: 25,  Failures: 3


> > Additionally I found a bug in SPARC C1 with one of the tests (I think
> > it's testCastFailure).  Obviously I have to fix that before pushing.
> 
> Foo.  Let me know if I can help.  

It's odd.  It only happens with a fastdebug build, a debug build runs
fine.  C2 and interpreter also works so it must be a C1 bug.  Hmm...

> BTW, did the cpindex changes for sparc break anything on your end?

No, except this one bug everything was good on SPARC.

-- Christian



More information about the hotspot-compiler-dev mailing list