Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8317865

C2 compiler crash with SIGFPE (0x8)

XMLWordPrintable

    • x86_64
    • linux_ubuntu

      ADDITIONAL SYSTEM INFORMATION :
      # JRE version: OpenJDK Runtime Environment (8.0_392) (build 1.8.0_392-internal-fastdebug--b00)
      # Java VM: OpenJDK 64-Bit Server VM (25.392-b00-fastdebug mixed mode linux-amd64 compressed oops)

      A DESCRIPTION OF THE PROBLEM :
      I ran a regression test on JDK8u392 and found that the JVM crashed without any options.

      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # SIGFPE (0x8) at pc=0x00007fc494cad1e1, pid=58836, tid=0x00007fc4ab2f0700
      #
      # JRE version: OpenJDK Runtime Environment (8.0_392) (build 1.8.0_392-internal-fastdebug--b00)
      # Java VM: OpenJDK 64-Bit Server VM (25.392-b00-fastdebug mixed mode linux-amd64 compressed oops)
      # Problematic frame:
      # J 22 C2 compiler.c2.loopopts.TestSplitThruPhiDivMod.testMod()I (118 bytes) @ 0x00007fc494cad1e1 [0x00007fc494cacf60+0x281]
      #
      # Failed to write core dump. 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:
      # http://bugreport.java.com/bugreport/crash.jsp
      #

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      java compiler.c2.loopopts.TestSplitThruPhiDivMod

      ACTUAL -
      implicit exception happened at 0x00007fc494cad1e1
      Compiled method (c2) 1130 22 4 compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod (118 bytes)
       total in heap [0x00007fc494cace10,0x00007fc494cad580] = 1904
       relocation [0x00007fc494cacf40,0x00007fc494cacf50] = 16
       main code [0x00007fc494cacf60,0x00007fc494cad320] = 960
       stub code [0x00007fc494cad320,0x00007fc494cad338] = 24
       oops [0x00007fc494cad338,0x00007fc494cad340] = 8
       metadata [0x00007fc494cad340,0x00007fc494cad348] = 8
       scopes data [0x00007fc494cad348,0x00007fc494cad398] = 80
       scopes pcs [0x00007fc494cad398,0x00007fc494cad578] = 480
       dependencies [0x00007fc494cad578,0x00007fc494cad580] = 8
      0 iconst_2
      1 istore_1
      2 iconst_5
      3 istore_2
      4 iload_2
      5 bipush 25
      7 if_icmpge 116
        0 bci: 7 BranchData taken(1582) displacement(264)
                                          not taken(32041)
      10 bipush 50
      12 istore_3
      13 iload_3
      14 iconst_1
      15 if_icmple 110
        32 bci: 15 BranchData taken(32016) displacement(208)
                                          not taken(800744)
      18 fast_aload_0
      19 bipush 20
      21 iload_3
      22 irem
      23 fast_iputfield 2 <compiler/c2/loopopts/TestSplitThruPhiDivMod.x/I>
      26 iload_1
      27 iload_2
      28 idiv
      29 istore_1
      30 iconst_3
      31 istore #4
      33 fast_iload #4
      35 iconst_1
      36 if_icmple 104
        64 bci: 36 BranchData taken(800744) displacement(152)
                                          not taken(1601488)
      39 iload_2
      40 iconst_4
      41 irem
      42 bipush 22
      44 iadd
      45 fast_linearswitch 98 1 22:64
        96 bci: 45 MultiBranchData default_count(72961) displacement(96)
                                          count(24632) displacement(48)
      64 iload_3
      65 bipush 10
      67 irem
      68 fast_linearswitch 98 1 83:88
        144 bci: 68 MultiBranchData default_count(24632) displacement(48)
                                          count(0) displacement(48)
      88 aload_0
      89 dup
      90 getfield 2 <compiler/c2/loopopts/TestSplitThruPhiDivMod.x/I>
      93 iconst_5
      94 iadd
      95 putfield 2 <compiler/c2/loopopts/TestSplitThruPhiDivMod.x/I>
      98 iinc #4 -1
      101 goto 33
        192 bci: 101 JumpData taken(1601488) displacement(-128)
      104 iinc #3 -2
      107 goto 13
        216 bci: 107 JumpData taken(800744) displacement(-184)
      110 iinc #2 1
      113 goto 4
        240 bci: 113 JumpData taken(32016) displacement(-240)
      116 iload_1
      117 ireturn
      Could not load hsdis-amd64.so; library not loadable; PrintAssembly is disabled
      pc-bytecode offsets:
      PcDesc(pc=0x7fc494cacf5f offset=ffffffff bits=0):
      PcDesc(pc=0x7fc494cacf8c offset=2c bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @-1
      PcDesc(pc=0x7fc494cacfb2 offset=52 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @23
      PcDesc(pc=0x7fc494cad14a offset=1ea bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @28
      PcDesc(pc=0x7fc494cad14f offset=1ef bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @110
      PcDesc(pc=0x7fc494cad158 offset=1f8 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @7
      PcDesc(pc=0x7fc494cad15f offset=1ff bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @41
      PcDesc(pc=0x7fc494cad162 offset=202 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @10
      PcDesc(pc=0x7fc494cad173 offset=213 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @28
      PcDesc(pc=0x7fc494cad18b offset=22b bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @23
      PcDesc(pc=0x7fc494cad19e offset=23e bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @95
      PcDesc(pc=0x7fc494cad1c5 offset=265 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @28
      PcDesc(pc=0x7fc494cad1cc offset=26c bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @104
      PcDesc(pc=0x7fc494cad1e4 offset=284 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @22
      PcDesc(pc=0x7fc494cad1ee offset=28e bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @18
      PcDesc(pc=0x7fc494cad1f1 offset=291 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @23
      PcDesc(pc=0x7fc494cad205 offset=2a5 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @67
      PcDesc(pc=0x7fc494cad223 offset=2c3 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @18
      PcDesc(pc=0x7fc494cad245 offset=2e5 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @22
      PcDesc(pc=0x7fc494cad248 offset=2e8 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @23
      PcDesc(pc=0x7fc494cad24f offset=2ef bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @67
      PcDesc(pc=0x7fc494cad280 offset=320 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @18
      PcDesc(pc=0x7fc494cad283 offset=323 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @23
      PcDesc(pc=0x7fc494cad294 offset=334 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @67
      PcDesc(pc=0x7fc494cad2b3 offset=353 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @95
      PcDesc(pc=0x7fc494cad2c7 offset=367 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @28
      PcDesc(pc=0x7fc494cad2ce offset=36e bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @104
      PcDesc(pc=0x7fc494cad2d8 offset=378 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @15
      PcDesc(pc=0x7fc494cad2f0 offset=390 bits=0):
         compiler.c2.loopopts.TestSplitThruPhiDivMod::testMod @22
      PcDesc(pc=0x7fc494cad339 offset=3d9 bits=0):
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # SIGFPE (0x8) at pc=0x00007fc494cad1e1, pid=58836, tid=0x00007fc4ab2f0700
      #
      # JRE version: OpenJDK Runtime Environment (8.0_392) (build 1.8.0_392-internal-fastdebug--b00)
      # Java VM: OpenJDK 64-Bit Server VM (25.392-b00-fastdebug mixed mode linux-amd64 compressed oops)
      # Problematic frame:
      # J 22 C2 compiler.c2.loopopts.TestSplitThruPhiDivMod.testMod()I (118 bytes) @ 0x00007fc494cad1e1 [0x00007fc494cacf60+0x281]
      #
      # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
      #
      # An error report file with more information is saved as:
      # /home//repository//toreport/TestSplitThruPhiDivMod_09_24_15_11_55/hs_err_pid58836.log
      #
      # If you would like to submit a bug report, please visit:
      # http://bugreport.java.com/bugreport/crash.jsp
      #

      ---------- BEGIN SOURCE ----------
      The source code fild and hs_err file are available at the following URL:
      https://drive.google.com/drive/folders/1WJkW89U-YdoaqsKqK6xaYc3N6iS12rw1?usp=drive_link
      ---------- END SOURCE ----------

      FREQUENCY : always


            thartmann Tobias Hartmann
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: