src/hotspot/share/prims/unsafe.cpp
changeset 58177 4932dce35882
parent 58084 cddef3bde924
child 58282 03fce7b04b42
equal deleted inserted replaced
58176:470af058bd5f 58177:4932dce35882
   933   oop x = JNIHandles::resolve(x_h);
   933   oop x = JNIHandles::resolve(x_h);
   934   oop e = JNIHandles::resolve(e_h);
   934   oop e = JNIHandles::resolve(e_h);
   935   oop p = JNIHandles::resolve(obj);
   935   oop p = JNIHandles::resolve(obj);
   936   assert_field_offset_sane(p, offset);
   936   assert_field_offset_sane(p, offset);
   937   oop ret = HeapAccess<ON_UNKNOWN_OOP_REF>::oop_atomic_cmpxchg_at(x, p, (ptrdiff_t)offset, e);
   937   oop ret = HeapAccess<ON_UNKNOWN_OOP_REF>::oop_atomic_cmpxchg_at(x, p, (ptrdiff_t)offset, e);
   938   return oopDesc::equals(ret, e);
   938   return ret == e;
   939 } UNSAFE_END
   939 } UNSAFE_END
   940 
   940 
   941 UNSAFE_ENTRY(jboolean, Unsafe_CompareAndSetInt(JNIEnv *env, jobject unsafe, jobject obj, jlong offset, jint e, jint x)) {
   941 UNSAFE_ENTRY(jboolean, Unsafe_CompareAndSetInt(JNIEnv *env, jobject unsafe, jobject obj, jlong offset, jint e, jint x)) {
   942   oop p = JNIHandles::resolve(obj);
   942   oop p = JNIHandles::resolve(obj);
   943   if (p == NULL) {
   943   if (p == NULL) {