[lworld] RFR: 8262748: [lworld] print out reason information for Deoptimize instruction
Tobias Hartmann
thartmann at openjdk.java.net
Mon Mar 1 13:46:05 UTC 2021
On Mon, 1 Mar 2021 11:57:08 GMT, Yi Yang <github.com+5010047+kelthuzadx at openjdk.org> wrote:
> The instruction printer only tells that there is a deoptimization instruction, but not indicates they are deoptimized due to which class is not loaded.
>
> Java
> ----
> static void test1(Object[] arr) {
> TestValue v = TestValue.default;
> arr[0] = v;
> }
> HIR(OLD)
> ---
> . 0 2 a2 deoptimize
> . 5 1 i3 0
> . 7 0 a4 a1[i3] := a2 (L) [rc] What's the type of a2?
> . 8 0 v5 return
> HIR(NEW)
> ---
> . 0 2 a2 deoptimize [unloaded=Test$TestValue]
> . 5 1 i3 0
> . 7 0 a4 a1[i3] := a2 (L) [rc]
> . 8 0 v5 return
>
> In addition, I restore some comments on LIRGenerator::do_Deoptimize, I'm not sure whether these comments were removed deliberately or accidentally, so please let me know if I did wrong.
>
> Thanks!
> Yang
Looks good to me.
-------------
Marked as reviewed by thartmann (Committer).
PR: https://git.openjdk.java.net/valhalla/pull/356
More information about the valhalla-dev
mailing list