Mercurial > hg > truffle
comparison src/share/vm/runtime/sharedRuntime.cpp @ 8124:5fc51c1ecdeb
Merge.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Tue, 05 Mar 2013 23:44:54 +0100 |
parents | 989155e2d07a df8462fbe585 |
children | b8f261ba79c6 |
comparison
equal
deleted
inserted
replaced
7943:a413bcd552a4 | 8124:5fc51c1ecdeb |
---|---|
54 #include "runtime/vframeArray.hpp" | 54 #include "runtime/vframeArray.hpp" |
55 #include "utilities/copy.hpp" | 55 #include "utilities/copy.hpp" |
56 #include "utilities/dtrace.hpp" | 56 #include "utilities/dtrace.hpp" |
57 #include "utilities/events.hpp" | 57 #include "utilities/events.hpp" |
58 #include "utilities/hashtable.inline.hpp" | 58 #include "utilities/hashtable.inline.hpp" |
59 #include "utilities/macros.hpp" | |
59 #include "utilities/xmlstream.hpp" | 60 #include "utilities/xmlstream.hpp" |
60 #ifdef TARGET_ARCH_x86 | 61 #ifdef TARGET_ARCH_x86 |
61 # include "nativeInst_x86.hpp" | 62 # include "nativeInst_x86.hpp" |
62 # include "vmreg_x86.inline.hpp" | 63 # include "vmreg_x86.inline.hpp" |
63 #endif | 64 #endif |
210 tty->print_cr ("Total IC misses: %7d", tot_misses); | 211 tty->print_cr ("Total IC misses: %7d", tot_misses); |
211 } | 212 } |
212 } | 213 } |
213 #endif // PRODUCT | 214 #endif // PRODUCT |
214 | 215 |
215 #ifndef SERIALGC | 216 #if INCLUDE_ALL_GCS |
216 | 217 |
217 // G1 write-barrier pre: executed before a pointer store. | 218 // G1 write-barrier pre: executed before a pointer store. |
218 JRT_LEAF(void, SharedRuntime::g1_wb_pre(oopDesc* orig, JavaThread *thread)) | 219 JRT_LEAF(void, SharedRuntime::g1_wb_pre(oopDesc* orig, JavaThread *thread)) |
219 if (orig == NULL) { | 220 if (orig == NULL) { |
220 assert(false, "should be optimized out"); | 221 assert(false, "should be optimized out"); |
228 // G1 write-barrier post: executed after a pointer store. | 229 // G1 write-barrier post: executed after a pointer store. |
229 JRT_LEAF(void, SharedRuntime::g1_wb_post(void* card_addr, JavaThread* thread)) | 230 JRT_LEAF(void, SharedRuntime::g1_wb_post(void* card_addr, JavaThread* thread)) |
230 thread->dirty_card_queue().enqueue(card_addr); | 231 thread->dirty_card_queue().enqueue(card_addr); |
231 JRT_END | 232 JRT_END |
232 | 233 |
233 #endif // !SERIALGC | 234 #endif // INCLUDE_ALL_GCS |
234 | 235 |
235 | 236 |
236 JRT_LEAF(jlong, SharedRuntime::lmul(jlong y, jlong x)) | 237 JRT_LEAF(jlong, SharedRuntime::lmul(jlong y, jlong x)) |
237 return x * y; | 238 return x * y; |
238 JRT_END | 239 JRT_END |
2866 // | 2867 // |
2867 // All of this is done NOT at any Safepoint, nor is any safepoint or GC allowed. | 2868 // All of this is done NOT at any Safepoint, nor is any safepoint or GC allowed. |
2868 | 2869 |
2869 JRT_LEAF(intptr_t*, SharedRuntime::OSR_migration_begin( JavaThread *thread) ) | 2870 JRT_LEAF(intptr_t*, SharedRuntime::OSR_migration_begin( JavaThread *thread) ) |
2870 | 2871 |
2871 #ifdef IA64 | |
2872 ShouldNotReachHere(); // NYI | |
2873 #endif /* IA64 */ | |
2874 | |
2875 // | 2872 // |
2876 // This code is dependent on the memory layout of the interpreter local | 2873 // This code is dependent on the memory layout of the interpreter local |
2877 // array and the monitors. On all of our platforms the layout is identical | 2874 // array and the monitors. On all of our platforms the layout is identical |
2878 // so this code is shared. If some platform lays the their arrays out | 2875 // so this code is shared. If some platform lays the their arrays out |
2879 // differently then this code could move to platform specific code or | 2876 // differently then this code could move to platform specific code or |