1651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: %clang_cc1 -triple aarch64-linux-gnu -target-feature +neon -ffreestanding -fsyntax-only -verify %s 26bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// RUN: %clang_cc1 -triple arm64-linux-gnu -target-feature +neon -ffreestanding -fsyntax-only -verify %s 3651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 4651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines#include <arm_neon.h> 5651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 6651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesvoid test_vext_8bit(int8x8_t small, int8x16_t big) { 7651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vext_s8(small, small, 7); 8651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vext_u8(small, small, 7); 9651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vext_p8(small, small, 7); 10651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vextq_s8(big, big, 15); 11651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vextq_u8(big, big, 15); 12651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vextq_p8(big, big, 15); 13651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 14651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vext_s8(small, small, 8); // expected-error {{argument should be a value from 0 to 7}} 15651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vext_u8(small, small, 8); // expected-error {{argument should be a value from 0 to 7}} 16651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vext_p8(small, small, 8); // expected-error {{argument should be a value from 0 to 7}} 17651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vextq_s8(big, big, 16); // expected-error {{argument should be a value from 0 to 15}} 18651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vextq_u8(big, big, 16); // expected-error {{argument should be a value from 0 to 15}} 19651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vextq_p8(big, big, 16); // expected-error {{argument should be a value from 0 to 15}} 20651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines} 21651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 22651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesvoid test_mul_lane_f64(float64x1_t small, float64x2_t big, float64x2_t rhs) { 23651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vmul_lane_f64(small, small, 0); 24651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vmul_laneq_f64(small, big, 1); 25651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vmulq_lane_f64(big, small, 0); 26651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vmulq_laneq_f64(big, big, 1); 27651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vfma_lane_f64(small, small, small, 0); 28651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vfma_laneq_f64(small, small, big, 1); 29651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vfmaq_lane_f64(big, big, small, 0); 30651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vfmaq_laneq_f64(big, big, big, 1); 31651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 32651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vmul_lane_f64(small, small, 1); // expected-error {{argument should be a value from 0 to 0}} 33651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vmul_laneq_f64(small, big, 2); // expected-error {{argument should be a value from 0 to 1}} 34651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vfma_lane_f64(small, small, small, 1); // expected-error {{argument should be a value from 0 to 0}} 35651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vfma_laneq_f64(small, small, big, 2); // expected-error {{argument should be a value from 0 to 1}} 36651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vfmaq_laneq_f64(big, big, big, 2); // expected-error {{argument should be a value from 0 to 1}} 37651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines} 38651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 39651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesvoid test_ld1st1(int8x8_t small, int8x16_t big, void *addr) { 40651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s8(addr, small, 7); 41651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s16(addr, small, 3); 42651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s32(addr, small, 1); 43651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s64(addr, small, 0); 44651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 45651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s8(addr, big, 15); 46651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s16(addr, big, 7); 47651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s32(addr, big, 3); 48651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s64(addr, big, 1); 49651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 50651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s8(addr, small, 8); // expected-error {{argument should be a value from 0 to 7}} 51651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s16(addr, small, 4); // expected-error {{argument should be a value from 0 to 3}} 52651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s32(addr, small, 2); // expected-error {{argument should be a value from 0 to 1}} 53651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1_lane_s64(addr, small, 1); // expected-error {{argument should be a value from 0 to 0}} 54651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 55651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s8(addr, big, 16); // expected-error {{argument should be a value from 0 to 15}} 56651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s16(addr, big, 8); // expected-error {{argument should be a value from 0 to 7}} 57651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s32(addr, big, 4); // expected-error {{argument should be a value from 0 to 3}} 58651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld1q_lane_s64(addr, big, 2); // expected-error {{argument should be a value from 0 to 1}} 59651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 60651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s8(addr, small, 7); 61651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s16(addr, small, 3); 62651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s32(addr, small, 1); 63651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s64(addr, small, 0); 64651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 65651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s8(addr, big, 15); 66651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s16(addr, big, 7); 67651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s32(addr, big, 3); 68651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s64(addr, big, 1); 69651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 70651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s8(addr, small, 8); // expected-error {{argument should be a value from 0 to 7}} 71651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s16(addr, small, 4); // expected-error {{argument should be a value from 0 to 3}} 72651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s32(addr, small, 2); // expected-error {{argument should be a value from 0 to 1}} 73651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1_lane_s64(addr, small, 1); // expected-error {{argument should be a value from 0 to 0}} 74651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 75651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s8(addr, big, 16); // expected-error {{argument should be a value from 0 to 15}} 76651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s16(addr, big, 8); // expected-error {{argument should be a value from 0 to 7}} 77651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s32(addr, big, 4); // expected-error {{argument should be a value from 0 to 3}} 78651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst1q_lane_s64(addr, big, 2); // expected-error {{argument should be a value from 0 to 1}} 79651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines} 80651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 81651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesvoid test_ld2st2(int8x8x2_t small8, int8x16x2_t big8, 82651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int16x4x2_t small16, int16x8x2_t big16, 83651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int32x2x2_t small32, int32x4x2_t big32, 84651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int64x1x2_t small64, int64x2x2_t big64, 85651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines void *addr) { 86651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s8(addr, small8, 7); 87651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s16(addr, small16, 3); 88651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s32(addr, small32, 1); 89651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s64(addr, small64, 0); 90651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 91651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s8(addr, big8, 15); 92651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s16(addr, big16, 7); 93651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s32(addr, big32, 3); 94651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s64(addr, big64, 1); 95651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 96651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s8(addr, small8, 8); // expected-error {{argument should be a value from 0 to 7}} 97651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s16(addr, small16, 4); // expected-error {{argument should be a value from 0 to 3}} 98651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s32(addr, small32, 2); // expected-error {{argument should be a value from 0 to 1}} 99651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2_lane_s64(addr, small64, 1); // expected-error {{argument should be a value from 0 to 0}} 100651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 101651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s8(addr, big8, 16); // expected-error {{argument should be a value from 0 to 15}} 102651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s16(addr, big16, 8); // expected-error {{argument should be a value from 0 to 7}} 103651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s32(addr, big32, 4); // expected-error {{argument should be a value from 0 to 3}} 104651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld2q_lane_s64(addr, big64, 2); // expected-error {{argument should be a value from 0 to 1}} 105651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 106651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s8(addr, small8, 7); 107651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s16(addr, small16, 3); 108651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s32(addr, small32, 1); 109651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s64(addr, small64, 0); 110651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 111651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s8(addr, big8, 15); 112651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s16(addr, big16, 7); 113651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s32(addr, big32, 3); 114651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s64(addr, big64, 1); 115651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 116651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s8(addr, small8, 8); // expected-error {{argument should be a value from 0 to 7}} 117651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s16(addr, small16, 4); // expected-error {{argument should be a value from 0 to 3}} 118651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s32(addr, small32, 2); // expected-error {{argument should be a value from 0 to 1}} 119651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2_lane_s64(addr, small64, 1); // expected-error {{argument should be a value from 0 to 0}} 120651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 121651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s8(addr, big8, 16); // expected-error {{argument should be a value from 0 to 15}} 122651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s16(addr, big16, 8); // expected-error {{argument should be a value from 0 to 7}} 123651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s32(addr, big32, 4); // expected-error {{argument should be a value from 0 to 3}} 124651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst2q_lane_s64(addr, big64, 2); // expected-error {{argument should be a value from 0 to 1}} 125651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines} 126651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 127651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesvoid test_ld3st3(int8x8x3_t small8, int8x16x3_t big8, 128651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int16x4x3_t small16, int16x8x3_t big16, 129651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int32x2x3_t small32, int32x4x3_t big32, 130651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int64x1x3_t small64, int64x2x3_t big64, 131651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines void *addr) { 132651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s8(addr, small8, 7); 133651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s16(addr, small16, 3); 134651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s32(addr, small32, 1); 135651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s64(addr, small64, 0); 136651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 137651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s8(addr, big8, 15); 138651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s16(addr, big16, 7); 139651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s32(addr, big32, 3); 140651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s64(addr, big64, 1); 141651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 142651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s8(addr, small8, 8); // expected-error {{argument should be a value from 0 to 7}} 143651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s16(addr, small16, 4); // expected-error {{argument should be a value from 0 to 3}} 144651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s32(addr, small32, 2); // expected-error {{argument should be a value from 0 to 1}} 145651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3_lane_s64(addr, small64, 1); // expected-error {{argument should be a value from 0 to 0}} 146651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 147651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s8(addr, big8, 16); // expected-error {{argument should be a value from 0 to 15}} 148651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s16(addr, big16, 8); // expected-error {{argument should be a value from 0 to 7}} 149651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s32(addr, big32, 4); // expected-error {{argument should be a value from 0 to 3}} 150651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld3q_lane_s64(addr, big64, 2); // expected-error {{argument should be a value from 0 to 1}} 151651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 152651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s8(addr, small8, 7); 153651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s16(addr, small16, 3); 154651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s32(addr, small32, 1); 155651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s64(addr, small64, 0); 156651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 157651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s8(addr, big8, 15); 158651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s16(addr, big16, 7); 159651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s32(addr, big32, 3); 160651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s64(addr, big64, 1); 161651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 162651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s8(addr, small8, 8); // expected-error {{argument should be a value from 0 to 7}} 163651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s16(addr, small16, 4); // expected-error {{argument should be a value from 0 to 3}} 164651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s32(addr, small32, 2); // expected-error {{argument should be a value from 0 to 1}} 165651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3_lane_s64(addr, small64, 1); // expected-error {{argument should be a value from 0 to 0}} 166651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 167651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s8(addr, big8, 16); // expected-error {{argument should be a value from 0 to 15}} 168651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s16(addr, big16, 8); // expected-error {{argument should be a value from 0 to 7}} 169651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s32(addr, big32, 4); // expected-error {{argument should be a value from 0 to 3}} 170651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst3q_lane_s64(addr, big64, 2); // expected-error {{argument should be a value from 0 to 1}} 171651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines} 172651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 173651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesvoid test_ld4st4(int8x8x4_t small8, int8x16x4_t big8, 174651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int16x4x4_t small16, int16x8x4_t big16, 175651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int32x2x4_t small32, int32x4x4_t big32, 176651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines int64x1x4_t small64, int64x2x4_t big64, 177651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines void *addr) { 178651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s8(addr, small8, 7); 179651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s16(addr, small16, 3); 180651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s32(addr, small32, 1); 181651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s64(addr, small64, 0); 182651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 183651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s8(addr, big8, 15); 184651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s16(addr, big16, 7); 185651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s32(addr, big32, 3); 186651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s64(addr, big64, 1); 187651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 188651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s8(addr, small8, 8); // expected-error {{argument should be a value from 0 to 7}} 189651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s16(addr, small16, 4); // expected-error {{argument should be a value from 0 to 3}} 190651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s32(addr, small32, 2); // expected-error {{argument should be a value from 0 to 1}} 191651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4_lane_s64(addr, small64, 1); // expected-error {{argument should be a value from 0 to 0}} 192651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 193651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s8(addr, big8, 16); // expected-error {{argument should be a value from 0 to 15}} 194651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s16(addr, big16, 8); // expected-error {{argument should be a value from 0 to 7}} 195651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s32(addr, big32, 4); // expected-error {{argument should be a value from 0 to 3}} 196651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vld4q_lane_s64(addr, big64, 2); // expected-error {{argument should be a value from 0 to 1}} 197651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 198651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s8(addr, small8, 7); 199651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s16(addr, small16, 3); 200651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s32(addr, small32, 1); 201651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s64(addr, small64, 0); 202651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 203651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s8(addr, big8, 15); 204651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s16(addr, big16, 7); 205651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s32(addr, big32, 3); 206651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s64(addr, big64, 1); 207651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 208651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s8(addr, small8, 8); // expected-error {{argument should be a value from 0 to 7}} 209651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s16(addr, small16, 4); // expected-error {{argument should be a value from 0 to 3}} 210651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s32(addr, small32, 2); // expected-error {{argument should be a value from 0 to 1}} 211651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4_lane_s64(addr, small64, 1); // expected-error {{argument should be a value from 0 to 0}} 212651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 213651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s8(addr, big8, 16); // expected-error {{argument should be a value from 0 to 15}} 214651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s16(addr, big16, 8); // expected-error {{argument should be a value from 0 to 7}} 215651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s32(addr, big32, 4); // expected-error {{argument should be a value from 0 to 3}} 216651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines vst4q_lane_s64(addr, big64, 2); // expected-error {{argument should be a value from 0 to 1}} 217651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines} 218651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines 219