If you run Java RTS on an x86 processor that lacks SSE support, you get an error:
dl failure on line 719Error: failed /opt/SUNWrtjv/jre/lib/i386/client/libjvm.so, because ld.so.1: java: fatal: /opt/SUNWrtjv/jre/lib/i386/client/libjvm.so: hardware capability unsupported: 0x800 [ SSE ]
Apparently RTS requires SSE to run. Does anyone know why this is?
The SSE requirement means that RTS is incapable of running on many embedded processors, such as the AMD Geode.
I just found this:
So it appears that the binary is marked as using SSE and so Solaris is refusing to run it::
ELF 32-bit LSB dynamic lib 80386 Version 1 [SSE MMX CX8 FPU], dynamically linked, not stripped, no debugging information available
FYI this is the same as for JDK7, but JDK5 has no markings. I'll need to check with the rest of the HS team to see what's going on here and whether we should be applying one of the workarounds mentioned in the blog.