src/share/vm/oops/method.hpp

changeset 26
ed5b982c0b0e
parent 1
2d8a650513c2
child 6876
710a3c8b516e
equal deleted inserted replaced
25:873fd82b133d 26:ed5b982c0b0e
18 * 18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any 20 * or visit www.oracle.com if you need additional information or have any
21 * questions. 21 * questions.
22 * 22 *
23 */
24
25 /*
26 * This file has been modified by Loongson Technology in 2015. These
27 * modifications are Copyright (c) 2015 Loongson Technology, and are made
28 * available on the same license terms set forth above.
29 */ 23 */
30 24
31 #ifndef SHARE_VM_OOPS_METHODOOP_HPP 25 #ifndef SHARE_VM_OOPS_METHODOOP_HPP
32 #define SHARE_VM_OOPS_METHODOOP_HPP 26 #define SHARE_VM_OOPS_METHODOOP_HPP
33 27
124 : 3; 118 : 3;
125 119
126 #ifndef PRODUCT 120 #ifndef PRODUCT
127 int _compiled_invocation_count; // Number of nmethod invocations so far (for perf. debugging) 121 int _compiled_invocation_count; // Number of nmethod invocations so far (for perf. debugging)
128 #endif 122 #endif
129 #ifdef MIPS64
130 int _num_of_requests;
131 int _decay_counter;
132 #endif
133 // Entry point for calling both from and to the interpreter. 123 // Entry point for calling both from and to the interpreter.
134 address _i2i_entry; // All-args-on-stack calling convention 124 address _i2i_entry; // All-args-on-stack calling convention
135 // Adapter blob (i2c/c2i) for this Method*. Set once when method is linked. 125 // Adapter blob (i2c/c2i) for this Method*. Set once when method is linked.
136 AdapterHandlerEntry* _adapter; 126 AdapterHandlerEntry* _adapter;
137 // Entry point for calling from compiled code, to compiled code if it exists 127 // Entry point for calling from compiled code, to compiled code if it exists
170 160
171 // accessors for instance variables 161 // accessors for instance variables
172 162
173 ConstMethod* constMethod() const { return _constMethod; } 163 ConstMethod* constMethod() const { return _constMethod; }
174 void set_constMethod(ConstMethod* xconst) { _constMethod = xconst; } 164 void set_constMethod(ConstMethod* xconst) { _constMethod = xconst; }
175 #ifdef MIPS64 165
176 void incr_num_of_requests(int increment) { _num_of_requests += increment; }
177 void set_num_of_requests(int new_num) { _num_of_requests = new_num; }
178 int get_num_of_requests() const { return _num_of_requests; }
179
180 void incr_decay_counter(int increment) { _decay_counter += increment; }
181 void set_decay_counter(int new_num) { _decay_counter = new_num; }
182 int get_decay_counter() const { return _decay_counter; }
183 #endif
184 166
185 static address make_adapters(methodHandle mh, TRAPS); 167 static address make_adapters(methodHandle mh, TRAPS);
186 volatile address from_compiled_entry() const { return (address)OrderAccess::load_ptr_acquire(&_from_compiled_entry); } 168 volatile address from_compiled_entry() const { return (address)OrderAccess::load_ptr_acquire(&_from_compiled_entry); }
187 volatile address from_interpreted_entry() const{ return (address)OrderAccess::load_ptr_acquire(&_from_interpreted_entry); } 169 volatile address from_interpreted_entry() const{ return (address)OrderAccess::load_ptr_acquire(&_from_interpreted_entry); }
188 170

mercurial