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

C2: Convert RegMask and IndexSet to use uintptr_t

    XMLWordPrintable

    Details

    • Subcomponent:
    • Resolved In Build:
      b24

      Description

      RegMask uses arrays of 32-bit ints to store its' values, which means most operations happen in more steps than they have to.

      I did a proof-of-concept by rewriting this using uint64_t, which shows a 5% reduction in instructions and branches from C2 compilations:

      https://github.com/openjdk/jdk/compare/master...cl4es:c2_opts

      To not penalize 32-bit builds/platforms that should probably be written using uintptr_t or similar. At least measure and verify that the uint64_t implementation doesn't measurably hurt 32-bit builds.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              redestad Claes Redestad
              Reporter:
              redestad Claes Redestad
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: