< prev index next >
src/share/vm/interpreter/oopMapCache.cpp
Print this page
@@ -37,13 +37,13 @@
friend class OopMapCache;
friend class VerifyClosure;
protected:
// Initialization
- void fill(methodHandle method, int bci);
+ void fill(const methodHandle& method, int bci);
// fills the bit mask for native calls
- void fill_for_native(methodHandle method);
+ void fill_for_native(const methodHandle& method);
void set_mask(CellTypeState* vars, CellTypeState* stack, int stack_top);
// Deallocate bit masks and initialize fields
void flush();
@@ -78,19 +78,19 @@
CellTypeState* stack,
int stack_top);
virtual void fill_init_vars (GrowableArray<intptr_t> *init_vars);
public:
- OopMapForCacheEntry(methodHandle method, int bci, OopMapCacheEntry *entry);
+ OopMapForCacheEntry(const methodHandle& method, int bci, OopMapCacheEntry *entry);
// Computes stack map for (method,bci) and initialize entry
void compute_map(TRAPS);
int size();
};
-OopMapForCacheEntry::OopMapForCacheEntry(methodHandle method, int bci, OopMapCacheEntry* entry) : GenerateOopMap(method) {
+OopMapForCacheEntry::OopMapForCacheEntry(const methodHandle& method, int bci, OopMapCacheEntry* entry) : GenerateOopMap(method) {
_bci = bci;
_entry = entry;
_stack_top = -1;
}
@@ -240,11 +240,11 @@
void pass_long() { /* ignore */ }
void pass_float() { /* ignore */ }
void pass_double() { /* ignore */ }
void pass_object() { set_one(offset()); }
- MaskFillerForNative(methodHandle method, uintptr_t* mask, int size) : NativeSignatureIterator(method) {
+ MaskFillerForNative(const methodHandle& method, uintptr_t* mask, int size) : NativeSignatureIterator(method) {
_mask = mask;
_size = size;
// initialize with 0
int i = (size + BitsPerWord - 1) / BitsPerWord;
while (i-- > 0) _mask[i] = 0;
@@ -299,21 +299,21 @@
debug_only(_bit_mask[0] = 0;)
}
}
-void OopMapCacheEntry::fill_for_native(methodHandle mh) {
+void OopMapCacheEntry::fill_for_native(const methodHandle& mh) {
assert(mh->is_native(), "method must be native method");
set_mask_size(mh->size_of_parameters() * bits_per_entry);
allocate_bit_mask();
// fill mask for parameters
MaskFillerForNative mf(mh, bit_mask(), mask_size());
mf.generate();
}
-void OopMapCacheEntry::fill(methodHandle method, int bci) {
+void OopMapCacheEntry::fill(const methodHandle& method, int bci) {
HandleMark hm;
// Flush entry to deallocate an existing entry
flush();
set_method(method());
set_bci(bci);
< prev index next >