diff src/cpu/x86/vm/methodHandles_x86.hpp @ 4000:0abefdb54d21

7081938: JSR292: assert(magic_number_2() == MAGIC_NUMBER_2) failed Reviewed-by: never, bdelsart
author twisti
date Tue, 11 Oct 2011 02:19:37 -0700
parents 7588156f5cf9
children 44ce519bc3d1
line wrap: on
line diff
--- a/src/cpu/x86/vm/methodHandles_x86.hpp	Fri Oct 07 13:28:44 2011 +0200
+++ b/src/cpu/x86/vm/methodHandles_x86.hpp	Tue Oct 11 02:19:37 2011 -0700
@@ -132,7 +132,10 @@
   intptr_t* sender_link() const         { return _sender_link; }
   address   sender_pc() const           { return _sender_pc; }
 
-  intptr_t* extended_sender_sp() const  { return saved_args_base(); }
+  intptr_t* extended_sender_sp() const {
+    // The extended sender SP is above the current RicochetFrame.
+    return (intptr_t*) (((address) this) + sizeof(RicochetFrame));
+  }
 
   intptr_t  return_value_slot_number() const {
     return adapter_conversion_vminfo(conversion());