Viewing file: pr101846-4.c (1.03 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* { dg-do compile } */ /* { dg-options "-mavx512vl -mavx512vbmi -O2" } */ /* { dg-final { scan-assembler-times "vpermi2b" "3" } } */
typedef char v16qi __attribute__((vector_size (16))); typedef char v32qi __attribute__((vector_size (32))); typedef char v64qi __attribute__((vector_size (64)));
v64qi foob_512 (v64qi x, v64qi y) { return __builtin_shufflevector (x, y, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 77, 79, 74, 72, 70, 89, 88, 78, 86, 85, 75, 83, 82, 112, 108, 101, 100, 86, 96, 97, 95); }
v32qi foob_256 (v32qi x, v32qi y) { return __builtin_shufflevector (x, y, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62); }
v16qi foob_128 (v16qi x, v16qi y) { return __builtin_shufflevector (x, y, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30); }
|