dpdk/lib/eal/ppc/include/rte_vect.h
<<
>>
Prefs
   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