comparison src/share/vm/prims/forte.cpp @ 11173:6b0fd0964b87

Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/
author Doug Simon <doug.simon@oracle.com>
date Wed, 31 Jul 2013 11:00:54 +0200
parents e619a2766bcc
children 03e9e2e3028b de6a9e811145 94c202aa2646
comparison
equal deleted inserted replaced
10912:4ea54634f03e 11173:6b0fd0964b87
29 #include "memory/space.hpp" 29 #include "memory/space.hpp"
30 #include "memory/universe.inline.hpp" 30 #include "memory/universe.inline.hpp"
31 #include "oops/oop.inline.hpp" 31 #include "oops/oop.inline.hpp"
32 #include "oops/oop.inline2.hpp" 32 #include "oops/oop.inline2.hpp"
33 #include "prims/forte.hpp" 33 #include "prims/forte.hpp"
34 #include "runtime/javaCalls.hpp"
34 #include "runtime/thread.hpp" 35 #include "runtime/thread.hpp"
35 #include "runtime/vframe.hpp" 36 #include "runtime/vframe.hpp"
36 #include "runtime/vframeArray.hpp" 37 #include "runtime/vframeArray.hpp"
37 38
38 // call frame copied from old .h file and renamed 39 // call frame copied from old .h file and renamed
306 int loop_max = MaxJavaStackTraceDepth * 2; 307 int loop_max = MaxJavaStackTraceDepth * 2;
307 RegisterMap map(thread, false); 308 RegisterMap map(thread, false);
308 309
309 for (loop_count = 0; loop_count < loop_max; loop_count++) { 310 for (loop_count = 0; loop_count < loop_max; loop_count++) {
310 311
311 if (candidate.is_first_frame()) { 312 if (candidate.is_entry_frame()) {
313 // jcw is NULL if the java call wrapper couldn't be found
314 JavaCallWrapper *jcw = candidate.entry_frame_call_wrapper_if_safe(thread);
312 // If initial frame is frame from StubGenerator and there is no 315 // If initial frame is frame from StubGenerator and there is no
313 // previous anchor, there are no java frames associated with a method 316 // previous anchor, there are no java frames associated with a method
314 return false; 317 if (jcw == NULL || jcw->is_first_frame()) {
318 return false;
319 }
315 } 320 }
316 321
317 if (candidate.is_interpreted_frame()) { 322 if (candidate.is_interpreted_frame()) {
318 if (is_decipherable_interpreted_frame(thread, &candidate, method_p, bci_p)) { 323 if (is_decipherable_interpreted_frame(thread, &candidate, method_p, bci_p)) {
319 *initial_frame_p = candidate; 324 *initial_frame_p = candidate;
617 int size, 622 int size,
618 int zero_argument, 623 int zero_argument,
619 void* null_argument_3); 624 void* null_argument_3);
620 #pragma weak collector_func_load 625 #pragma weak collector_func_load
621 #define collector_func_load(x0,x1,x2,x3,x4,x5,x6) \ 626 #define collector_func_load(x0,x1,x2,x3,x4,x5,x6) \
622 ( collector_func_load ? collector_func_load(x0,x1,x2,x3,x4,x5,x6),0 : 0 ) 627 ( collector_func_load ? collector_func_load(x0,x1,x2,x3,x4,x5,x6),(void)0 : (void)0 )
623 #endif // __APPLE__ 628 #endif // __APPLE__
624 #endif // !_WINDOWS 629 #endif // !_WINDOWS
625 630
626 } // end extern "C" 631 } // end extern "C"
627 #endif // !IA64 632 #endif // !IA64