[aarch64-port-dev ] RFR(L): 8231441: AArch64: Initial SVE backend support

Ningsheng Jian ningsheng.jian at arm.com
Mon Aug 24 09:59:20 UTC 2020

Hi Erik,

Thanks for the review!

On 8/22/20 12:21 AM, Erik Österlund wrote:
> Hi,
> Have you tried this with ZGC on AArch64? It has custom code for saving
> live registers in the load barrier slow path.
> I can't see any code changes there, so assuming this will just crash
> instead.
> The relevant code is in ZBarrierSetAssembler on aarch64.
> Maybe I missed something?

I didn't add ZGC option while running tests. I think I need to update 
push_fp() which is called by ZSaveLiveRegisters. But do we need to get 
size info (float/neon/sve) instead of saving the whole vector register? 
Currently, it just simply saves the whole NEON register.

And in ZBarrierSetAssembler::load_at(), before calling to runtime code, 
we call push_call_clobbered_registers_except(), which just saves 
floating point registers instead of the whole NEON vector registers. 
Similar behavior in x86 implementation. Is that correct (not saving 


More information about the aarch64-port-dev mailing list