@@ -1154,10 +1154,6 @@ RegMask Matcher::modL_proj_mask() {
1154
1154
return RegMask();
1155
1155
}
1156
1156
1157
- const RegMask Matcher::method_handle_invoke_SP_save_mask() {
1158
- return FP_REGP_mask();
1159
- }
1160
-
1161
1157
bool maybe_far_call(const CallNode *n) {
1162
1158
return !MacroAssembler::_reachable_from_cache(n->as_Call()->entry_point());
1163
1159
}
@@ -1248,23 +1244,6 @@ encode %{
1248
1244
__ set_inst_mark(mark);
1249
1245
%}
1250
1246
1251
- enc_class preserve_SP %{
1252
- // preserve mark
1253
- address mark = __ inst_mark();
1254
- DEBUG_ONLY(int off0 = __ offset());
1255
- // FP is preserved across all calls, even compiled calls.
1256
- // Use it to preserve SP in places where the callee might change the SP.
1257
- __ mov(Rmh_SP_save, SP);
1258
- DEBUG_ONLY(int off1 = __ offset());
1259
- assert(off1 - off0 == 4, "correct size prediction");
1260
- // restore mark
1261
- __ set_inst_mark(mark);
1262
- %}
1263
-
1264
- enc_class restore_SP %{
1265
- __ mov(SP, Rmh_SP_save);
1266
- %}
1267
-
1268
1247
enc_class Java_Dynamic_Call (method meth) %{
1269
1248
Register R8_ic_reg = reg_to_register_object(Matcher::inline_cache_reg_encode());
1270
1249
assert(R8_ic_reg == Ricklass, "should be");
@@ -8799,7 +8778,6 @@ instruct safePoint_poll(iRegP poll, R12RegI tmp, flagsReg icc) %{
8799
8778
// Call Java Static Instruction
8800
8779
instruct CallStaticJavaDirect( method meth ) %{
8801
8780
match(CallStaticJava);
8802
- predicate(! ((CallStaticJavaNode*)n)->is_method_handle_invoke());
8803
8781
effect(USE meth);
8804
8782
8805
8783
ins_cost(CALL_COST);
@@ -8808,20 +8786,6 @@ instruct CallStaticJavaDirect( method meth ) %{
8808
8786
ins_pipe(simple_call);
8809
8787
%}
8810
8788
8811
- // Call Java Static Instruction (method handle version)
8812
- instruct CallStaticJavaHandle( method meth ) %{
8813
- match(CallStaticJava);
8814
- predicate(((CallStaticJavaNode*)n)->is_method_handle_invoke());
8815
- effect(USE meth);
8816
- // FP is saved by all callees (for interpreter stack correction).
8817
- // We use it here for a similar purpose, in {preserve,restore}_FP.
8818
-
8819
- ins_cost(CALL_COST);
8820
- format %{ "CALL,static/MethodHandle ==> " %}
8821
- ins_encode( SetInstMark, preserve_SP, Java_Static_Call( meth ), restore_SP, call_epilog, ClearInstMark );
8822
- ins_pipe(simple_call);
8823
- %}
8824
-
8825
8789
// Call Java Dynamic Instruction
8826
8790
instruct CallDynamicJavaDirect( method meth ) %{
8827
8791
match(CallDynamicJava);
0 commit comments