1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright(c) 2010-2014 Intel Corporation 3 */ 4 5 #ifndef _RTE_BYTEORDER_X86_H_ 6 #error do not include this file directly, use <rte_byteorder.h> instead 7 #endif 8 9 #ifndef _RTE_BYTEORDER_I686_H_ 10 #define _RTE_BYTEORDER_I686_H_ 11 12 #include <stdint.h> 13 #include <rte_byteorder.h> 14 15 /* 16 * An architecture-optimized byte swap for a 64-bit value. 17 * 18 * Do not use this function directly. The preferred function is rte_bswap64(). 19 */ 20 /* Compat./Leg. mode */ rte_arch_bswap64(uint64_t x)21static inline uint64_t rte_arch_bswap64(uint64_t x) 22 { 23 uint64_t ret = 0; 24 ret |= ((uint64_t)rte_arch_bswap32(x & 0xffffffffUL) << 32); 25 ret |= ((uint64_t)rte_arch_bswap32((x >> 32) & 0xffffffffUL)); 26 return ret; 27 } 28 29 #endif /* _RTE_BYTEORDER_I686_H_ */ 30