| 179 | } |
| 180 | |
| 181 | static U32 HIPLBlockEnter(st_HIPLOADDATA* lddata) |
| 182 | { |
| 183 | st_HIPLOADBLOCK* top; |
| 184 | U32 cid = 0; |
| 185 | S32 size = 0; |
| 186 | |
| 187 | if (lddata->bypass) |
| 188 | { |
| 189 | return 0; |
| 190 | } |
| 191 | |
| 192 | if (lddata->top >= 0 && lddata->stk[lddata->top].blk_remain <= 0) |
| 193 | { |
| 194 | return 0; |
| 195 | } |
| 196 | |
| 197 | if (HIPLReadLongs(lddata, (S32*)&cid, -1) == 0) |
| 198 | { |
| 199 | cid = 0; |
| 200 | } |
| 201 | else |
| 202 | { |
| 203 | HIPLReadLongs(lddata, &size, -1); |
| 204 | |
| 205 | if (lddata->top >= 0) |
| 206 | { |
| 207 | lddata->stk[lddata->top].blk_remain -= size; |
| 208 | } |
| 209 | |
| 210 | top = &lddata->stk[++lddata->top]; |
| 211 | |
| 212 | top->blk_id = cid; |
| 213 | top->blk_remain = size; |
| 214 | top->endpos = lddata->pos + top->blk_remain + (top->blk_remain & 1); |
| 215 | top->flags = 0; |
| 216 | } |
| 217 | |
| 218 | return cid; |
| 219 | } |
| 220 | |
| 221 | static void HIPLBlockExit(st_HIPLOADDATA* lddata) |
| 222 | { |
nothing calls this directly
no test coverage detected