comparison src/share/vm/code/vtableStubs.hpp @ 12264:b2e698d2276c

8014013: CallInfo structure no longer accurately reports the result of a LinkResolver operation Summary: Enhance method resolution and resulting data structures, plus some refactoring. Reviewed-by: twisti, acorn, jrose
author drchase
date Fri, 13 Sep 2013 22:38:02 -0400
parents 9758d9f36299
children 9341a9963d36
comparison
equal deleted inserted replaced
12261:2c98370f2611 12264:b2e698d2276c
119 static VtableStub* create_vtable_stub(int vtable_index); 119 static VtableStub* create_vtable_stub(int vtable_index);
120 static VtableStub* create_itable_stub(int vtable_index); 120 static VtableStub* create_itable_stub(int vtable_index);
121 static VtableStub* lookup (bool is_vtable_stub, int vtable_index); 121 static VtableStub* lookup (bool is_vtable_stub, int vtable_index);
122 static void enter (bool is_vtable_stub, int vtable_index, VtableStub* s); 122 static void enter (bool is_vtable_stub, int vtable_index, VtableStub* s);
123 static inline uint hash (bool is_vtable_stub, int vtable_index); 123 static inline uint hash (bool is_vtable_stub, int vtable_index);
124 static address find_stub (bool is_vtable_stub, int vtable_index);
124 125
125 public: 126 public:
126 static address create_stub(bool is_vtable_stub, int vtable_index, Method* method); // return the entry point of a stub for this call 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); }
127 static bool is_entry_point(address pc); // is pc a vtable stub entry point? 129 static bool is_entry_point(address pc); // is pc a vtable stub entry point?
128 static bool contains(address pc); // is pc within any stub? 130 static bool contains(address pc); // is pc within any stub?
129 static VtableStub* stub_containing(address pc); // stub containing pc or NULL 131 static VtableStub* stub_containing(address pc); // stub containing pc or NULL
130 static int number_of_vtable_stubs() { return _number_of_vtable_stubs; } 132 static int number_of_vtable_stubs() { return _number_of_vtable_stubs; }
131 static void initialize(); 133 static void initialize();