hotspot/src/share/vm/oops/method.hpp
changeset 46324 8764956ec928
parent 43453 a2097d148d0e
child 46329 53ccc37bda19
equal deleted inserted replaced
46323:d41bb2dcaeb8 46324:8764956ec928
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   120                           TRAPS);
   120                           TRAPS);
   121 
   121 
   122   // CDS and vtbl checking can create an empty Method to get vtbl pointer.
   122   // CDS and vtbl checking can create an empty Method to get vtbl pointer.
   123   Method(){}
   123   Method(){}
   124 
   124 
   125   // The Method vtable is restored by this call when the Method is in the
       
   126   // shared archive.  See patch_klass_vtables() in metaspaceShared.cpp for
       
   127   // all the gory details.  SA, dtrace and pstack helpers distinguish metadata
       
   128   // by their vtable.
       
   129   void restore_vtable() { guarantee(is_method(), "vtable restored by this call"); }
       
   130   bool is_method() const volatile { return true; }
   125   bool is_method() const volatile { return true; }
   131 
   126 
   132   void restore_unshareable_info(TRAPS);
   127   void restore_unshareable_info(TRAPS);
   133 
   128 
   134   // accessors for instance variables
   129   // accessors for instance variables