Hi, I'm hitting a JIT compiler bug in IBM JDK 6 with the following code (forcing JIT compilation using -Xjit:count=0):
(defprotocol FooProtocol (do-something [x])) (def foo (reify FooProtocol (do-something [this] (locking this (println "XXXXXXXXXXXXXXXXXXXXXXX"))))) (do-something foo) IBM JDK 6 is part of the clojure build matrix (though the last stable build is from over a year ago: http://build.clojure.org/job/clojure-test-matrix/jdk=IBM%20JDK%201.6/lastStableBuild/ ) I'm committed to supporting the IBM JVM as we are supporting AIX on PowerPC where there are no alternatives. For now I have to avoid the locking macro. The JVM crashes with the following output: Unhandled exception Type=Segmentation error vmState=0x0005ff05 J9Generic_Signal_Number=00000004 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000001 Handler1=00007FBD43A7C900 Handler2=00007FBD43735FB0 InaccessibleAddress=00000008015F5718 RDI=00000000019C2418 RSI=00000000015F5700 RAX=00000000015F5720 RBX=00000000015C5378 RCX=0000000000000001 RDX=00000000FFFFFFFF R8=0000000000000000 R9=0000000000000001 R10=0000000000000000 R11=00000000015F54D8 R12=00000000015C5AD0 R13=00007FBD1F2E7240 R14=00000000015F5700 R15=00000000019C86F8 RIP=00007FBD416E944A GS=0000 FS=0000 RSP=00007FBD1F2E7040 EFlags=0000000000210296 CS=0033 RBP=00000000015C5A98 ERR=0000000000000004 TRAPNO=000000000000000E OLDMASK=0000000000000000 CR2=00000008015F5718 xmm0 0000ff0000000000 (f: 0.000000, d: 1.385239e-309) xmm1 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm2 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm3 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm4 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm5 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm6 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm7 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm8 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm9 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm10 0000000000ffffff (f: 16777215.000000, d: 8.289046e-317) xmm11 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm12 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm13 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm14 0000000000000000 (f: 0.000000, d: 0.000000e+00) xmm15 0000000000000000 (f: 0.000000, d: 0.000000e+00) Module=/usr/lib/jvm/ibm-java-x86_64-60/jre/lib/amd64/default/libj9jit24.so Module_base_address=00007FBD4162D000 Method_being_compiled=user$reify__27.do_something()Ljava/lang/Object; Target=2_40_20121024_126067 (Linux 3.0.0-32-generic) CPU=amd64 (8 logical CPUs) (0x3eba54000 RAM) ----------- Stack Backtrace ----------- (0x00007FBD416E944A [libj9jit24.so+0xbc44a]) (0x00007FBD416EB6F3 [libj9jit24.so+0xbe6f3]) (0x00007FBD416E7DA0 [libj9jit24.so+0xbada0]) (0x00007FBD416E8060 [libj9jit24.so+0xbb060]) (0x00007FBD416F4909 [libj9jit24.so+0xc7909]) (0x00007FBD416F43C4 [libj9jit24.so+0xc73c4]) (0x00007FBD4169F077 [libj9jit24.so+0x72077]) (0x00007FBD4169E3EC [libj9jit24.so+0x713ec]) (0x00007FBD437356B1 [libj9prt24.so+0x196b1]) (0x00007FBD4169DE4D [libj9jit24.so+0x70e4d]) (0x00007FBD4169AFF9 [libj9jit24.so+0x6dff9]) (0x00007FBD437356B1 [libj9prt24.so+0x196b1]) (0x00007FBD4169AD42 [libj9jit24.so+0x6dd42]) (0x00007FBD4395F0F6 [libj9thr24.so+0x40f6]) (0x00007FBD44F50EFC [libpthread.so.0+0x7efc]) clone+0x6d (0x00007FBD44A86F8D [libc.so.6+0xe4f8d]) --------------------------------------- Paudi -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.