RFR(S): 8139046: Compiler Control: IVGPrintLevel directive should set PrintIdealGraph
Volker Simonis
volker.simonis at gmail.com
Thu Jun 4 17:13:09 UTC 2020
Hi Xin,
Thanks for addressing this issue. It looks like a nice cleanup. Please find
my further comments inline:
On Tue, Jun 2, 2020 at 10:57 PM Liu, Xin <xxinliu at amazon.com> wrote:
> Hi,
>
> Could you review this webrev? It fixes a minor problem when users only use
> IGVPrintLevel in Compiler Directives.
> Jbs: https://bugs.openjdk.java.net/browse/JDK-8139046
> Webrev: http://cr.openjdk.java.net/~xliu/8139046/00/webrev/
>
> I move "bool should_print(int level)" from idealGraphPrinter to Compile
> because the later has the information.
> In this way, Compile can allocate _printer on demand. If
> Compile::should_print(level) return true, it guarantees that
> Compile::printer() is not NULL.
> If users pass in CompileCommand="option,Hello::add,intx,IGVPrintLevel,3",
> printer() will only turn on for that compiler thread.
>
>
- Why do you need the extra check for "method() != NULL":
619 if (should_print(1) && method() != NULL) {
4584 if (should_print(level) && method() != NULL) {
in "Compile::{begin,end_method}". This check wasn't there before. Does it
fix an issue?
- I don't see why you need the additional "need" parameter in
"IdealGraphPrinter::printer()". The function only gets called with "need ==
true" anyway, so I think you can remove it.
- Why did you make
453 IdealGraphPrinter* printer() { return _printer; }
a "const" function?
453 IdealGraphPrinter* printer() const { return _printer; }
I don't think it is required?
- As an additional cleanup, you can change all "should_print(1)" calls to
"should_print()" because "1" is the default parameter anyway.
Besides that, your change looks good.
Thank you and best regards,
Volker
Ran hotspot:tier1 using fastdebug build. Only gtest/GTestWrapper.java
> failed.
> That's another issue. Currently, Openjdk can't execute any gtest because
> of a linkage error.
> Error occurred during initialization of VM
> Unable to load native library:
> /backup/jdk/build/linux-x86_64-server-fastdebug/images/jdk/lib/libjava.so:
> symbol JVM_GetPermittedSubclasses version SUNWprivate_1.1 not defined in
> file libjvm.so with link time reference
>
> Thanks,
> --lx
>
>
>
>
More information about the hotspot-compiler-dev
mailing list