1/* { dg-do compile { target { aarch64*-*-* } } } */ 2/* { dg-options "-O2" } */ 3 4#include "arm_neon.h" 5 6void foo (int a) 7{ 8 int32x2_t arg1; 9 int32x2_t arg2; 10 int32x2_t result; 11 arg1 = vcreate_s32 (UINT64_C (0x0000ffffffffffff)); 12 arg2 = vcreate_s32 (UINT64_C (0x16497fffffffffff)); 13 /* The correct line number is in the preamble to the error message, 14 not in the final line (which is all that dg-error inspects). Hence, 15 we have to tell dg-error to ignore the line number. */ 16 result = vrsra_n_s32 (arg1, arg2, a); 17 /* { dg-error "must be a constant immediate" "" { target *-*-* } 0 } */ 18} 19