C2 support for reference fields in value types

Tobias Hartmann tobias.hartmann at oracle.com
Mon May 15 07:34:05 UTC 2017


Hi Roland,

On 12.05.2017 14:13, Roland Westrelin wrote:
> sharedRuntime_x86_64.cpp, that comment:
> 
> 720       __ mov(r10, r13); // Cannot use r10 above because it's trashed by movptr()
> 
> is confusing. r10 is trashed but used anyway?

Yes, the comment means that we don't use r10 in the first get_vm_result (i.e., "above") because the movptr in the second get_vm_result trashes it. Therefore we use r13 and the move r13 to r10.

I'll re-phrase the comment.

> 1154     // TODO is 256 enough? Can we determine the required length?
> 
> Shouldn't you add an assert to verify we don't overflow the array?

Right, I'll add an assert.

> Other than, that looks good to me.

Thanks for having a look!

Best regards,
Tobias


More information about the valhalla-dev mailing list