RFR (M): 7200949: JSR 292: rubybench/bench/time/bench_base64.rb fails with jruby.jar not on boot class path
John Rose
john.r.rose at oracle.com
Thu Sep 27 17:24:43 PDT 2012
On Sep 27, 2012, at 4:34 PM, Christian Thalinger wrote:
> http://cr.openjdk.java.net/~twisti/7200949
>
> 7200949: JSR 292: rubybench/bench/time/bench_base64.rb fails with jruby.jar not on boot class path
> Reviewed-by:
It looks good.
(Having all the references to the jli.MethodType objects makes me wonder if we should have a JVM-internal analog MethodType, to represent resolved signatures. I suppose what we have is reasonably economical.)
I'm not fully comfortable with the handshake between Rewriter and CPCache (last diff hunk in cpCache.cpp). Ideally, if you were to redefine _indy_appendix_offset=1 and _indy_method_type_offset=0 it would either Just Work (tm) or throw an assert. It's not clear that this is the case here.
Maybe this code would help in rewriter.cpp:
int ref_index = appendix_index - _indy_appendix_offset;
assert(ref_index == method_type_index - _indy_method_type_offset, "consistent offsets");
... use ref_index in sequel ...
And something similar in cpCache.cpp, using a neutral ref_index value.
— John
More information about the hotspot-compiler-dev
mailing list