152
|
1 /* PR target/95046 */
|
|
2 /* { dg-do compile { target { ! ia32 } } } */
|
|
3 /* { dg-options "-O3 -mavx512vl" } */
|
|
4
|
|
5
|
|
6 double r[2];
|
|
7 int s[2];
|
|
8 unsigned int u[2];
|
|
9
|
|
10 void
|
|
11 test_float (void)
|
|
12 {
|
|
13 for (int i = 0; i < 2; i++)
|
|
14 r[i] = s[i];
|
|
15 }
|
|
16
|
|
17 /* { dg-final { scan-assembler "\tvcvtdq2pd" } } */
|
|
18
|
|
19 void
|
|
20 test_ufloat (void)
|
|
21 {
|
|
22 for (int i = 0; i < 2; i++)
|
|
23 r[i] = u[i];
|
|
24 }
|
|
25
|
|
26 /* { dg-final { scan-assembler "\tvcvtudq2pd" } } */
|
|
27
|
|
28 void
|
|
29 test_fix (void)
|
|
30 {
|
|
31 for (int i = 0; i < 2; i++)
|
|
32 s[i] = r[i];
|
|
33 }
|
|
34
|
|
35 /* { dg-final { scan-assembler "\tvcvttpd2dqx" } } */
|
|
36
|
|
37 void
|
|
38 test_ufix (void)
|
|
39 {
|
|
40 for (int i = 0; i < 2; i++)
|
|
41 u[i] = r[i];
|
|
42 }
|
|
43
|
|
44 /* { dg-final { scan-assembler "\tvcvttpd2udqx" } } */
|