[aarch64-port-dev ] RFR(M): 8243392: Remodel CDS/Metaspace storage reservation

Andrew Haley aph at redhat.com
Wed Apr 29 13:32:56 UTC 2020


On 4/29/20 1:56 PM, Andrew Haley wrote:
> Maybe. What actually happens when we decode compressed class pointers
> in AOT-compiled code is:
> 
> Load the klass pointer from an Object:
> 
>   532440:       b940082a        ldr     w10, [x1,#8]
> 
> Load the compressed class base:
> 
>   532444:       90055e68        adrp    x8, b0fe000 <A.meta.got+0x16e000>
>   532448:       9104c108        add     x8, x8, #0x130
>   53244c:       f9400108        ldr     x8, [x8]
> 
> Shift and add:
> 
>   532450:       8b2a6d0a        add     x10, x8, x10, uxtx #3
> 
> ... none of which is very nice, but the expensive part is loading the
> compressed class base and doing the add, so I guess we don't care
> that there is a shift as well.

Argh. s/compressed class/compressed oop/g

-- 
Andrew Haley  (he/him)
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
https://keybase.io/andrewhaley
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671



More information about the hotspot-dev mailing list