2N/A * The contents of this file are subject to the terms of the 2N/A * Common Development and Distribution License (the "License"). 2N/A * You may not use this file except in compliance with the License. 2N/A * See the License for the specific language governing permissions 2N/A * and limitations under the License. 2N/A * When distributing Covered Code, include this CDDL HEADER in each 2N/A * If applicable, add the following below this CDDL HEADER, with the 2N/A * fields enclosed by brackets "[]" replaced with your own identifying 2N/A * information: Portions Copyright [yyyy] [name of copyright owner] 2N/A * Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. 2N/A * memcpy(s1, s2, len) 2N/A * Copy s2 to s1, always copy n bytes. 2N/A * Note: this does not work for overlapped copies, bcopy() does 2N/A * Fast assembler language version of the following C-program for memcpy 2N/A * which represents the `standard' for the C-library. 2N/A * memcpy(void *s, const void *s0, size_t n) 2N/A * const char *s2 = s0; 2N/A * } while (--n != 0); 2N/A * Compare against 256 since we should be checking block addresses 2N/A * and (dest & ~63) - (src & ~63) can be 3 blocks even if 2N/A * src = dest + (64 * 3) + 63.