src/share/vm/prims/unsafe.cpp
Print this page
@@ -322,10 +322,30 @@
}
UNSAFE_END
#endif // not SUPPORTS_NATIVE_CX8
+UNSAFE_ENTRY(jboolean, Unsafe_isBigEndian0(JNIEnv *env, jobject unsafe))
+ UnsafeWrapper("Unsafe_IsBigEndian0");
+ {
+#ifdef VM_BIG_ENDIAN
+ return true;
+#elif defined(VM_LITTLE_ENDIAN)
+ return false;
+#else
+#error VM_LITTLE_ENDIAN or VM_BIG_ENDIAN must be defined
+#endif
+ }
+UNSAFE_END
+
+UNSAFE_ENTRY(jint, Unsafe_unalignedAccess0(JNIEnv *env, jobject unsafe))
+ UnsafeWrapper("Unsafe_UnalignedAccess0");
+ {
+ return UseUnalignedAccesses;
+ }
+UNSAFE_END
+
#define DEFINE_GETSETOOP(jboolean, Boolean) \
\
UNSAFE_ENTRY(jboolean, Unsafe_Get##Boolean##140(JNIEnv *env, jobject unsafe, jobject obj, jint offset)) \
UnsafeWrapper("Unsafe_Get"#Boolean); \
if (obj == NULL) THROW_0(vmSymbols::java_lang_NullPointerException()); \
@@ -1259,10 +1279,13 @@
{CC"shouldBeInitialized",CC"("CLS")Z", FN_PTR(Unsafe_ShouldBeInitialized)},
{CC"loadFence", CC"()V", FN_PTR(Unsafe_LoadFence)},
{CC"storeFence", CC"()V", FN_PTR(Unsafe_StoreFence)},
{CC"fullFence", CC"()V", FN_PTR(Unsafe_FullFence)},
+
+ {CC"isBigEndian0", CC"()Z", FN_PTR(Unsafe_isBigEndian0)},
+ {CC"unalignedAccess0", CC"()Z", FN_PTR(Unsafe_unalignedAccess0)}
};
#undef CC
#undef FN_PTR