Okra loader needs to check OS support

Doug Simon doug.simon at oracle.com
Fri Jan 24 13:27:25 PST 2014



Sent from my iPhone

> On Jan 24, 2014, at 8:21 PM, "Deneau, Tom" <tom.deneau at amd.com> wrote:
> 
> Doug --
> 
> I'll get out an update today. I didn't know this was a gate environment.
> As you know, the hsail simulator itself has never been ported to Mac.
> 
> So on a Mac you want this to work the way things used to work on linux,
> basically skipping all the hsail tests, is that correct?

Yes, that would be great.

> 
>> -----Original Message-----
>> From: Doug Simon [mailto:doug.simon at oracle.com]
>> Sent: Friday, January 24, 2014 12:27 PM
>> To: Deneau, Tom
>> Cc: graal-dev at openjdk.java.net
>> Subject: Okra loader needs to check OS support
>> 
>> Hi Tom,
>> 
>> The new Okra library loading mechanism breaks the unit tests on a Mac:
>> 
>> $ mx --vm server unittest LongNegTest
>> JUnit version 4.8
>> .E
>> Time: 2.377
>> There was 1 failure:
>> 1) test(com.oracle.graal.compiler.hsail.test.LongNegTest)
>> java.lang.ExceptionInInitializerError
>>    at com.amd.okra.OkraUtil.testOkraLibExists(OkraUtil.java:61)
>>    at com.amd.okra.OkraUtil.<clinit>(OkraUtil.java:51)
>>    at
>> com.oracle.graal.compiler.hsail.test.infra.KernelTester.<init>(KernelTes
>> ter.java:118)
>>    at
>> com.oracle.graal.compiler.hsail.test.infra.GraalKernelTester.<init>(Graa
>> lKernelTester.java:45)
>>    at
>> com.oracle.graal.compiler.hsail.test.LongNegTest.<init>(LongNegTest.java
>> :32)
>>    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> Method)
>>    at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA
>> ccessorImpl.java:62)
>>    at
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons
>> tructorAccessorImpl.java:45)
>>    at
>> java.lang.reflect.Constructor.newInstance(Constructor.java:408)
>>    at
>> org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunn
>> er.java:202)
>>    at
>> org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4
>> ClassRunner.java:251)
>>    at
>> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
>> le.java:15)
>>    at
>> org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRun
>> ner.java:248)
>>    at
>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:76)
>>    at
>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:50)
>>    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>>    at
>> org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>>    at
>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>>    at
>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>>    at
>> org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>>    at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>>    at org.junit.runners.Suite.runChild(Suite.java:128)
>>    at org.junit.runners.Suite.runChild(Suite.java:24)
>>    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>>    at
>> org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>>    at
>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>>    at
>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>>    at
>> org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>>    at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>>    at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
>>    at org.junit.runner.JUnitCore.run(JUnitCore.java:136)
>>    at org.junit.runner.JUnitCore.run(JUnitCore.java:117)
>>    at org.junit.runner.JUnitCore.runMain(JUnitCore.java:98)
>>    at org.junit.runner.JUnitCore.runMainAndExit(JUnitCore.java:53)
>>    at org.junit.runner.JUnitCore.main(JUnitCore.java:45)
>> Caused by: java.lang.RuntimeException: unable to load
>> libokra_x86_64.dylib, java.lang.UnsatisfiedLinkError: Can't load
>> library:
>> /var/folders/d_/fn0kjn111nsc60w4vfy38fgr0026wn/T/okraresource.dir_656902
>> 6372617119677/libokra_x86_64.dylib
>>    at
>> com.amd.okra.OkraContext.loadOkraNativeLibrary(OkraContext.java:140)
>>    at com.amd.okra.OkraContext.<clinit>(OkraContext.java:69)
>>    ... 35 more
>> 
>> FAILURES!!!
>> Tests run: 1,  Failures: 1
>> 
>> 
>> Can you please fix com.amd.okra.OkraContext.loadOkraNativeLibrary() so
>> that it only tries to load the library if on Linux.
>> 
>> This will require an update to the Okra jar files.
>> 
>> -Doug
> 


More information about the graal-dev mailing list