RFR: 8273317: crash in cmovP_cmpP_zero_zeroNode::bottom_type() [v4]

SUN Guoyun duke at openjdk.java.net
Tue Oct 19 08:08:11 UTC 2021


> Hi all,
> 
> When I implement a new instruct in adfile for match CMoveP with Cmp node,like this:
> 
> match(Set dst (CMoveP (Binary cop (CmpP op1 zero)) (Binary dst zero)));
> 
> this means right child of CmpP is immediate zero and right child of CmovP also is immediate zero, then an exception will occur:
> 
> <pre><code class="shell">
> #
> # A fatal error has been detected by the Java Runtime Environment:
> #
> # SIGSEGV (0xb) at pc=0x000000fff410fcc4, pid=11130, tid=11146
> #
> # JRE version: OpenJDK Runtime Environment (17.0) (build 17-internal+0-jenkins-slave-20210821140615-jdk-ls-a526852e137)
> # Java VM: OpenJDK 64-Bit Server VM (17-internal+0-jenkins-slave-20210821140615-jdk-ls-a526852e137, compiled mode, compressed oops, compressed class ptrs, g1 gc, linux-loongarch64)
> # Problematic frame:
> # V [libjvm.so+0x21fcc4] cmovP_cmpP_zero_zeroNode::bottom_type() const+0x44
> #
> # No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
> #
> # If you would like to submit a bug report, please visit:
> # https://bugreport.java.com/bugreport/crash.jsp
> #
> </code></pre>
> 
> In this case, cmovP_ cmpP_ zero_ zeroNode only has three input nodes, so an exception is triggered. This is a patch to fix this problem. Please help review it 
> 
> Thanks,
> Sun Guoyun

SUN Guoyun has updated the pull request incrementally with one additional commit since the last revision:

  8273317: crash in cmovP_cmpP_zero_zeroNode::bottom_type()

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/5369/files
  - new: https://git.openjdk.java.net/jdk/pull/5369/files/2df965e5..36928daa

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=5369&range=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=5369&range=02-03

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/5369.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/5369/head:pull/5369

PR: https://git.openjdk.java.net/jdk/pull/5369


More information about the hotspot-compiler-dev mailing list