1.1 --- a/src/share/vm/prims/methodHandles.cpp Wed Jan 18 16:18:31 2012 +0100 1.2 +++ b/src/share/vm/prims/methodHandles.cpp Thu Jan 19 13:00:11 2012 -0800 1.3 @@ -194,9 +194,6 @@ 1.4 // MethodHandles::generate_adapters 1.5 // 1.6 void MethodHandles::generate_adapters() { 1.7 -#ifdef TARGET_ARCH_NYI_6939861 1.8 - if (FLAG_IS_DEFAULT(UseRicochetFrames)) UseRicochetFrames = false; 1.9 -#endif 1.10 if (!EnableInvokeDynamic || SystemDictionary::MethodHandle_klass() == NULL) return; 1.11 1.12 assert(_adapter_code == NULL, "generate only once"); 1.13 @@ -230,18 +227,6 @@ 1.14 } 1.15 1.16 1.17 -#ifdef TARGET_ARCH_NYI_6939861 1.18 -// these defs belong in methodHandles_<arch>.cpp 1.19 -frame MethodHandles::ricochet_frame_sender(const frame& fr, RegisterMap *map) { 1.20 - ShouldNotCallThis(); 1.21 - return fr; 1.22 -} 1.23 -void MethodHandles::ricochet_frame_oops_do(const frame& fr, OopClosure* f, const RegisterMap* reg_map) { 1.24 - ShouldNotCallThis(); 1.25 -} 1.26 -#endif //TARGET_ARCH_NYI_6939861 1.27 - 1.28 - 1.29 //------------------------------------------------------------------------------ 1.30 // MethodHandles::ek_supported 1.31 // 1.32 @@ -251,28 +236,11 @@ 1.33 case _adapter_unused_13: 1.34 return false; // not defined yet 1.35 case _adapter_prim_to_ref: 1.36 - return UseRicochetFrames && conv_op_supported(java_lang_invoke_AdapterMethodHandle::OP_PRIM_TO_REF); 1.37 + return conv_op_supported(java_lang_invoke_AdapterMethodHandle::OP_PRIM_TO_REF); 1.38 case _adapter_collect_args: 1.39 - return UseRicochetFrames && conv_op_supported(java_lang_invoke_AdapterMethodHandle::OP_COLLECT_ARGS); 1.40 + return conv_op_supported(java_lang_invoke_AdapterMethodHandle::OP_COLLECT_ARGS); 1.41 case _adapter_fold_args: 1.42 - return UseRicochetFrames && conv_op_supported(java_lang_invoke_AdapterMethodHandle::OP_FOLD_ARGS); 1.43 - case _adapter_opt_return_any: 1.44 - return UseRicochetFrames; 1.45 -#ifdef TARGET_ARCH_NYI_6939861 1.46 - // ports before 6939861 supported only three kinds of spread ops 1.47 - case _adapter_spread_args: 1.48 - // restrict spreads to three kinds: 1.49 - switch (ek) { 1.50 - case _adapter_opt_spread_0: 1.51 - case _adapter_opt_spread_1: 1.52 - case _adapter_opt_spread_more: 1.53 - break; 1.54 - default: 1.55 - return false; 1.56 - break; 1.57 - } 1.58 - break; 1.59 -#endif //TARGET_ARCH_NYI_6939861 1.60 + return conv_op_supported(java_lang_invoke_AdapterMethodHandle::OP_FOLD_ARGS); 1.61 } 1.62 return true; 1.63 } 1.64 @@ -1988,9 +1956,6 @@ 1.65 case _adapter_prim_to_ref: // boxer MH to use 1.66 case _adapter_collect_args: // method handle which collects the args 1.67 case _adapter_fold_args: // method handle which collects the args 1.68 - if (!UseRicochetFrames) { 1.69 - { err = "box/collect/fold operators are not supported"; break; } 1.70 - } 1.71 if (!java_lang_invoke_MethodHandle::is_instance(argument())) 1.72 { err = "MethodHandle adapter argument required"; break; } 1.73 arg_mtype = Handle(THREAD, java_lang_invoke_MethodHandle::type(argument())); 1.74 @@ -2370,7 +2335,6 @@ 1.75 1.76 case _adapter_prim_to_ref: 1.77 { 1.78 - assert(UseRicochetFrames, "else don't come here"); 1.79 // vminfo will be the location to insert the return value 1.80 vminfo = argslot; 1.81 ek_opt = _adapter_opt_collect_ref; 1.82 @@ -2436,20 +2400,6 @@ 1.83 1.84 case _adapter_spread_args: 1.85 { 1.86 -#ifdef TARGET_ARCH_NYI_6939861 1.87 - // ports before 6939861 supported only three kinds of spread ops 1.88 - if (!UseRicochetFrames) { 1.89 - int array_size = slots_pushed + 1; 1.90 - assert(array_size >= 0, ""); 1.91 - vminfo = array_size; 1.92 - switch (array_size) { 1.93 - case 0: ek_opt = _adapter_opt_spread_0; break; 1.94 - case 1: ek_opt = _adapter_opt_spread_1; break; 1.95 - default: ek_opt = _adapter_opt_spread_more; break; 1.96 - } 1.97 - break; 1.98 - } 1.99 -#endif //TARGET_ARCH_NYI_6939861 1.100 // vminfo will be the required length of the array 1.101 int array_size = (slots_pushed + 1) / (type2size[dest] == 2 ? 2 : 1); 1.102 vminfo = array_size; 1.103 @@ -2494,7 +2444,6 @@ 1.104 1.105 case _adapter_collect_args: 1.106 { 1.107 - assert(UseRicochetFrames, "else don't come here"); 1.108 int elem_slots = argument_slot_count(java_lang_invoke_MethodHandle::type(argument())); 1.109 // vminfo will be the location to insert the return value 1.110 vminfo = argslot; 1.111 @@ -2563,7 +2512,6 @@ 1.112 1.113 case _adapter_fold_args: 1.114 { 1.115 - assert(UseRicochetFrames, "else don't come here"); 1.116 int elem_slots = argument_slot_count(java_lang_invoke_MethodHandle::type(argument())); 1.117 // vminfo will be the location to insert the return value 1.118 vminfo = argslot + elem_slots;