--- a/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp Fri Mar 27 08:58:45 2015 +0100
+++ b/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp Tue Mar 31 12:31:18 2015 -0700
@@ -3462,6 +3462,24 @@
case vmIntrinsics::_putFloat : return append_unsafe_put_obj(callee, T_FLOAT, false);
case vmIntrinsics::_putDouble : return append_unsafe_put_obj(callee, T_DOUBLE, false);
+ case vmIntrinsics::_getShortUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_SHORT, false) : false;
+ case vmIntrinsics::_getCharUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_CHAR, false) : false;
+ case vmIntrinsics::_getIntUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_INT, false) : false;
+ case vmIntrinsics::_getLongUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_LONG, false) : false;
+
+ case vmIntrinsics::_putShortUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_SHORT, false) : false;
+ case vmIntrinsics::_putCharUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_CHAR, false) : false;
+ case vmIntrinsics::_putIntUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_INT, false) : false;
+ case vmIntrinsics::_putLongUnaligned :
+ return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_LONG, false) : false;
+
case vmIntrinsics::_getObjectVolatile : return append_unsafe_get_obj(callee, T_OBJECT, true);
case vmIntrinsics::_getBooleanVolatile: return append_unsafe_get_obj(callee, T_BOOLEAN, true);
case vmIntrinsics::_getByteVolatile : return append_unsafe_get_obj(callee, T_BYTE, true);