src/hotspot/share/code/vtableStubs.hpp
changeset 49655 d6893a76c554
parent 47216 71c04702a3d5
child 51333 f6641fcf7b7e
equal deleted inserted replaced
49654:16f53c9c7493 49655:d6893a76c554
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2018, 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.
   124   static address     find_stub         (bool is_vtable_stub, int vtable_index);
   124   static address     find_stub         (bool is_vtable_stub, int vtable_index);
   125 
   125 
   126  public:
   126  public:
   127   static address     find_vtable_stub(int vtable_index) { return find_stub(true,  vtable_index); }
   127   static address     find_vtable_stub(int vtable_index) { return find_stub(true,  vtable_index); }
   128   static address     find_itable_stub(int itable_index) { return find_stub(false, itable_index); }
   128   static address     find_itable_stub(int itable_index) { return find_stub(false, itable_index); }
   129   static bool        is_entry_point(address pc);                     // is pc a vtable stub entry point?
   129   static VtableStub* entry_point(address pc);                        // vtable stub entry point for a pc
   130   static bool        contains(address pc);                           // is pc within any stub?
   130   static bool        contains(address pc);                           // is pc within any stub?
   131   static VtableStub* stub_containing(address pc);                    // stub containing pc or NULL
   131   static VtableStub* stub_containing(address pc);                    // stub containing pc or NULL
   132   static int         number_of_vtable_stubs() { return _number_of_vtable_stubs; }
   132   static int         number_of_vtable_stubs() { return _number_of_vtable_stubs; }
   133   static void        initialize();
   133   static void        initialize();
   134   static void        vtable_stub_do(void f(VtableStub*));            // iterates over all vtable stubs
   134   static void        vtable_stub_do(void f(VtableStub*));            // iterates over all vtable stubs