Zero's normal and native method entries both call
methodOopDesc::result_type when a method returns without an exception.
I didn't realise, but this parses the method's signature, so is pretty
slow. This webrev makes Zero figure out result types in a similar way
to the x86 and sparc C++ interpreter implementations.
Some quick and dirty SPECjvm98 numbers (not produced in compliance
with the SPECjvm98 run rules and therefore not comparable with
Old New Speedup
compress 151.38 136.34 9.9%
jess 38.81 28.64 26.2%
db 73.22 59.11 19.3%
javac 43.10 34.84 19.2%
mpegaudio 108.47 100.61 7.2%
mtrt 38.66 29.30 24.2%
jack 27.68 22.40 19.1%