hotspot/agent/src/share/classes/sun/jvm/hotspot/compiler/OopMapStream.java
changeset 30590 14f7f48c1377
parent 5547 f4b087cbb361
equal deleted inserted replaced
30589:4722e25bfd6d 30590:14f7f48c1377
    26 
    26 
    27 import sun.jvm.hotspot.code.*;
    27 import sun.jvm.hotspot.code.*;
    28 
    28 
    29 public class OopMapStream {
    29 public class OopMapStream {
    30   private CompressedReadStream stream;
    30   private CompressedReadStream stream;
    31   private OopMap oopMap;
    31   private ImmutableOopMap oopMap;
    32   private int mask;
    32   private int mask;
    33   private int size;
    33   private int size;
    34   private int position;
    34   private int position;
    35   private OopMapValue omv;
    35   private OopMapValue omv;
    36   private boolean omvValid;
    36   private boolean omvValid;
    37 
    37 
    38   public OopMapStream(OopMap oopMap) {
    38   public OopMapStream(ImmutableOopMap oopMap) {
    39     this(oopMap, (OopMapValue.OopTypes[]) null);
    39     this(oopMap, (OopMapValue.OopTypes[]) null);
    40   }
    40   }
    41 
    41 
    42   public OopMapStream(OopMap oopMap, OopMapValue.OopTypes type) {
    42   public OopMapStream(ImmutableOopMap oopMap, OopMapValue.OopTypes type) {
    43     this(oopMap, (OopMapValue.OopTypes[]) null);
    43     this(oopMap, (OopMapValue.OopTypes[]) null);
    44     mask = type.getValue();
    44     mask = type.getValue();
    45   }
    45   }
    46 
    46 
    47   public OopMapStream(OopMap oopMap, OopMapValue.OopTypes[] types) {
    47   public OopMapStream(ImmutableOopMap oopMap, OopMapValue.OopTypes[] types) {
    48     if (oopMap.getOMVData() == null) {
    48     stream = new CompressedReadStream(oopMap.getData());
    49       stream = new CompressedReadStream(oopMap.getWriteStream().getBuffer());
       
    50     } else {
       
    51       stream = new CompressedReadStream(oopMap.getOMVData());
       
    52     }
       
    53     mask = computeMask(types);
    49     mask = computeMask(types);
    54     size = (int) oopMap.getOMVCount();
    50     size = (int) oopMap.getCount();
    55     position = 0;
    51     position = 0;
    56     omv = new OopMapValue();
    52     omv = new OopMapValue();
    57     omvValid = false;
    53     omvValid = false;
    58   }
    54   }
    59 
    55