Mercurial > hg > truffle
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(); |