//===- subzero/crosstest/test_vector_ops.def - test macros ----*- C++ -*---===//
//
//                        The Subzero Code Generator
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file defines macros for crosstesting the insertelement and
// extractelement instruction.
//
//===----------------------------------------------------------------------===//

#ifndef TEST_VECTOR_OPS_DEF

#define VECTOR_TYPE_TABLE                 \
/* typename, element type,  cast type */  \
X(v16si8,          int8_t,  int64_t)      \
X(v16ui8,         uint8_t,  int64_t)      \
X(v8si16,         int16_t,  int64_t)      \
X(v8ui16,        uint16_t,  int64_t)      \
X(v4si32,         int32_t,  int64_t)      \
X(v4ui32,        uint32_t,  int64_t)      \
X(v4f32,            float,    float)      \

#define I1_VECTOR_TYPE_TABLE              \
/* typename, expanded type, # elements */ \
X(v4i1,             v4ui32,          4)   \
X(v8i1,             v8ui16,          8)   \
X(v16i1,            v16ui8,         16)   \

#endif