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