diff src/cpu/x86/vm/sharedRuntime_x86_64.cpp @ 22458:c2c971a9776f

Remove unused frame_extension_argument from i2c adapters
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Mon, 24 Aug 2015 10:21:51 -0700
parents c28cb37b2e1d
children f27c163d7dc2
line wrap: on
line diff
--- a/src/cpu/x86/vm/sharedRuntime_x86_64.cpp	Mon Aug 24 16:50:57 2015 +0200
+++ b/src/cpu/x86/vm/sharedRuntime_x86_64.cpp	Mon Aug 24 10:21:51 2015 -0700
@@ -672,8 +672,7 @@
                                     int total_args_passed,
                                     int comp_args_on_stack,
                                     const BasicType *sig_bt,
-                                    const VMRegPair *regs,
-                                    int frame_extension_argument) {
+                                    const VMRegPair *regs) {
 
   // Note: r13 contains the senderSP on entry. We must preserve it since
   // we may do a i2c -> c2i transition if we lose a race where compiled
@@ -731,42 +730,6 @@
     __ block_comment("} verify_i2ce ");
   }
 
-#if INCLUDE_JVMCI
-  if (frame_extension_argument != -1) {
-    // The frame_extension_argument is an int that describes the
-    // expected amount of argument space in the caller frame.  If that
-    // is greater than total_args_passed then enlarge the caller frame
-    // by that amount to ensure deopt works correctly.
-    assert(frame_extension_argument < total_args_passed, "out of range");
-    assert(sig_bt[frame_extension_argument] == T_INT, "wrong signature");
-
-    Label done;
-    int i = frame_extension_argument;
-    int ld_off = (total_args_passed - i)*Interpreter::stackElementSize;
-    // Check if anything needs to be done.  Too much space is ok.
-    __ movl(r13, Address(rsp, ld_off));
-    __ cmpl(r13, total_args_passed);
-    __ jcc(Assembler::lessEqual, done);
-    // Save the old rsp for the copy code
-    __ movptr(r11, rsp);
-    // Enlarge the frame
-    __ subl(r13, total_args_passed);
-    __ shlq(r13, 3);
-    __ subptr(rsp, r13);
-
-    // Now copy the arguments in reverse order so they don't get
-    // overwritten during the copy.
-    for (int i = total_args_passed - 1; i >= 0; i--) {
-      int ld_off = (total_args_passed - i) * Interpreter::stackElementSize;
-      __ movptr(r13, Address(r11, ld_off));
-      __ movptr(Address(rsp, ld_off), r13);
-    }
-    __ bind(done);
-  }
-#else
-  assert(frame_extension_argument == -1, "unsupported");
-#endif
-
   // Must preserve original SP for loading incoming arguments because
   // we need to align the outgoing SP for compiled code.
   __ movptr(r11, rsp);