< prev index next >

src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/oops/Method.java

Print this page
*** 66,10 ***
--- 66,11 ---
      fromCompiledCodeEntryPoint = type.getAddressField("_from_compiled_code_entry_point");
      interpreterEntry           = type.getAddressField("_from_interpreted_entry");
      */
  
      objectInitializerName = null;
+     valueFactoryName = null;
      classInitializerName = null;
    }
  
    public Method(Address addr) {
      super(addr);

*** 95,17 ***
--- 96,24 ---
  
  
    // constant method names - <init>, <clinit>
    // Initialized lazily to avoid initialization ordering dependencies between ArrayKlass and String
    private static String objectInitializerName;
+   private static String valueFactoryName;
    private static String classInitializerName;
    private static String objectInitializerName() {
      if (objectInitializerName == null) {
        objectInitializerName = "<init>";
      }
      return objectInitializerName;
    }
+   private static String valueFactoryName() {
+     if (valueFactoryName == null) {
+       valueFactoryName = "<vnew>";
+     }
+     return classInitializerName;
+   }
    private static String classInitializerName() {
      if (classInitializerName == null) {
        classInitializerName = "<clinit>";
      }
      return classInitializerName;

*** 251,11 ***
    public boolean isAbstract()       { return getAccessFlagsObj().isAbstract();                         }
    public boolean isStrict()         { return getAccessFlagsObj().isStrict();                           }
    public boolean isSynthetic()      { return getAccessFlagsObj().isSynthetic();                        }
  
    public boolean isConstructor() {
!      return (!isStatic()) && getName().equals(objectInitializerName());
    }
  
    public boolean isStaticInitializer() {
       return isStatic() && getName().equals(classInitializerName());
    }
--- 259,11 ---
    public boolean isAbstract()       { return getAccessFlagsObj().isAbstract();                         }
    public boolean isStrict()         { return getAccessFlagsObj().isStrict();                           }
    public boolean isSynthetic()      { return getAccessFlagsObj().isSynthetic();                        }
  
    public boolean isConstructor() {
!      return (!isStatic()) && (getName().equals(objectInitializerName()) || getName().equals(valueFactoryName()));
    }
  
    public boolean isStaticInitializer() {
       return isStatic() && getName().equals(classInitializerName());
    }
< prev index next >