Request for reviews (M): 6829192: JSR 292 needs to support 64-bit x86
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:
>> 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. Thanks for catching
>> 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.
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
>> 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.
More information about the hotspot-compiler-dev