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

C2: Malformed control flow after intrinsic bailout

XMLWordPrintable

    • Cause Known

      On aarch64
      java -XX:CompileCommand=PrintCompilation,"jdk.incubator.vector.*::intoArray*" -XX:TypeProfileLevel=222 -Xbatch Test.java

      =>

      20889 2128 b 4 jdk.incubator.vector.LongMaxVector::intoArray0 (13 bytes) COMPILE SKIPPED: malformed control flow (retry at different tier)


      Found when working on JDK-8350864:
      A IfFalse has 2 control successor: an If and a CallStaticJava.
      On top of that, this If has a IfFalse but not IfTrue.

      Same with Test_x64 for x64... The difference is the species of the vector: SPECIES_MAX vs SPECIES_128. It seems it has to be of length 2. On x64, I get:
      43999 2119 b 4 jdk.incubator.vector.Long128Vector::intoArray0 (13 bytes) COMPILE SKIPPED: malformed control flow (retry at different tier)

        1. Test_x64.java
          1 kB
          Marc Chevalier
        2. Test.java
          1 kB
          Marc Chevalier

            mchevalier Marc Chevalier
            mchevalier Marc Chevalier
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: