equal
deleted
inserted
replaced
895 oop x = JNIHandles::resolve(x_h); |
895 oop x = JNIHandles::resolve(x_h); |
896 oop e = JNIHandles::resolve(e_h); |
896 oop e = JNIHandles::resolve(e_h); |
897 oop p = JNIHandles::resolve(obj); |
897 oop p = JNIHandles::resolve(obj); |
898 assert_field_offset_sane(p, offset); |
898 assert_field_offset_sane(p, offset); |
899 oop ret = HeapAccess<ON_UNKNOWN_OOP_REF>::oop_atomic_cmpxchg_at(x, p, (ptrdiff_t)offset, e); |
899 oop ret = HeapAccess<ON_UNKNOWN_OOP_REF>::oop_atomic_cmpxchg_at(x, p, (ptrdiff_t)offset, e); |
900 return ret == e; |
900 return oopDesc::equals(ret, e); |
901 } UNSAFE_END |
901 } UNSAFE_END |
902 |
902 |
903 UNSAFE_ENTRY(jboolean, Unsafe_CompareAndSetInt(JNIEnv *env, jobject unsafe, jobject obj, jlong offset, jint e, jint x)) { |
903 UNSAFE_ENTRY(jboolean, Unsafe_CompareAndSetInt(JNIEnv *env, jobject unsafe, jobject obj, jlong offset, jint e, jint x)) { |
904 oop p = JNIHandles::resolve(obj); |
904 oop p = JNIHandles::resolve(obj); |
905 if (p == NULL) { |
905 if (p == NULL) { |