RFR: 8173472: AArch64: C1 comparisons with null only use 32-bit instructions

David Holmes david.holmes at oracle.com
Mon Jan 30 12:28:51 UTC 2017


On 30/01/2017 9:26 PM, Andrew Haley wrote:
> On 30/01/17 01:06, David Holmes wrote:
>> IIRC C1 was 32-bit only - maybe even never officially supported on
>> 64-bit, just as part of tiered ??
>
> Um, what?  Officially supported or not, it's still gotta work.

Well that's what I'm questioning. Maybe one of the compiler folk 
(Roland?) can chime in. C1 was 32-bit only but there was a proprietary 
64-bit version. I don't know if OpenJDK ever supported a 64-bit C1. The 
code would have to have been adapted for tiered compilation.

>> Is this code buggy or just quirky?
>
> Beats me.  I'm not sure that T_ADDRESS can ever happen anyway in
> that context.  You'll see exactly the same in x86:
>
>     case T_ADDRESS: {
>       assert(patch_code == lir_patch_none, "no patching handled here");
>       __ movptr(dest->as_register(), c->as_jint());
>       break;
>     }
>
> Perhaps this should be looked at, but it's not urgent.

Ok. Seems odd to me.

David

> Andrew.
>


More information about the hotspot-dev mailing list