comparison src/share/vm/prims/methodHandles.hpp @ 2177:3582bf76420e

6990754: Use native memory and reference counting to implement SymbolTable Summary: move symbols from permgen into C heap and reference count them Reviewed-by: never, acorn, jmasa, stefank
author coleenp
date Thu, 27 Jan 2011 16:11:27 -0800
parents d810e9a3fc33
children 8033953d67ff
comparison
equal deleted inserted replaced
2176:27e4ea99855d 2177:3582bf76420e
285 static void expand_MemberName(Handle mname, int suppress, TRAPS); // expand defc/name/type if missing 285 static void expand_MemberName(Handle mname, int suppress, TRAPS); // expand defc/name/type if missing
286 static Handle new_MemberName(TRAPS); // must be followed by init_MemberName 286 static Handle new_MemberName(TRAPS); // must be followed by init_MemberName
287 static void init_MemberName(oop mname_oop, oop target); // compute vmtarget/vmindex from target 287 static void init_MemberName(oop mname_oop, oop target); // compute vmtarget/vmindex from target
288 static void init_MemberName(oop mname_oop, methodOop m, bool do_dispatch = true); 288 static void init_MemberName(oop mname_oop, methodOop m, bool do_dispatch = true);
289 static void init_MemberName(oop mname_oop, klassOop field_holder, AccessFlags mods, int offset); 289 static void init_MemberName(oop mname_oop, klassOop field_holder, AccessFlags mods, int offset);
290 static int find_MemberNames(klassOop k, symbolOop name, symbolOop sig, 290 static int find_MemberNames(klassOop k, Symbol* name, Symbol* sig,
291 int mflags, klassOop caller, 291 int mflags, klassOop caller,
292 int skip, objArrayOop results); 292 int skip, objArrayOop results);
293 // bit values for suppress argument to expand_MemberName: 293 // bit values for suppress argument to expand_MemberName:
294 enum { _suppress_defc = 1, _suppress_name = 2, _suppress_type = 4 }; 294 enum { _suppress_defc = 1, _suppress_name = 2, _suppress_type = 4 };
295 295
464 RegisterOrConstant arg_slots, 464 RegisterOrConstant arg_slots,
465 Register argslot_reg, 465 Register argslot_reg,
466 Register temp_reg, Register temp2_reg, Register temp3_reg = noreg); 466 Register temp_reg, Register temp2_reg, Register temp3_reg = noreg);
467 467
468 static void trace_method_handle(MacroAssembler* _masm, const char* adaptername) PRODUCT_RETURN; 468 static void trace_method_handle(MacroAssembler* _masm, const char* adaptername) PRODUCT_RETURN;
469
470 static Symbol* convert_to_signature(oop type_str, bool polymorphic, TRAPS);
469 }; 471 };
470 472
471 473
472 // Access methods for the "entry" field of a java.dyn.MethodHandle. 474 // Access methods for the "entry" field of a java.dyn.MethodHandle.
473 // The field is primarily a jump target for compiled calls. 475 // The field is primarily a jump target for compiled calls.