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

C2 may incorrectly change control of type nodes

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: P3 P3
    • 10
    • hs16, 9, 10
    • hotspot
    • generic
    • generic

      In very rare cases optimizations in IfNode::Ideal() and Loopopts may incorrectly change control of a type node
      because TypeNode::depends_only_on_test() returns true.

      The next code

      if (a != b)
        if (a != null && b != null)
          if (a != b)
            x = ((CastClass)a).f;

      is transformed into

      if (a != b)
        x = ((CastClass)a).f;

            kvn Vladimir Kozlov
            kvn Vladimir Kozlov
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: