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

[lworld] Further optimize acmp on inline types in C2

    XMLWordPrintable

    Details

      Description

      We currently always allocate when performing acmp on inline types and delegate to ValueBootstrapMethods::isSubstitutable() if the klasses are equal. We should try to check for substitutability at compile time or even emit optimized code for the substitutability check (for example, directly compare memory if there are no oop fields).

      With all the branching in Parse::do_acmp, we should also make sure that profile information is correctly used to set branch probabilities.

      ValueBootstrapMethods::isSubstitutable() is currently special cased in the JIT to avoid recursion. Should it use unsafe for pointer comparison?

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              thartmann Tobias Hartmann
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated: