| 1458 | |
| 1459 | |
| 1460 | static int firstpart (Instruction *p, int l) { |
| 1461 | if (istest(p)) { |
| 1462 | int e = p[0].i.offset - 1; |
| 1463 | if ((p[e].i.code == IJmp || p[e].i.code == ICommit) && |
| 1464 | e + p[e].i.offset == l) |
| 1465 | return e + 1; |
| 1466 | } |
| 1467 | else if (p[0].i.code == IChoice) { |
| 1468 | int e = p[0].i.offset - 1; |
| 1469 | if (p[e].i.code == ICommit && e + p[e].i.offset == l) |
| 1470 | return e + 1; |
| 1471 | } |
| 1472 | return 0; |
| 1473 | } |
| 1474 | |
| 1475 | |
| 1476 | static Instruction *auxnew (lua_State *L, Instruction **op, int *size, |