agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 7023639 Sdiff agent/src/share/classes/sun/jvm/hotspot/runtime

agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java

Print this page




  70   private List         vmResumedObservers   = new ArrayList();
  71   private List         vmSuspendedObservers = new ArrayList();
  72   private TypeDataBase db;
  73   private boolean      isBigEndian;
  74   /** This is only present if in a debugging system */
  75   private JVMDebugger  debugger;
  76   private long         stackBias;
  77   private long         logAddressSize;
  78   private Universe     universe;
  79   private ObjectHeap   heap;
  80   private SymbolTable  symbols;
  81   private StringTable  strings;
  82   private SystemDictionary dict;
  83   private Threads      threads;
  84   private ObjectSynchronizer synchronizer;
  85   private JNIHandles   handles;
  86   private Interpreter  interpreter;
  87   private StubRoutines stubRoutines;
  88   private Bytes        bytes;
  89 
  90   private RicochetBlob ricochetBlob;
  91 
  92   /** Flags indicating whether we are attached to a core, C1, or C2 build */
  93   private boolean      usingClientCompiler;
  94   private boolean      usingServerCompiler;
  95   /** Flag indicating whether UseTLAB is turned on */
  96   private boolean      useTLAB;
  97   /** alignment constants */
  98   private boolean      isLP64;
  99   private int          bytesPerLong;
 100   private int          objectAlignmentInBytes;
 101   private int          minObjAlignmentInBytes;
 102   private int          logMinObjAlignmentInBytes;
 103   private int          heapWordSize;
 104   private int          heapOopSize;
 105   private int          oopSize;
 106   /** This is only present in a non-core build */
 107   private CodeCache    codeCache;
 108   /** This is only present in a C1 build */
 109   private Runtime1     runtime1;
 110   /** These constants come from globalDefinitions.hpp */
 111   private int          invocationEntryBCI;


 611     if (handles == null) {
 612       handles = new JNIHandles();
 613     }
 614     return handles;
 615   }
 616 
 617   public Interpreter getInterpreter() {
 618     if (interpreter == null) {
 619       interpreter = new Interpreter();
 620     }
 621     return interpreter;
 622   }
 623 
 624   public StubRoutines getStubRoutines() {
 625     if (stubRoutines == null) {
 626       stubRoutines = new StubRoutines();
 627     }
 628     return stubRoutines;
 629   }
 630 
 631   public RicochetBlob ricochetBlob() {
 632     if (ricochetBlob == null) {
 633       Type ricochetType  = db.lookupType("SharedRuntime");
 634       AddressField ricochetBlobAddress = ricochetType.getAddressField("_ricochet_blob");
 635       Address addr = ricochetBlobAddress.getValue();
 636       if (addr != null) {
 637         ricochetBlob = new RicochetBlob(addr);
 638       }
 639     }
 640     return ricochetBlob;
 641   }
 642 
 643   public VMRegImpl getVMRegImplInfo() {
 644     if (vmregImpl == null) {
 645       vmregImpl = new VMRegImpl();
 646     }
 647     return vmregImpl;
 648   }
 649 
 650   public Bytes getBytes() {
 651     if (bytes == null) {
 652       bytes = new Bytes(debugger.getMachineDescription());
 653     }
 654     return bytes;
 655   }
 656 
 657   /** Returns true if this is a isBigEndian, false otherwise */
 658   public boolean isBigEndian() {
 659     return isBigEndian;
 660   }
 661 
 662   /** Returns true if this is a "core" build, false if either C1 or C2




  70   private List         vmResumedObservers   = new ArrayList();
  71   private List         vmSuspendedObservers = new ArrayList();
  72   private TypeDataBase db;
  73   private boolean      isBigEndian;
  74   /** This is only present if in a debugging system */
  75   private JVMDebugger  debugger;
  76   private long         stackBias;
  77   private long         logAddressSize;
  78   private Universe     universe;
  79   private ObjectHeap   heap;
  80   private SymbolTable  symbols;
  81   private StringTable  strings;
  82   private SystemDictionary dict;
  83   private Threads      threads;
  84   private ObjectSynchronizer synchronizer;
  85   private JNIHandles   handles;
  86   private Interpreter  interpreter;
  87   private StubRoutines stubRoutines;
  88   private Bytes        bytes;
  89 


  90   /** Flags indicating whether we are attached to a core, C1, or C2 build */
  91   private boolean      usingClientCompiler;
  92   private boolean      usingServerCompiler;
  93   /** Flag indicating whether UseTLAB is turned on */
  94   private boolean      useTLAB;
  95   /** alignment constants */
  96   private boolean      isLP64;
  97   private int          bytesPerLong;
  98   private int          objectAlignmentInBytes;
  99   private int          minObjAlignmentInBytes;
 100   private int          logMinObjAlignmentInBytes;
 101   private int          heapWordSize;
 102   private int          heapOopSize;
 103   private int          oopSize;
 104   /** This is only present in a non-core build */
 105   private CodeCache    codeCache;
 106   /** This is only present in a C1 build */
 107   private Runtime1     runtime1;
 108   /** These constants come from globalDefinitions.hpp */
 109   private int          invocationEntryBCI;


 609     if (handles == null) {
 610       handles = new JNIHandles();
 611     }
 612     return handles;
 613   }
 614 
 615   public Interpreter getInterpreter() {
 616     if (interpreter == null) {
 617       interpreter = new Interpreter();
 618     }
 619     return interpreter;
 620   }
 621 
 622   public StubRoutines getStubRoutines() {
 623     if (stubRoutines == null) {
 624       stubRoutines = new StubRoutines();
 625     }
 626     return stubRoutines;
 627   }
 628 












 629   public VMRegImpl getVMRegImplInfo() {
 630     if (vmregImpl == null) {
 631       vmregImpl = new VMRegImpl();
 632     }
 633     return vmregImpl;
 634   }
 635 
 636   public Bytes getBytes() {
 637     if (bytes == null) {
 638       bytes = new Bytes(debugger.getMachineDescription());
 639     }
 640     return bytes;
 641   }
 642 
 643   /** Returns true if this is a isBigEndian, false otherwise */
 644   public boolean isBigEndian() {
 645     return isBigEndian;
 646   }
 647 
 648   /** Returns true if this is a "core" build, false if either C1 or C2


agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File