1f08c3bdfSopenharmony_ciint  or_not0(int a) { return a | ~0; }
2f08c3bdfSopenharmony_ciint and_not0(int a) { return a & ~0; }
3f08c3bdfSopenharmony_ciint xor_not0(int a) { return a ^ ~0; }
4f08c3bdfSopenharmony_ci
5f08c3bdfSopenharmony_ci/*
6f08c3bdfSopenharmony_ci * check-name: bool-not-zero
7f08c3bdfSopenharmony_ci * check-command: test-linearize -Wno-decl $file
8f08c3bdfSopenharmony_ci *
9f08c3bdfSopenharmony_ci * check-output-start
10f08c3bdfSopenharmony_cior_not0:
11f08c3bdfSopenharmony_ci.L0:
12f08c3bdfSopenharmony_ci	<entry-point>
13f08c3bdfSopenharmony_ci	ret.32      $0xffffffff
14f08c3bdfSopenharmony_ci
15f08c3bdfSopenharmony_ci
16f08c3bdfSopenharmony_ciand_not0:
17f08c3bdfSopenharmony_ci.L2:
18f08c3bdfSopenharmony_ci	<entry-point>
19f08c3bdfSopenharmony_ci	ret.32      %arg1
20f08c3bdfSopenharmony_ci
21f08c3bdfSopenharmony_ci
22f08c3bdfSopenharmony_cixor_not0:
23f08c3bdfSopenharmony_ci.L4:
24f08c3bdfSopenharmony_ci	<entry-point>
25f08c3bdfSopenharmony_ci	not.32      %r8 <- %arg1
26f08c3bdfSopenharmony_ci	ret.32      %r8
27f08c3bdfSopenharmony_ci
28f08c3bdfSopenharmony_ci
29f08c3bdfSopenharmony_ci * check-output-end
30f08c3bdfSopenharmony_ci */
31