RFR: 8331404: IGV: Show line numbers for callees in properties
Christian Hagedorn
chagedorn at openjdk.org
Fri May 3 05:53:01 UTC 2024
On Tue, 30 Apr 2024 15:38:20 GMT, Christian Hagedorn <chagedorn at openjdk.org> wrote:
> IGV shows the `bci` for a node in the callee, followed by the bci in the caller method and so on until we reach the root method. For the `line` property, we currently only show the line number found in the root method (`first()` is the root method being compiled and `second()` and `third()` are inlined):
>
> Example program:
> ![image](https://github.com/openjdk/jdk/assets/17833009/579fe9eb-4bd8-42d8-9d03-875f25bd97ae)
>
> Properties of the store to `fFld`:
> ![image](https://github.com/openjdk/jdk/assets/17833009/3763cccf-c1ba-4d7f-a986-eae8bf0654b0)
>
> One could read the line number from the `jvms` property above. But you would need to expand that property with the button on the right side which opens a window. But then you cannot click anything else anymore in IGV until you close the window again.
>
> A simpler and easier to read solution is to add the line number information to match the bci numbers (they are printed in callee->root method order which I think is okay - especially if there are a lot of inlinees, it could be easier to have the really interesting numbers at the start on the left side). This would look something like that:
> ![image](https://github.com/openjdk/jdk/assets/17833009/fcab3af6-69ac-43ae-89be-19fc4476d12f)
>
> If there is no line number information for a bci, I simply emit a `_`.
>
> Testing:
> - Manual testing in IGV
> - Sanity testing by running `java -Xcomp -XX:+PrintIdealGraph -XX:PrintIdealGraphLevel=4 -XX:PrintIdealGraphFile=graph.xml HelloWorld.java`.
>
> Thanks,
> Christian
Thanks Tobias for your review!
-------------
PR Comment: https://git.openjdk.org/jdk/pull/19025#issuecomment-2092348356
More information about the hotspot-compiler-dev
mailing list