1 /* { dg-do compile } */
2 /* { dg-options "-mabi=lp64d -O2" } */
3 /* { dg-final { scan-assembler "test:.*lu52i\.d.*\n\taddi\.w.*\n\.L2:" } } */
4
5
6 extern long long b[10];
7 static inline long long
8 repeat_bytes (void)
9 {
10 long long r = 0x0101010101010101;
11
12 return r;
13 }
14
15 static inline long long
16 highbit_mask (long long m)
17 {
18 return m & repeat_bytes ();
19 }
20
21 void test(long long *a)
22 {
23 for (int i = 0; i < 10; i++)
24 b[i] = highbit_mask (a[i]);
25
26 }