1 /* { dg-do compile } */
3 typedef unsigned short __u16
;
5 __extension__
typedef __UINT32_TYPE__ __u32
;
6 __extension__
typedef __UINT32_TYPE__ u32
;
8 typedef unsigned int __u32
;
9 typedef unsigned int u32
;
11 typedef unsigned char u8
;
15 struct bplus_internal_node
{
23 struct bplus_internal_node internal
[0];
28 __u16
__fswab16(__u16 val
);
29 __u32
__fswab32(__u32 val
);
30 void hpfs_ea_remove (__u32
);
32 void hpfs_truncate_btree(secno f
, int fno
, unsigned secs
, struct bplus_header
*btree
)
35 for (i
= 0; i
< btree
->n_used_nodes
; i
++)
36 if ((__builtin_constant_p((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[i
].file_secno
))) ? ((__u32
)( (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[i
].file_secno
)) & (__u32
)0x000000ffUL
) << 24) | (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[i
].file_secno
)) & (__u32
)0x0000ff00UL
) << 8) | (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[i
].file_secno
)) & (__u32
)0x00ff0000UL
) >> 8) | (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[i
].file_secno
)) & (__u32
)0xff000000UL
) >> 24))) : __fswab32(( __u32
)(__le32
)(btree
->u
.internal
[i
].file_secno
))) >= secs
) goto f
;
39 for (j
= i
+ 1; j
< btree
->n_used_nodes
; j
++)
40 hpfs_ea_remove((__builtin_constant_p((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[j
].down
))) ? ((__u32
)( (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[j
].down
)) & (__u32
)0x000000ffUL
) << 24) | (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[j
].down
)) & (__u32
)0x0000ff00UL
) << 8) | (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[j
].down
)) & (__u32
)0x00ff0000UL
) >> 8) | (((__u32
)(( __u32
)(__le32
)(btree
->u
.internal
[j
].down
)) & (__u32
)0xff000000UL
) >> 24))) : __fswab32(( __u32
)(__le32
)(btree
->u
.internal
[j
].down
))));
41 btree
->n_used_nodes
= i
+ 1;
42 btree
->first_free
= (( __le16
)(__builtin_constant_p((__u16
)((8 + 8 * btree
->n_used_nodes
))) ? ((__u16
)( (((__u16
)((8 + 8 * btree
->n_used_nodes
)) & (__u16
)0x00ffU
) << 8) | (((__u16
)((8 + 8 * btree
->n_used_nodes
)) & (__u16
)0xff00U
) >> 8))) : __fswab16((8 + 8 * btree
->n_used_nodes
))));