1 /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */ 2 3 #include "test_sve_acle.h" 4 5 /* 6 ** abs_s8_m_tied12: 7 ** abs z0\.b, p0/m, z0\.b 8 ** ret 9 */ 10 TEST_UNIFORM_Z (abs_s8_m_tied12, svint8_t, 11 z0 = svabs_s8_m (z0, p0, z0), 12 z0 = svabs_m (z0, p0, z0)) 13 14 /* 15 ** abs_s8_m_tied1: 16 ** abs z0\.b, p0/m, z1\.b 17 ** ret 18 */ 19 TEST_UNIFORM_Z (abs_s8_m_tied1, svint8_t, 20 z0 = svabs_s8_m (z0, p0, z1), 21 z0 = svabs_m (z0, p0, z1)) 22 23 /* 24 ** abs_s8_m_tied2: 25 ** mov (z[0-9]+)\.d, z0\.d 26 ** movprfx z0, z1 27 ** abs z0\.b, p0/m, \1\.b 28 ** ret 29 */ 30 TEST_UNIFORM_Z (abs_s8_m_tied2, svint8_t, 31 z0 = svabs_s8_m (z1, p0, z0), 32 z0 = svabs_m (z1, p0, z0)) 33 34 /* 35 ** abs_s8_m_untied: 36 ** movprfx z0, z2 37 ** abs z0\.b, p0/m, z1\.b 38 ** ret 39 */ 40 TEST_UNIFORM_Z (abs_s8_m_untied, svint8_t, 41 z0 = svabs_s8_m (z2, p0, z1), 42 z0 = svabs_m (z2, p0, z1)) 43 44 /* 45 ** abs_s8_z_tied1: 46 ** mov (z[0-9]+)\.d, z0\.d 47 ** movprfx z0\.b, p0/z, \1\.b 48 ** abs z0\.b, p0/m, \1\.b 49 ** ret 50 */ 51 TEST_UNIFORM_Z (abs_s8_z_tied1, svint8_t, 52 z0 = svabs_s8_z (p0, z0), 53 z0 = svabs_z (p0, z0)) 54 55 /* 56 ** abs_s8_z_untied: 57 ** movprfx z0\.b, p0/z, z1\.b 58 ** abs z0\.b, p0/m, z1\.b 59 ** ret 60 */ 61 TEST_UNIFORM_Z (abs_s8_z_untied, svint8_t, 62 z0 = svabs_s8_z (p0, z1), 63 z0 = svabs_z (p0, z1)) 64 65 /* 66 ** abs_s8_x_tied1: 67 ** abs z0\.b, p0/m, z0\.b 68 ** ret 69 */ 70 TEST_UNIFORM_Z (abs_s8_x_tied1, svint8_t, 71 z0 = svabs_s8_x (p0, z0), 72 z0 = svabs_x (p0, z0)) 73 74 /* 75 ** abs_s8_x_untied: 76 ** abs z0\.b, p0/m, z1\.b 77 ** ret 78 */ 79 TEST_UNIFORM_Z (abs_s8_x_untied, svint8_t, 80 z0 = svabs_s8_x (p0, z1), 81 z0 = svabs_x (p0, z1)) 82