コード例 #1
0
 /** Snippet for unrolled arraycopy. */
 @Snippet
 public static void arraycopyUnrolledIntrinsic(
     Object src,
     int srcPos,
     Object dest,
     int destPos,
     int length,
     @ConstantParameter int unrolledLength,
     @ConstantParameter JavaKind elementKind) {
   Object nonNullSrc = GraalDirectives.guardingNonNull(src);
   Object nonNullDest = GraalDirectives.guardingNonNull(dest);
   checkLimits(nonNullSrc, srcPos, nonNullDest, destPos, length);
   if (length == 0) {
     zeroLengthDynamicCounter.inc();
   } else {
     nonZeroLengthDynamicCounter.inc();
     nonZeroLengthDynamicCopiedCounter.add(length);
   }
   ArrayCopyUnrollNode.arraycopy(
       nonNullSrc, srcPos, nonNullDest, destPos, length, unrolledLength, elementKind);
 }