hotspot/src/share/vm/oops/method.cpp
changeset 35492 c8c0273e6b91
parent 35463 b32e362563bb
child 35499 b79827ea1b9f
equal deleted inserted replaced
35491:663c609dfeee 35492:c8c0273e6b91
    75   int size = Method::size(access_flags.is_native());
    75   int size = Method::size(access_flags.is_native());
    76   return new (loader_data, size, false, MetaspaceObj::MethodType, THREAD) Method(cm, access_flags);
    76   return new (loader_data, size, false, MetaspaceObj::MethodType, THREAD) Method(cm, access_flags);
    77 }
    77 }
    78 
    78 
    79 Method::Method(ConstMethod* xconst, AccessFlags access_flags) {
    79 Method::Method(ConstMethod* xconst, AccessFlags access_flags) {
    80   No_Safepoint_Verifier no_safepoint;
    80   NoSafepointVerifier no_safepoint;
    81   set_constMethod(xconst);
    81   set_constMethod(xconst);
    82   set_access_flags(access_flags);
    82   set_access_flags(access_flags);
    83 #ifdef CC_INTERP
    83 #ifdef CC_INTERP
    84   set_result_index(T_VOID);
    84   set_result_index(T_VOID);
    85 #endif
    85 #endif
   996 // It returns the compiled code entry point, after asserting not null.
   996 // It returns the compiled code entry point, after asserting not null.
   997 // This function is called after potential safepoints so that nmethod
   997 // This function is called after potential safepoints so that nmethod
   998 // or adapter that it points to is still live and valid.
   998 // or adapter that it points to is still live and valid.
   999 // This function must not hit a safepoint!
   999 // This function must not hit a safepoint!
  1000 address Method::verified_code_entry() {
  1000 address Method::verified_code_entry() {
  1001   debug_only(No_Safepoint_Verifier nsv;)
  1001   debug_only(NoSafepointVerifier nsv;)
  1002   assert(_from_compiled_entry != NULL, "must be set");
  1002   assert(_from_compiled_entry != NULL, "must be set");
  1003   return _from_compiled_entry;
  1003   return _from_compiled_entry;
  1004 }
  1004 }
  1005 
  1005 
  1006 // Check that if an nmethod ref exists, it has a backlink to this or no backlink at all
  1006 // Check that if an nmethod ref exists, it has a backlink to this or no backlink at all
  1546 // default_methods also uses this without the ordering for fast find_method
  1546 // default_methods also uses this without the ordering for fast find_method
  1547 void Method::sort_methods(Array<Method*>* methods, bool idempotent, bool set_idnums) {
  1547 void Method::sort_methods(Array<Method*>* methods, bool idempotent, bool set_idnums) {
  1548   int length = methods->length();
  1548   int length = methods->length();
  1549   if (length > 1) {
  1549   if (length > 1) {
  1550     {
  1550     {
  1551       No_Safepoint_Verifier nsv;
  1551       NoSafepointVerifier nsv;
  1552       QuickSort::sort<Method*>(methods->data(), length, method_comparator, idempotent);
  1552       QuickSort::sort<Method*>(methods->data(), length, method_comparator, idempotent);
  1553     }
  1553     }
  1554     // Reset method ordering
  1554     // Reset method ordering
  1555     if (set_idnums) {
  1555     if (set_idnums) {
  1556       for (int i = 0; i < length; i++) {
  1556       for (int i = 0; i < length; i++) {