Request for reviews (M): 6829192: JSR 292 needs to support 64-bit x86
John Rose
John.Rose at Sun.COM
Wed Oct 21 17:59:40 PDT 2009
On Oct 21, 2009, at 8:15 AM, Christian Thalinger wrote:
> On Tue, 2009-10-20 at 17:32 -0700, Vladimir Kozlov wrote:
>> src/cpu/x86/vm/templateInterpreter_x86_64.cpp:
>> In TemplateInterpreterGenerator::generate_WrongMethodType_handler()
>> what rbx and rax contain and why you need to verify oop?
>
> I can only tell what the registers contain, John should know why it
> needs to be verified.
It's a typo: The registers should be c_rarg[12]. Thanks for catching
it, Vladimir.
>> I don't like outline code in generate_return_entry_for().
>> Why do you need to move it down?
>
> I guess John wrote it that way because it's not the default case.
> John?
This x64 code is parallel to what's already in M3 for the x32 code.
The usually taken path is the fallthrough path. I think it's slightly
faster that way: fewer I-cache lines to touch.
(We do that sort of heat-based CFG ordering routinely in the the C2
backend, and I think it's not uncommon in hand-written assembly code
also.)
>> src/share/vm/classfile/classFileParser.cpp:
>> Don't leave commented code. Remove it if you don't need it.
>
> Yeah, that commented code was just a hack to get it working, the real
> fix is to add this field "magically". John and I decided to do that
> after M5. But I will remove the commented code.
Yes, that's good.
The finalized API will remove MethodHandleImpl as a superclass of
MethodHandle. When this happens, we'll add a magic field, like the
klass field in java.lang.Class.
-- John
More information about the hotspot-compiler-dev
mailing list