hotspot/agent/src/share/classes/sun/jvm/hotspot/code/CodeCache.java
changeset 13391 30245956af37
parent 10517 f92c9ff3a15f
child 13963 e5b53c306fb5
equal deleted inserted replaced
13309:50c604cb0d5f 13391:30245956af37
    55     virtualConstructor = new VirtualConstructor(db);
    55     virtualConstructor = new VirtualConstructor(db);
    56     // Add mappings for all possible CodeBlob subclasses
    56     // Add mappings for all possible CodeBlob subclasses
    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);
       
    61     virtualConstructor.addMapping("AdapterBlob", AdapterBlob.class);
    60     virtualConstructor.addMapping("AdapterBlob", AdapterBlob.class);
    62     virtualConstructor.addMapping("MethodHandlesAdapterBlob", MethodHandlesAdapterBlob.class);
    61     virtualConstructor.addMapping("MethodHandlesAdapterBlob", MethodHandlesAdapterBlob.class);
    63     virtualConstructor.addMapping("SafepointBlob", SafepointBlob.class);
    62     virtualConstructor.addMapping("SafepointBlob", SafepointBlob.class);
    64     virtualConstructor.addMapping("DeoptimizationBlob", DeoptimizationBlob.class);
    63     virtualConstructor.addMapping("DeoptimizationBlob", DeoptimizationBlob.class);
    65     if (VM.getVM().isServerCompiler()) {
    64     if (VM.getVM().isServerCompiler()) {
   124       // The HeapBlock that contains this blob is outside of the blob
   123       // The HeapBlock that contains this blob is outside of the blob
   125       // but it shouldn't be an error to find a blob based on the
   124       // but it shouldn't be an error to find a blob based on the
   126       // pointer to the HeapBlock.
   125       // pointer to the HeapBlock.
   127       Assert.that(result.blobContains(start) || result.blobContains(start.addOffsetTo(8)),
   126       Assert.that(result.blobContains(start) || result.blobContains(start.addOffsetTo(8)),
   128                                                                     "found wrong CodeBlob");
   127                                                                     "found wrong CodeBlob");
   129     }
       
   130     if (result.isRicochetBlob()) {
       
   131       // This should probably be done for other SingletonBlobs
       
   132       return VM.getVM().ricochetBlob();
       
   133     }
   128     }
   134     return result;
   129     return result;
   135   }
   130   }
   136 
   131 
   137   public NMethod findNMethod(Address start) {
   132   public NMethod findNMethod(Address start) {