Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8288981 C2: Fix issues with skeleton predicates
  3. JDK-8342043

Split Opaque4Node into OpaqueTemplateAssertionPredicateNode and OpaqueNotNullNode

XMLWordPrintable

    • b22

      For the complete fix for Assertion Predicates, we must be able to copy Template Assertion Predicates around efficiently. To do that, we eventually want to get rid of UCT for the fail path of Template Assertion Predicates and only create them with Halt nodes. Currently, we have both variants around which makes it somewhat difficult to match them.

      On top of that, Opaque4 nodes are shared between Template Assertion Predicates and not null checks for intrinsics. To differentiate between them, we need to walk the graph to check if OpaqueLoop* nodes can be found (if so, it is a Template Assertion Predicate). This is somewhat cumbersome and slow. To simplified pattern matching, it would be a lot easier if we split the Opaque4 nodes into OpaqueTemplateAssertionPredicateNode for Template Assertion Predicates and OpaqueNotNullNode for non null checks with intrinsics. This is proposed with this task.

            chagedorn Christian Hagedorn
            chagedorn Christian Hagedorn
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: