1 /* { dg-do run } */ 2 /* { dg-options "-O3 -mzarch -march=z13 --save-temps" } */ 3 4 /* { dg-final { scan-assembler-times "veslf" 1 } } */ 5 6 typedef __attribute__((vector_size(16))) signed int v4si; 7 8 v4si __attribute__((noinline,noclone)) shift_left_by_scalar(v4si in,int shift_count)9shift_left_by_scalar (v4si in, int shift_count) 10 { 11 return in << (3 + shift_count); 12 } 13 14 int main()15main () 16 { 17 v4si a = { 1, 2, 3, 4 }; 18 v4si result = shift_left_by_scalar (a, 1); 19 20 if (result[1] != 32) 21 __builtin_abort (); 22 23 return 0; 24 } 25