RFR (S) 8131782: C1 Class.cast optimization breaks when Class is loaded from static final
aleksey.shipilev at oracle.com
Tue Jul 21 10:05:38 UTC 2015
On 21.07.2015 00:14, John Rose wrote:
> On Jul 20, 2015, at 6:52 AM, Aleksey Shipilev <aleksey.shipilev at oracle.com> wrote:
>> On the road from Unsafe to VarHandles lies a small deficiency in C1
>> Class.cast/isInstance optimization: the canonicalizer folds constant
>> class perfectly when it is coming from "inlined" constant, but not from
>> static final, because the constant "shapes" are different:
> I suggest a deeper fix, to the factory that produces the oddly formatted constant.
> That may help with other, similar constant folding problems.
All right, let's do that!
I respinned it through JRPT and my targeted benchmarks, and it performs
the same as previous patch.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 819 bytes
Desc: OpenPGP digital signature
More information about the hotspot-compiler-dev