30 #include "interpreter/linkResolver.hpp" |
30 #include "interpreter/linkResolver.hpp" |
31 #include "memory/allocation.hpp" |
31 #include "memory/allocation.hpp" |
32 #include "memory/resourceArea.hpp" |
32 #include "memory/resourceArea.hpp" |
33 #include "runtime/threadLocalStorage.hpp" |
33 #include "runtime/threadLocalStorage.hpp" |
34 #include "utilities/hashtable.hpp" |
34 #include "utilities/hashtable.hpp" |
|
35 #include "utilities/macros.hpp" |
35 |
36 |
36 class AdapterHandlerEntry; |
37 class AdapterHandlerEntry; |
37 class AdapterHandlerTable; |
38 class AdapterHandlerTable; |
38 class AdapterFingerPrint; |
39 class AdapterFingerPrint; |
39 class vframeStream; |
40 class vframeStream; |
166 |
167 |
167 // exception handling across interpreter/compiler boundaries |
168 // exception handling across interpreter/compiler boundaries |
168 static address raw_exception_handler_for_return_address(JavaThread* thread, address return_address); |
169 static address raw_exception_handler_for_return_address(JavaThread* thread, address return_address); |
169 static address exception_handler_for_return_address(JavaThread* thread, address return_address); |
170 static address exception_handler_for_return_address(JavaThread* thread, address return_address); |
170 |
171 |
171 #ifndef SERIALGC |
172 #if INCLUDE_ALL_GCS |
172 // G1 write barriers |
173 // G1 write barriers |
173 static void g1_wb_pre(oopDesc* orig, JavaThread *thread); |
174 static void g1_wb_pre(oopDesc* orig, JavaThread *thread); |
174 static void g1_wb_post(void* card_addr, JavaThread* thread); |
175 static void g1_wb_post(void* card_addr, JavaThread* thread); |
175 #endif // !SERIALGC |
176 #endif // INCLUDE_ALL_GCS |
176 |
177 |
177 // exception handling and implicit exceptions |
178 // exception handling and implicit exceptions |
178 static address compute_compiled_exc_handler(nmethod* nm, address ret_pc, Handle& exception, |
179 static address compute_compiled_exc_handler(nmethod* nm, address ret_pc, Handle& exception, |
179 bool force_unwind, bool top_frame_only); |
180 bool force_unwind, bool top_frame_only); |
180 enum ImplicitExceptionKind { |
181 enum ImplicitExceptionKind { |