When Doom3 source becomes open, this woukd be a good oportunity to adapt it to java and see the benchmark difference. If a java version of Doom3 could compare to the c++ version this would sure raise a lot of noise. This would be a bit hard however. I noticed when looking at the Doom3 source there was a lot of optimized assembler code mixed with c++ in some places. The jvm may have an hard time competing at this optimization level.
Why doesn't sun add a bytecode assembler language feature to java, doesn't C++ have something like this with
mov 0, 1 // I don't know assembly btw