Viewing file: dup_s8.c (6.3 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
#include "test_sve_acle.h"
/* ** dup_1_s8: ** mov z0\.b, #1 ** ret */ TEST_UNIFORM_Z (dup_1_s8, svint8_t, z0 = svdup_n_s8 (1), z0 = svdup_s8 (1))
/* ** dup_127_s8: ** mov z0\.b, #127 ** ret */ TEST_UNIFORM_Z (dup_127_s8, svint8_t, z0 = svdup_n_s8 (127), z0 = svdup_s8 (127))
/* ** dup_128_s8: ** mov z0\.b, #-128 ** ret */ TEST_UNIFORM_Z (dup_128_s8, svint8_t, z0 = svdup_n_s8 (128), z0 = svdup_s8 (128))
/* ** dup_129_s8: ** mov z0\.b, #-127 ** ret */ TEST_UNIFORM_Z (dup_129_s8, svint8_t, z0 = svdup_n_s8 (129), z0 = svdup_s8 (129))
/* ** dup_253_s8: ** mov z0\.b, #-3 ** ret */ TEST_UNIFORM_Z (dup_253_s8, svint8_t, z0 = svdup_n_s8 (253), z0 = svdup_s8 (253))
/* ** dup_254_s8: ** mov z0\.b, #-2 ** ret */ TEST_UNIFORM_Z (dup_254_s8, svint8_t, z0 = svdup_n_s8 (254), z0 = svdup_s8 (254))
/* ** dup_255_s8: ** mov z0\.b, #-1 ** ret */ TEST_UNIFORM_Z (dup_255_s8, svint8_t, z0 = svdup_n_s8 (255), z0 = svdup_s8 (255))
/* ** dup_m1_s8: ** mov z0\.b, #-1 ** ret */ TEST_UNIFORM_Z (dup_m1_s8, svint8_t, z0 = svdup_n_s8 (-1), z0 = svdup_s8 (-1))
/* ** dup_m128_s8: ** mov z0\.b, #-128 ** ret */ TEST_UNIFORM_Z (dup_m128_s8, svint8_t, z0 = svdup_n_s8 (-128), z0 = svdup_s8 (-128))
/* ** dup_w0_s8: ** mov z0\.b, w0 ** ret */ TEST_UNIFORM_ZX (dup_w0_s8, svint8_t, int8_t, z0 = svdup_n_s8 (x0), z0 = svdup_s8 (x0))
/* ** dup_1_s8_m: ** mov z0\.b, p0/m, #1 ** ret */ TEST_UNIFORM_Z (dup_1_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 1), z0 = svdup_s8_m (z0, p0, 1))
/* ** dup_127_s8_m: ** mov z0\.b, p0/m, #127 ** ret */ TEST_UNIFORM_Z (dup_127_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 127), z0 = svdup_s8_m (z0, p0, 127))
/* ** dup_128_s8_m: ** mov z0\.b, p0/m, #-128 ** ret */ TEST_UNIFORM_Z (dup_128_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 128), z0 = svdup_s8_m (z0, p0, 128))
/* ** dup_129_s8_m: ** mov z0\.b, p0/m, #-127 ** ret */ TEST_UNIFORM_Z (dup_129_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 129), z0 = svdup_s8_m (z0, p0, 129))
/* ** dup_253_s8_m: ** mov z0\.b, p0/m, #-3 ** ret */ TEST_UNIFORM_Z (dup_253_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 253), z0 = svdup_s8_m (z0, p0, 253))
/* ** dup_254_s8_m: ** mov z0\.b, p0/m, #-2 ** ret */ TEST_UNIFORM_Z (dup_254_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 254), z0 = svdup_s8_m (z0, p0, 254))
/* ** dup_255_s8_m: ** mov z0\.b, p0/m, #-1 ** ret */ TEST_UNIFORM_Z (dup_255_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 255), z0 = svdup_s8_m (z0, p0, 255))
/* ** dup_m1_s8_m: ** mov z0\.b, p0/m, #-1 ** ret */ TEST_UNIFORM_Z (dup_m1_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, -1), z0 = svdup_s8_m (z0, p0, -1))
/* ** dup_m128_s8_m: ** mov z0\.b, p0/m, #-128 ** ret */ TEST_UNIFORM_Z (dup_m128_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, -128), z0 = svdup_s8_m (z0, p0, -128))
/* ** dup_0_s8_m: ** mov z0\.b, p0/m, #0 ** ret */ TEST_UNIFORM_Z (dup_0_s8_m, svint8_t, z0 = svdup_n_s8_m (z0, p0, 0), z0 = svdup_s8_m (z0, p0, 0))
/* ** dup_w0_s8_m: ** movprfx z0, z1 ** mov z0\.b, p0/m, w0 ** ret */ TEST_UNIFORM_ZX (dup_w0_s8_m, svint8_t, int8_t, z0 = svdup_n_s8_m (z1, p0, x0), z0 = svdup_s8_m (z1, p0, x0))
/* ** dup_1_s8_z: ** mov z0\.b, p0/z, #1 ** ret */ TEST_UNIFORM_Z (dup_1_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 1), z0 = svdup_s8_z (p0, 1))
/* ** dup_127_s8_z: ** mov z0\.b, p0/z, #127 ** ret */ TEST_UNIFORM_Z (dup_127_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 127), z0 = svdup_s8_z (p0, 127))
/* ** dup_128_s8_z: ** mov z0\.b, p0/z, #-128 ** ret */ TEST_UNIFORM_Z (dup_128_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 128), z0 = svdup_s8_z (p0, 128))
/* ** dup_129_s8_z: ** mov z0\.b, p0/z, #-127 ** ret */ TEST_UNIFORM_Z (dup_129_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 129), z0 = svdup_s8_z (p0, 129))
/* ** dup_253_s8_z: ** mov z0\.b, p0/z, #-3 ** ret */ TEST_UNIFORM_Z (dup_253_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 253), z0 = svdup_s8_z (p0, 253))
/* ** dup_254_s8_z: ** mov z0\.b, p0/z, #-2 ** ret */ TEST_UNIFORM_Z (dup_254_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 254), z0 = svdup_s8_z (p0, 254))
/* ** dup_255_s8_z: ** mov z0\.b, p0/z, #-1 ** ret */ TEST_UNIFORM_Z (dup_255_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 255), z0 = svdup_s8_z (p0, 255))
/* ** dup_m1_s8_z: ** mov z0\.b, p0/z, #-1 ** ret */ TEST_UNIFORM_Z (dup_m1_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, -1), z0 = svdup_s8_z (p0, -1))
/* ** dup_m128_s8_z: ** mov z0\.b, p0/z, #-128 ** ret */ TEST_UNIFORM_Z (dup_m128_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, -128), z0 = svdup_s8_z (p0, -128))
/* ** dup_0_s8_z: ** mov z0\.[bhsd], #0 ** ret */ TEST_UNIFORM_Z (dup_0_s8_z, svint8_t, z0 = svdup_n_s8_z (p0, 0), z0 = svdup_s8_z (p0, 0))
/* ** dup_w0_s8_z: ** movprfx z0\.b, p0/z, z0\.b ** mov z0\.b, p0/m, w0 ** ret */ TEST_UNIFORM_ZX (dup_w0_s8_z, svint8_t, int8_t, z0 = svdup_n_s8_z (p0, x0), z0 = svdup_s8_z (p0, x0))
/* ** dup_1_s8_x: ** mov z0\.b, #1 ** ret */ TEST_UNIFORM_Z (dup_1_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, 1), z0 = svdup_s8_x (p0, 1))
/* ** dup_127_s8_x: ** mov z0\.b, #127 ** ret */ TEST_UNIFORM_Z (dup_127_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, 127), z0 = svdup_s8_x (p0, 127))
/* ** dup_128_s8_x: ** mov z0\.b, #-128 ** ret */ TEST_UNIFORM_Z (dup_128_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, 128), z0 = svdup_s8_x (p0, 128))
/* ** dup_129_s8_x: ** mov z0\.b, #-127 ** ret */ TEST_UNIFORM_Z (dup_129_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, 129), z0 = svdup_s8_x (p0, 129))
/* ** dup_253_s8_x: ** mov z0\.b, #-3 ** ret */ TEST_UNIFORM_Z (dup_253_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, 253), z0 = svdup_s8_x (p0, 253))
/* ** dup_254_s8_x: ** mov z0\.b, #-2 ** ret */ TEST_UNIFORM_Z (dup_254_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, 254), z0 = svdup_s8_x (p0, 254))
/* ** dup_255_s8_x: ** mov z0\.b, #-1 ** ret */ TEST_UNIFORM_Z (dup_255_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, 255), z0 = svdup_s8_x (p0, 255))
/* ** dup_m1_s8_x: ** mov z0\.b, #-1 ** ret */ TEST_UNIFORM_Z (dup_m1_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, -1), z0 = svdup_s8_x (p0, -1))
/* ** dup_m128_s8_x: ** mov z0\.b, #-128 ** ret */ TEST_UNIFORM_Z (dup_m128_s8_x, svint8_t, z0 = svdup_n_s8_x (p0, -128), z0 = svdup_s8_x (p0, -128))
/* ** dup_w0_s8_x: ** mov z0\.b, w0 ** ret */ TEST_UNIFORM_ZX (dup_w0_s8_x, svint8_t, int8_t, z0 = svdup_n_s8_x (p0, x0), z0 = svdup_s8_x (p0, x0))
|