RFR(S): 8225317: [lworld] Fix Class::asPrimaryType and isAssignableFrom C2 intrinsics after JDK-8223351
mandy.chung at oracle.com
Mon Jun 17 16:08:10 UTC 2019
FYI. I updated the JDK  to follow up this fix to use asPrimaryType
dropping the conditional check of inline class. Testing result is good.
Thanks for the fix.
On 6/13/19 6:00 AM, Tobias Hartmann wrote:
> please review the following fix:
> - The asPrimaryType and asIndirectType intrinsics should return 'this' if the receiver is not a
> value type mirror.
> - The isAssignableFrom intrinsic incorrectly returns true for
> MyValue1.class.isAssignableFrom(MyValue1.class.asIndirectType()). The problem is that the subtype
> check passes because MyValue and MyValue? have the same klass. We need to additionally check if the
> mirrors are equal if the supertype mirror is a "primary type".
> - I've also refactored the value mirror check into an own method (at some point we need to rename
> "value class" to "inline class" but that's out of the scope of this patch).
More information about the valhalla-dev