2 pr33870-1.c from the execute part of the gcc torture tests.
13 #if !defined(__SDCC_mcs51) && !defined(__SDCC_pdk14) && !defined (__SDCC_pdk15) // Lack of memory
14 typedef struct PgHdr PgHdr
;
15 typedef unsigned char u8
;
20 PgHdr
*pNextHash
, *pPrevHash
;
21 PgHdr
*pNextFree
, *pPrevFree
;
25 PgHdr
*pDirty
, *pPrevDirty
;
31 static inline PgHdr
*merge_pagelist(PgHdr
*pA
, PgHdr
*pB
)
35 xx
= &result
.x
.pDirty
;
38 if( pA
->x
.pgno
<pB
->x
.pgno
){
56 return result
.x
.pDirty
;
59 PgHdr
*sort_pagelist(PgHdr
*pIn
)
63 memset (a
, 0, sizeof (a
));
68 for(i
=0; i
<25 -1; i
++){
73 p
= merge_pagelist(a
[i
], p
);
79 a
[i
] = merge_pagelist(a
[i
], p
);
84 p
= merge_pagelist (p
, a
[i
]);
91 testTortureExecute (void)
93 #if !defined(__SDCC_mcs51) && !defined(__SDCC_pdk14) && !defined (__SDCC_pdk15) // Lack of memory
97 a
[0].x
.pDirty
= &a
[1];
99 a
[1].x
.pDirty
= &a
[2];
101 a
[2].x
.pDirty
= &a
[3];
104 p
= sort_pagelist (&a
[0]);
105 if (p
->x
.pDirty
== p
)