Mercurial > hg > truffle
comparison src/share/vm/prims/methodHandles.cpp @ 7418:5c0931d15474
8003238: JSR 292: intermittent exception failure with java/lang/invoke/CallSiteTest.java
Reviewed-by: jrose, kvn
author | twisti |
---|---|
date | Fri, 14 Dec 2012 12:06:42 -0800 |
parents | 070d523b96a7 |
children | 16885e702c88 |
comparison
equal
deleted
inserted
replaced
7415:0c535211ef13 | 7418:5c0931d15474 |
---|---|
1166 Handle target (THREAD, JNIHandles::resolve(target_jh)); | 1166 Handle target (THREAD, JNIHandles::resolve(target_jh)); |
1167 { | 1167 { |
1168 // Walk all nmethods depending on this call site. | 1168 // Walk all nmethods depending on this call site. |
1169 MutexLocker mu(Compile_lock, thread); | 1169 MutexLocker mu(Compile_lock, thread); |
1170 Universe::flush_dependents_on(call_site, target); | 1170 Universe::flush_dependents_on(call_site, target); |
1171 } | 1171 java_lang_invoke_CallSite::set_target(call_site(), target()); |
1172 java_lang_invoke_CallSite::set_target(call_site(), target()); | 1172 } |
1173 } | 1173 } |
1174 JVM_END | 1174 JVM_END |
1175 | 1175 |
1176 JVM_ENTRY(void, MHN_setCallSiteTargetVolatile(JNIEnv* env, jobject igcls, jobject call_site_jh, jobject target_jh)) { | 1176 JVM_ENTRY(void, MHN_setCallSiteTargetVolatile(JNIEnv* env, jobject igcls, jobject call_site_jh, jobject target_jh)) { |
1177 Handle call_site(THREAD, JNIHandles::resolve_non_null(call_site_jh)); | 1177 Handle call_site(THREAD, JNIHandles::resolve_non_null(call_site_jh)); |
1178 Handle target (THREAD, JNIHandles::resolve(target_jh)); | 1178 Handle target (THREAD, JNIHandles::resolve(target_jh)); |
1179 { | 1179 { |
1180 // Walk all nmethods depending on this call site. | 1180 // Walk all nmethods depending on this call site. |
1181 MutexLocker mu(Compile_lock, thread); | 1181 MutexLocker mu(Compile_lock, thread); |
1182 Universe::flush_dependents_on(call_site, target); | 1182 Universe::flush_dependents_on(call_site, target); |
1183 } | 1183 java_lang_invoke_CallSite::set_target_volatile(call_site(), target()); |
1184 java_lang_invoke_CallSite::set_target_volatile(call_site(), target()); | 1184 } |
1185 } | 1185 } |
1186 JVM_END | 1186 JVM_END |
1187 | 1187 |
1188 /// JVM_RegisterMethodHandleMethods | 1188 /// JVM_RegisterMethodHandleMethods |
1189 | 1189 |