annotate gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-compile.c @ 19:2b5abeee2509 default tip

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
1 /* { dg-do assemble { target { aarch64*-*-* } } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
2 /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
3 /* { dg-add-options arm_v8_2a_bf16_neon } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
4 /* { dg-additional-options "-save-temps" } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
5 /* { dg-final { check-function-bodies "**" "" {-O[^0]} } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
6 /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
7
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
8 #include <arm_neon.h>
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
9
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
10 /*
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
11 **test_bfcvtn:
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
12 ** bfcvtn v0.4h, v0.4s
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
13 ** ret
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
14 */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
15 bfloat16x4_t test_bfcvtn (float32x4_t a)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
16 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
17 return vcvt_bf16_f32 (a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
18 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
19
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
20 /*
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
21 **test_bfcvtnq:
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
22 ** bfcvtn v0.4h, v0.4s
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
23 ** ret
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
24 */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
25 bfloat16x8_t test_bfcvtnq (float32x4_t a)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
26 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
27 return vcvtq_low_bf16_f32 (a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
28 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
29
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
30 /*
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
31 **test_bfcvtnq2:
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
32 ** bfcvtn2 v0.8h, v1.4s
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
33 ** ret
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
34 */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
35 bfloat16x8_t test_bfcvtnq2 (bfloat16x8_t inactive, float32x4_t a)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
36 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
37 return vcvtq_high_bf16_f32 (inactive, a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
38 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
39
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
40 /*
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
41 **test_bfcvt:
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
42 ** bfcvt h0, s0
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
43 ** ret
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
44 */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
45 bfloat16_t test_bfcvt (float32_t a)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
46 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
47 return vcvth_bf16_f32 (a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
48 }