2 /* { dg-options "-O" } */
3 /* { dg-require-effective-target int32plus } */
5 extern void abort (void);
6 typedef unsigned int u_int32
;
9 union {u_int32 Xl_ui
;} Ul_i
;
10 union {u_int32 Xl_uf
;} Ul_f
;
19 work
.Ul_f
.Xl_uf
= 0x535f3d8;
28 work
.Ul_i
.Xl_ui
<<= 1;
29 if ((work
.Ul_f
.Xl_uf
) & 0x80000000)
30 (work
.Ul_i
.Xl_ui
) |= 0x1;
31 (work
.Ul_f
.Xl_uf
) <<= 1;
34 (work
.Ul_i
.Xl_ui
) <<= 1;
35 if ((work
.Ul_f
.Xl_uf
) & 0x80000000)
36 (work
.Ul_i
.Xl_ui
) |= 0x1;
37 (work
.Ul_f
.Xl_uf
) <<= 1;
39 (work
.Ul_i
.Xl_ui
) <<= 1;
40 if ((work
.Ul_f
.Xl_uf
) & 0x80000000)
41 (work
.Ul_i
.Xl_ui
) |= 0x1;
42 (work
.Ul_f
.Xl_uf
) <<= 1;
44 lo_tmp
= ((work
.Ul_f
.Xl_uf
) & 0xffff) + ((ftmp
.Ul_f
.Xl_uf
) & 0xffff);
45 hi_tmp
= (((work
.Ul_f
.Xl_uf
) >> 16) & 0xffff)
46 + (((ftmp
.Ul_f
.Xl_uf
) >> 16) & 0xffff);
51 (work
.Ul_f
.Xl_uf
) = ((hi_tmp
& 0xffff) << 16) | (lo_tmp
& 0xffff);
52 (work
.Ul_i
.Xl_ui
) += (ftmp
.Ul_i
.Xl_ui
);
58 if (!(work
.Ul_i
.Xl_ui
< 10))