1/* 2 * SPDX-License-Identifier: BSD-3-Clause 3 * Copyright (C) IBM Corporation 2016. 4 */ 5 6#ifndef _RTE_VECT_PPC_64_H_ 7#define _RTE_VECT_PPC_64_H_ 8 9#include "rte_altivec.h" 10 11#include "generic/rte_vect.h" 12#include "rte_common.h" 13 14#ifdef __cplusplus 15extern "C" { 16#endif 17 18#define RTE_VECT_DEFAULT_SIMD_BITWIDTH RTE_VECT_SIMD_256 19 20typedef __vector signed int xmm_t; 21 22#define XMM_SIZE (sizeof(xmm_t)) 23#define XMM_MASK (XMM_SIZE - 1) 24 25typedef union rte_xmm { 26 xmm_t x; 27 uint8_t u8[XMM_SIZE / sizeof(uint8_t)]; 28 uint16_t u16[XMM_SIZE / sizeof(uint16_t)]; 29 uint32_t u32[XMM_SIZE / sizeof(uint32_t)]; 30 uint64_t u64[XMM_SIZE / sizeof(uint64_t)]; 31 double pd[XMM_SIZE / sizeof(double)]; 32} __rte_aligned(16) rte_xmm_t; 33 34#ifdef __cplusplus 35} 36#endif 37 38#endif /* _RTE_VECT_PPC_64_H_ */ 39