comparison agent/src/share/classes/sun/jvm/hotspot/code/CodeCache.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 a80577f854f9
children 1d7922586cf6
comparison
equal deleted inserted replaced
3907:7b5c767f229c 3908:7588156f5cf9
57 virtualConstructor.addMapping("BufferBlob", BufferBlob.class); 57 virtualConstructor.addMapping("BufferBlob", BufferBlob.class);
58 virtualConstructor.addMapping("nmethod", NMethod.class); 58 virtualConstructor.addMapping("nmethod", NMethod.class);
59 virtualConstructor.addMapping("RuntimeStub", RuntimeStub.class); 59 virtualConstructor.addMapping("RuntimeStub", RuntimeStub.class);
60 virtualConstructor.addMapping("RicochetBlob", RicochetBlob.class); 60 virtualConstructor.addMapping("RicochetBlob", RicochetBlob.class);
61 virtualConstructor.addMapping("AdapterBlob", AdapterBlob.class); 61 virtualConstructor.addMapping("AdapterBlob", AdapterBlob.class);
62 virtualConstructor.addMapping("MethodHandlesAdapterBlob", MethodHandlesAdapterBlob.class);
62 virtualConstructor.addMapping("SafepointBlob", SafepointBlob.class); 63 virtualConstructor.addMapping("SafepointBlob", SafepointBlob.class);
63 virtualConstructor.addMapping("DeoptimizationBlob", DeoptimizationBlob.class); 64 virtualConstructor.addMapping("DeoptimizationBlob", DeoptimizationBlob.class);
64 if (VM.getVM().isServerCompiler()) { 65 if (VM.getVM().isServerCompiler()) {
65 virtualConstructor.addMapping("ExceptionBlob", ExceptionBlob.class); 66 virtualConstructor.addMapping("ExceptionBlob", ExceptionBlob.class);
66 virtualConstructor.addMapping("UncommonTrapBlob", UncommonTrapBlob.class); 67 virtualConstructor.addMapping("UncommonTrapBlob", UncommonTrapBlob.class);
123 // The HeapBlock that contains this blob is outside of the blob 124 // The HeapBlock that contains this blob is outside of the blob
124 // but it shouldn't be an error to find a blob based on the 125 // but it shouldn't be an error to find a blob based on the
125 // pointer to the HeapBlock. 126 // pointer to the HeapBlock.
126 Assert.that(result.blobContains(start) || result.blobContains(start.addOffsetTo(8)), 127 Assert.that(result.blobContains(start) || result.blobContains(start.addOffsetTo(8)),
127 "found wrong CodeBlob"); 128 "found wrong CodeBlob");
129 }
130 if (result.isRicochetBlob()) {
131 // This should probably be done for other SingletonBlobs
132 return VM.getVM().ricochetBlob();
128 } 133 }
129 return result; 134 return result;
130 } 135 }
131 136
132 public NMethod findNMethod(Address start) { 137 public NMethod findNMethod(Address start) {