1f08c3bdfSopenharmony_ciextern int fun(void);
2f08c3bdfSopenharmony_citypedef unsigned int	u32;
3f08c3bdfSopenharmony_citypedef          int	s32;
4f08c3bdfSopenharmony_citypedef void *vdp;
5f08c3bdfSopenharmony_citypedef int  *sip;
6f08c3bdfSopenharmony_citypedef double dbl;
7f08c3bdfSopenharmony_citypedef unsigned short __attribute__((bitwise)) le16;
8f08c3bdfSopenharmony_ci
9f08c3bdfSopenharmony_cistatic _Bool fs32_i(s32 a) { return a; }
10f08c3bdfSopenharmony_cistatic _Bool fs32_e(s32 a) { return (_Bool)a; }
11f08c3bdfSopenharmony_cistatic _Bool fu32_i(u32 a) { return a; }
12f08c3bdfSopenharmony_cistatic _Bool fu32_e(u32 a) { return (_Bool)a; }
13f08c3bdfSopenharmony_cistatic _Bool fvdp_i(vdp a) { return a; }
14f08c3bdfSopenharmony_cistatic _Bool fvdp_e(vdp a) { return (_Bool)a; }
15f08c3bdfSopenharmony_cistatic _Bool fsip_i(sip a) { return a; }
16f08c3bdfSopenharmony_cistatic _Bool fsip_e(sip a) { return (_Bool)a; }
17f08c3bdfSopenharmony_cistatic _Bool ffun_i(void)  { return fun; }
18f08c3bdfSopenharmony_cistatic _Bool ffun_e(void)  { return (_Bool)fun; }
19f08c3bdfSopenharmony_cistatic _Bool fres_i(le16 a) { return a; }
20f08c3bdfSopenharmony_cistatic _Bool fres_e(le16 a) { return (_Bool)a; }
21f08c3bdfSopenharmony_cistatic _Bool fdbl_i(dbl a) { return a; }
22f08c3bdfSopenharmony_cistatic _Bool fdbl_e(dbl a) { return (_Bool)a; }
23f08c3bdfSopenharmony_ci
24f08c3bdfSopenharmony_ci/*
25f08c3bdfSopenharmony_ci * check-name: bool-cast
26f08c3bdfSopenharmony_ci * check-command: test-linearize -m64 -fdump-ir=linearize $file
27f08c3bdfSopenharmony_ci * check-assert: sizeof(void*) == 8 && sizeof(long) == 8 && sizeof(double) == 8
28f08c3bdfSopenharmony_ci *
29f08c3bdfSopenharmony_ci * check-output-ignore
30f08c3bdfSopenharmony_ci * check-output-excludes: cast\\.
31f08c3bdfSopenharmony_ci * check-output-excludes: fcvt[us]\\.
32f08c3bdfSopenharmony_ci * check-output-excludes: ptrtu\\.
33f08c3bdfSopenharmony_ci * check-output-excludes: [sz]ext\\.
34f08c3bdfSopenharmony_ci * check-output-excludes: trunc\\.
35f08c3bdfSopenharmony_ci * check-output-pattern(12): setne\\.
36f08c3bdfSopenharmony_ci * check-output-pattern(2): fcmpune\\.
37f08c3bdfSopenharmony_ci */
38