RFR 8223345 [lworld] Implement ValueTypeReturnedAsFields for C1

Ioi Lam ioi.lam at oracle.com
Sat May 4 00:13:10 UTC 2019


The implementation is pretty straight-forward as most of the work of 
packing/unpacking is done inside runtime functions, the same as the 

I refactored MacroAssembler::store_value_type_fields_to_buf so that it 
can be reused between the interpreter and C1.

One problem with the current way of using the runtime functions is that 
it's neither fast, nor small :-(

+ For better performance, it might be better to do the packing/unpacking 
   I'll leave that for future optimization.

+ On the other hand, if we want smaller code, I think the 
inline-allocation code can
   be moved into ValueKlass::pack_handler(). I might do that as a 
separate RFE.

I've added FIXME comments in the code for the above.

- Ioi

More information about the valhalla-dev mailing list