#include <sys/cdefs.h>
#include <endian.h>
#include "libc_internal.h"
Go to the source code of this file.
Defines | |
#define | op_t unsigned long int |
#define | OPSIZ (sizeof(op_t)) |
#define | reg_char char |
#define | MERGE(w0, sh_1, w1, sh_2) (((w0) >> (sh_1)) | ((w1) << (sh_2))) |
#define | MERGE(w0, sh_1, w1, sh_2) (((w0) << (sh_1)) | ((w1) >> (sh_2))) |
#define | BYTE_COPY_FWD(dst_bp, src_bp, nbytes) |
#define | BYTE_COPY_BWD(dst_ep, src_ep, nbytes) |
#define | WORD_COPY_FWD(dst_bp, src_bp, nbytes_left, nbytes) |
#define | WORD_COPY_BWD(dst_ep, src_ep, nbytes_left, nbytes) |
#define | OP_T_THRES 16 |
Typedefs | |
typedef unsigned char | byte |
Definition in file memcopy.h.
#define BYTE_COPY_BWD | ( | dst_ep, | |||
src_ep, | |||||
nbytes | ) |
#define BYTE_COPY_FWD | ( | dst_bp, | |||
src_bp, | |||||
nbytes | ) |
#define WORD_COPY_BWD | ( | dst_ep, | |||
src_ep, | |||||
nbytes_left, | |||||
nbytes | ) |
Value:
do \ { \ if (src_ep % OPSIZ == 0) \ txc_libc_wordcopy_bwd_aligned (dst_ep, src_ep, (nbytes) / OPSIZ); \ else \ txc_libc_wordcopy_bwd_dest_aligned (dst_ep, src_ep, (nbytes) / OPSIZ); \ src_ep -= (nbytes) & -OPSIZ; \ dst_ep -= (nbytes) & -OPSIZ; \ (nbytes_left) = (nbytes) % OPSIZ; \ } while (0)
#define WORD_COPY_FWD | ( | dst_bp, | |||
src_bp, | |||||
nbytes_left, | |||||
nbytes | ) |
Value:
do \ { \ if (src_bp % OPSIZ == 0) \ txc_libc_wordcopy_fwd_aligned (dst_bp, src_bp, (nbytes) / OPSIZ); \ else \ txc_libc_wordcopy_fwd_dest_aligned (dst_bp, src_bp, (nbytes) / OPSIZ); \ src_bp += (nbytes) & -OPSIZ; \ dst_bp += (nbytes) & -OPSIZ; \ (nbytes_left) = (nbytes) % OPSIZ; \ } while (0)