1f08c3bdfSopenharmony_ciunsigned short bswap16(void);
2f08c3bdfSopenharmony_ciunsigned short bswap16(void)
3f08c3bdfSopenharmony_ci{
4f08c3bdfSopenharmony_ci	return __builtin_bswap16(0x1234);
5f08c3bdfSopenharmony_ci}
6f08c3bdfSopenharmony_ci
7f08c3bdfSopenharmony_ciunsigned int bswap32(void);
8f08c3bdfSopenharmony_ciunsigned int bswap32(void)
9f08c3bdfSopenharmony_ci{
10f08c3bdfSopenharmony_ci	return __builtin_bswap32(0x12345678);
11f08c3bdfSopenharmony_ci}
12f08c3bdfSopenharmony_ci
13f08c3bdfSopenharmony_ciunsigned long long bswap64(void);
14f08c3bdfSopenharmony_ciunsigned long long bswap64(void)
15f08c3bdfSopenharmony_ci{
16f08c3bdfSopenharmony_ci	return __builtin_bswap64(0x123456789abcdef0ULL);
17f08c3bdfSopenharmony_ci}
18f08c3bdfSopenharmony_ci
19f08c3bdfSopenharmony_ciunsigned int half_constant(void);
20f08c3bdfSopenharmony_ciunsigned int half_constant(void)
21f08c3bdfSopenharmony_ci{
22f08c3bdfSopenharmony_ci	int v = 0x12345678;
23f08c3bdfSopenharmony_ci	return __builtin_bswap32(v);
24f08c3bdfSopenharmony_ci}
25f08c3bdfSopenharmony_ci/*
26f08c3bdfSopenharmony_ci * check-name: builtin-bswap-constant
27f08c3bdfSopenharmony_ci * check-command: test-linearize $file
28f08c3bdfSopenharmony_ci *
29f08c3bdfSopenharmony_ci * check-output-ignore
30f08c3bdfSopenharmony_ci * check-output-excludes: __builtin_bswap
31f08c3bdfSopenharmony_ci * check-output-contains:ret.16 *.0x3412
32f08c3bdfSopenharmony_ci * check-output-contains:ret.32 *.0x78563412
33f08c3bdfSopenharmony_ci * check-output-contains:ret.64 *.0xf0debc9a78563412
34f08c3bdfSopenharmony_ci */
35