SILC_PUT64_MSB

NAME

    #define SILC_PUT64_MSB(dest, src)

DESCRIPTION

Put eight 8-bit bytes, most significant bytes first.

SOURCE

#if defined(SILC_X86_64) && defined(__GNUC__)
#define SILC_PUT64_MSB(l, cp)                           \
asm volatile ("bswapq %1; movq %1, (%0); bswapq %1"     \
              : : "r" (cp), "r" (l) : "memory", "cc");
#else
#define SILC_PUT64_MSB(l, cp)                                   \
do {                                                            \
  SILC_PUT32_MSB((SilcUInt32)((SilcUInt64)(l) >> 32), (cp));    \
  SILC_PUT32_MSB((SilcUInt32)(l), (cp) + 4);                    \
} while(0)
#endif /* SILC_X86_64 && __GNUC__ */