< prev index next >

src/cpu/x86/vm/methodHandles_x86.cpp

Print this page

        

@@ -521,13 +521,13 @@
       frame cur_frame = os::current_frame();
 
       // Robust search of trace_calling_frame (independant of inlining).
       // Assumes saved_regs comes from a pusha in the trace_calling_frame.
       assert(cur_frame.sp() < saved_regs, "registers not saved on stack ?");
-      frame trace_calling_frame = os::get_sender_for_C_frame(&cur_frame);
+      frame trace_calling_frame = os::get_sender_for_C_frame(p, &cur_frame);
       while (trace_calling_frame.fp() < saved_regs) {
-        trace_calling_frame = os::get_sender_for_C_frame(&trace_calling_frame);
+        trace_calling_frame = os::get_sender_for_C_frame(p, &trace_calling_frame);
       }
 
       // safely create a frame and call frame::describe
       intptr_t *dump_sp = trace_calling_frame.sender_sp();
       intptr_t *dump_fp = trace_calling_frame.link();

@@ -539,11 +539,11 @@
         // if new call sites cause the next frame constructor to start
         // failing. Alternatively, frame constructors could be
         // modified to support the current or future non walkable
         // frames (but this is more intrusive and is not considered as
         // part of this RFE, which will instead use a simpler output).
-        frame dump_frame = frame(dump_sp, dump_fp);
+        frame dump_frame = frame(p, dump_sp, dump_fp);
         dump_frame.describe(values, 1);
       } else {
         // Stack may not be walkable (invalid PC above FP):
         // Add descriptions without building a Java frame to avoid issues
         values.describe(-1, dump_fp, "fp for #1 <not parsed, cannot trust pc>");
< prev index next >