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

C1: Missing side effects of dynamic class loading during constant linkage

    XMLWordPrintable

Details

    • b22

    Description

      (JDK-8282194 covers the special case of dynamic constants.)

      C1 handles unresolved constants by performing constant resolution at runtime and then putting the constant value into the generated code by patching it. But it treats the not-yet-resolved value as a pure constant without any side effects.

      It's not the case for constants which trigger class loading using custom class loaders. (All non-String constants do that.)

      There are no guarantees that there are no side effects during class loading, so C1 has to be conservative.

      Attachments

        Issue Links

          Activity

            People

              vlivanov Vladimir Ivanov
              vlivanov Vladimir Ivanov
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: