RFR(S): fix System.arraycopy() C2 intrinsics with arrays of value types

Tobias Hartmann tobias.hartmann at oracle.com
Mon Dec 11 10:53:32 UTC 2017


Hi Roland,

On 08.12.2017 17:13, Roland Westrelin wrote:
> and the diff on top of the previous webrev:
> 
> http://cr.openjdk.java.net/~roland/valhalla/arraycopy/webrev.01/

Should be:
http://cr.openjdk.java.net/~roland/valhalla/arraycopy/webrev.00-01/

Looks good to me. Here are some minor suggestions:

callGenerator.cpp
- line 188: You can use vtptr instead of getting the type of ret again
- line 282: Please factor gvn.type(ret)->is_valuetypeptr() out because it's also used in the if in line 279
- line 442: You can use 't'

parse1.cpp
- line 131: you can use vtptr_type()->value_klass()
- line 883: Please factor gvn.type(parm)->is_valuetypeptr() out because it's also used in the if in line 879

valuetypenode.cpp
- line 506: Maybe just do a "return make_default(..." here instead of wrapping the existing code in a huge else branch

You don't need to send another webrev. Push it! :)

Thanks,
Tobias


More information about the valhalla-dev mailing list