1 
2 union u {
3   struct {
4   short int msw;
5   unsigned short lsw;
6 } w;
7 long l;
8 };
9 
10 int
__cmpsi2(long arga,short int msw_b,unsigned short int lsw_b)11 __cmpsi2(long arga,
12 	 short int msw_b, unsigned short int lsw_b)
13 {
14   union u u;
15   u.l = arga;
16 
17   if (u.w.msw != msw_b)
18     {
19       if (u.w.msw < msw_b) return 0;
20       return 2;
21     }
22   if (u.w.lsw != lsw_b)
23     {
24       if (u.w.lsw < lsw_b) return 0;
25       return 2;
26     }
27   return 1;
28 }
29