--- old/src/share/vm/c1/c1_Instruction.hpp 2017-07-13 15:18:25.885996698 +0200 +++ new/src/share/vm/c1/c1_Instruction.hpp 2017-07-13 15:18:25.806036701 +0200 @@ -1566,7 +1566,7 @@ set_needs_null_check(has_receiver); // some intrinsics can't trap, so don't force them to be pinned - if (!can_trap()) { + if (!can_trap() && !vmIntrinsics::should_be_pinned(_id)) { unpin(PinStateSplitConstructor); } }