hotspot/src/share/vm/classfile/vmSymbols.cpp
changeset 218 a0e996680b05
parent 1 489c9b5090e2
child 670 ddf3e9583f2f
equal deleted inserted replaced
217:c646ef2f5d58 218:a0e996680b05
   316 inline bool match_F_SN(jshort flags) {
   316 inline bool match_F_SN(jshort flags) {
   317   const int req = JVM_ACC_STATIC | JVM_ACC_NATIVE;
   317   const int req = JVM_ACC_STATIC | JVM_ACC_NATIVE;
   318   const int neg = JVM_ACC_SYNCHRONIZED;
   318   const int neg = JVM_ACC_SYNCHRONIZED;
   319   return (flags & (req | neg)) == req;
   319   return (flags & (req | neg)) == req;
   320 }
   320 }
       
   321 inline bool match_F_RNY(jshort flags) {
       
   322   const int req = JVM_ACC_NATIVE | JVM_ACC_SYNCHRONIZED;
       
   323   const int neg = JVM_ACC_STATIC;
       
   324   return (flags & (req | neg)) == req;
       
   325 }
   321 
   326 
   322 // These are for forming case labels:
   327 // These are for forming case labels:
   323 #define ID3(x, y, z) (( jint)(z) +                                  \
   328 #define ID3(x, y, z) (( jint)(z) +                                  \
   324                       ((jint)(y) <<    vmSymbols::log2_SID_LIMIT) + \
   329                       ((jint)(y) <<    vmSymbols::log2_SID_LIMIT) + \
   325                       ((jint)(x) << (2*vmSymbols::log2_SID_LIMIT))  )
   330                       ((jint)(x) << (2*vmSymbols::log2_SID_LIMIT))  )
   357   const char* fname = "";
   362   const char* fname = "";
   358   switch (flags_for(id)) {
   363   switch (flags_for(id)) {
   359   case F_RN: fname = "native ";        break;
   364   case F_RN: fname = "native ";        break;
   360   case F_SN: fname = "native static "; break;
   365   case F_SN: fname = "native static "; break;
   361   case F_S:  fname = "static ";        break;
   366   case F_S:  fname = "static ";        break;
       
   367   case F_RNY:fname = "native synchronized "; break;
   362   }
   368   }
   363   const char* kptr = strrchr(kname, '/');
   369   const char* kptr = strrchr(kname, '/');
   364   if (kptr != NULL)  kname = kptr + 1;
   370   if (kptr != NULL)  kname = kptr + 1;
   365   int len = jio_snprintf(buf, buflen, "%s: %s%s.%s%s",
   371   int len = jio_snprintf(buf, buflen, "%s: %s%s.%s%s",
   366                          str, fname, kname, mname, sname);
   372                          str, fname, kname, mname, sname);
   483     xtty->end_elem("");
   489     xtty->end_elem("");
   484   }
   490   }
   485   if (PrintMiscellaneous && (WizardMode || Verbose)) {
   491   if (PrintMiscellaneous && (WizardMode || Verbose)) {
   486     tty->print_cr("*** misidentified method; %s(%d) should be %s(%d):",
   492     tty->print_cr("*** misidentified method; %s(%d) should be %s(%d):",
   487                   declared_name, declared_id, actual_name, actual_id);
   493                   declared_name, declared_id, actual_name, actual_id);
   488     m->print_short_name(tty);
   494     mh()->print_short_name(tty);
   489     tty->cr();
   495     tty->cr();
   490   }
   496   }
   491 }
   497 }
   492 #endif //PRODUCT
   498 #endif //PRODUCT