comparison agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java @ 3908:7588156f5cf9

7051798: SA-JDI: NPE in Frame.addressOfStackSlot(Frame.java:244) Reviewed-by: kvn
author never
date Mon, 05 Sep 2011 17:09:05 -0700
parents 63997f575155
children f6f3bb0ee072
comparison
equal deleted inserted replaced
3907:7b5c767f229c 3908:7588156f5cf9
28 import java.net.*; 28 import java.net.*;
29 import java.util.*; 29 import java.util.*;
30 import java.util.regex.*; 30 import java.util.regex.*;
31 import sun.jvm.hotspot.code.*; 31 import sun.jvm.hotspot.code.*;
32 import sun.jvm.hotspot.c1.*; 32 import sun.jvm.hotspot.c1.*;
33 import sun.jvm.hotspot.code.*;
33 import sun.jvm.hotspot.debugger.*; 34 import sun.jvm.hotspot.debugger.*;
34 import sun.jvm.hotspot.interpreter.*; 35 import sun.jvm.hotspot.interpreter.*;
35 import sun.jvm.hotspot.memory.*; 36 import sun.jvm.hotspot.memory.*;
36 import sun.jvm.hotspot.oops.*; 37 import sun.jvm.hotspot.oops.*;
37 import sun.jvm.hotspot.types.*; 38 import sun.jvm.hotspot.types.*;
83 private ObjectSynchronizer synchronizer; 84 private ObjectSynchronizer synchronizer;
84 private JNIHandles handles; 85 private JNIHandles handles;
85 private Interpreter interpreter; 86 private Interpreter interpreter;
86 private StubRoutines stubRoutines; 87 private StubRoutines stubRoutines;
87 private Bytes bytes; 88 private Bytes bytes;
89
90 private RicochetBlob ricochetBlob;
91
88 /** Flags indicating whether we are attached to a core, C1, or C2 build */ 92 /** Flags indicating whether we are attached to a core, C1, or C2 build */
89 private boolean usingClientCompiler; 93 private boolean usingClientCompiler;
90 private boolean usingServerCompiler; 94 private boolean usingServerCompiler;
91 /** Flag indicating whether UseTLAB is turned on */ 95 /** Flag indicating whether UseTLAB is turned on */
92 private boolean useTLAB; 96 private boolean useTLAB;
616 stubRoutines = new StubRoutines(); 620 stubRoutines = new StubRoutines();
617 } 621 }
618 return stubRoutines; 622 return stubRoutines;
619 } 623 }
620 624
625 public RicochetBlob ricochetBlob() {
626 if (ricochetBlob == null) {
627 Type ricochetType = db.lookupType("SharedRuntime");
628 AddressField ricochetBlobAddress = ricochetType.getAddressField("_ricochet_blob");
629 Address addr = ricochetBlobAddress.getValue();
630 if (addr != null) {
631 ricochetBlob = new RicochetBlob(addr);
632 }
633 }
634 return ricochetBlob;
635 }
636
621 public VMRegImpl getVMRegImplInfo() { 637 public VMRegImpl getVMRegImplInfo() {
622 if (vmregImpl == null) { 638 if (vmregImpl == null) {
623 vmregImpl = new VMRegImpl(); 639 vmregImpl = new VMRegImpl();
624 } 640 }
625 return vmregImpl; 641 return vmregImpl;