brintos

brintos / llvm-project-archived public Read only

0
0
Text · 551 B · 06ecb10 Raw
20 lines · plain
1#include <stddef.h>2extern void *memcpy(void *dest, void const *from, size_t n);3 4#ifdef WITH_DECL5inline __attribute__((always_inline)) __attribute__((gnu_inline)) void *memcpy(void *dest, void const *from, size_t n) {6  char const *ifrom = from;7  char *idest = dest;8  while (n--)9    *idest++ = *ifrom++;10  return dest;11}12#endif13#ifdef WITH_SELF_REFERENCE_DECL14inline __attribute__((always_inline)) __attribute__((gnu_inline)) void *memcpy(void *dest, void const *from, size_t n) {15  if (n != 0)16    memcpy(dest, from, n);17  return dest;18}19#endif20