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

Resource allocated BitMaps are often cleared unnecessarily

    Details

      Description

      This bug relates to JDK-8155638 where bitmaps where cleared twice.

      There are places where we don't clear the bitmaps twice, but the initial clearing is unnecessary, since the following code will set all bits.

      See, for example:
      http://cr.openjdk.java.net/~stefank/8155638/webrev.01/src/share/vm/c1/c1_IR.cpp.udiff.html

      where _requires_phi_function is cleared even when all bits are going to be set to 1.

      and:
      http://cr.openjdk.java.net/~stefank/8155638/webrev.01/src/share/vm/compiler/methodLiveness.cpp.frames.html

      in MethodLiveness::BasicBlock::get_liveness_at

      1010 ResourceBitMap g(_gen.size()); g.set_from(_gen);
      1011 ResourceBitMap k(_kill.size()); k.set_from(_kill);

      where we first clear the bitmap, then copy all bits with set_from. Before G1 was introduced, the unnecessary clearing was not done.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                rbackman Rickard Backman
                Reporter:
                stefank Stefan Karlsson
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated: